Skip to content

v8.0.0-alpha.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 24 Nov 14:12
b524c77

8.0.0-alpha.1 (2023-11-24)

⚠ BREAKING CHANGES

  • stripInternal: The allowSyntheticDefaultImports
    option is no longer set. This option is not
    appropriate for most projects. It should only be
    set for projects that are transpiled using Babel
    (or similar). See
    https://www.typescriptlang.org/tsconfig#allowSyntheticDefaultImports
  • stripInternal: The stripInternal option is no
    longer set, meaning TypeScript will no longer
    exclude type declarations for code marked
    @internal. This option was unsafe because
    TypeScript does not check that the resulting
    declarations are valid. Projects that relied on
    this option should consider using api-extractor
    (https://api-extractor.com/) instead, or override
    this option to true in their tsconfig.
  • types: Ambient type declarations are no
    longer included in the compilation by default
    (tsconfig specifies the option "types": []``). Consuming projects that require ambient types should list them explicitly in their tsconfig. For example, projects that target node should add a dependency on @types/node and specify {"compilerOptions": {"types": ["node"]}}`.
  • commonjs: The commonjs, dom-commonjs, and
    webworker-commonjs configurations are obsolete
    and have been removed. Instead of commonjs, use
    the top level configuration (replace
    "@softwareventures/tsconfig/commonjs" with
    "@softwareventures/tsconfig"). Instead of
    dom-commonjs, use the dom configuration (replace
    "@softwareventures/tsconfig/dom-commonjs" with
    "@softwareventures/tsconfig/dom"). Instead of
    webworker-commonjs, use the webworker
    configuration (replace
    "@softwareventures/tsconfig/webworker-commonjs"
    with "@softwareventures/tsconfig/webworker").
    The CommonJS-specific configurations are obsolete
    now since the corresponding base configurations
    use "Node16" module resolution and compile to
    "Node16" modules. This is equivalent to compiling
    to CommonJS modules and following CommonJS
    resolution rules when that is what node would
    expect, and compiling to ES Modules and following
    ES Module resolution rules when that is what node
    would expect.
  • allowUnusedLabels: Unused labels will now raise a
    compiler error. This usually indicates a broken
    attempt to write an object literal.
    See https://www.typescriptlang.org/tsconfig#allowUnusedLabels
  • allowUnreachableCode: Provably unreachable code will
    now raise a compiler error. See
    https://www.typescriptlang.org/tsconfig#allowUnreachableCode
  • deps: tsconfig now has a peer
    dependency on typescript v5.2.2 or later.
    Consuming projects should upgrade typescript to
    at least that version.

Features

  • allowUnreachableCode: set allowUnreachableCode: false (12cd394)
  • allowUnusedLabels: set allowUnusedLabels: false (b4b046c)
  • commonjs: delete commonjs, dom-commonjs, and webworker-commonjs configurations (16938ee)
  • deps: bump peer dependency on typescript to ^5.2.2 (daeafbf)
  • module: compile to Node16 modules, and use Node16 module resolution (5e1bd84)
  • stripInternal: delete allowSyntheticDefaultImports option (b524c77)
  • stripInternal: delete stripInternal option (dbc5a14)
  • types: don't include ambient type declarations in the compilation (1d5e397)