Skip to content

Releases: biomejs/biome

Intellij Plugin v0.0.3

21 Sep 18:07
2ac14c6
Compare
Choose a tag to compare

Analyzer

Enhancements

  • Import sorting is safe to apply now, and it will be applied when running check --apply instead of check --apply-unsafe.

CLI

Bug fixes

  • Fix #319. The command biome lint now shows the correct options. Contributed by @ematipico

  • Fix #312. Running biome --version now exits with status code 0 instead of 1. Contributed by @nhedger

Configuration

Editors

Formatter

Enhancements

  • Use OnceCell for the Memoized memory because that's what the RefCell<Option> implemented. Contributed by @denbezrukov

JavaScript APIs

Linter

New features

Enhancements

Bug fixes

Parser

  • Enhance diagnostic for infer type handling in the parser. The 'infer' keyword can only be utilized within the 'extends' clause of a conditional type. Using it outside of this context will result in an error. Ensure that any type declarations using 'infer' are correctly placed within the conditional type structure to avoid parsing issues. Contributed by @denbezrukov

VSCode

What's Changed

Other changes

New Contributors

Full Changelog: cli/v1.2.2...lsp-intellij/v0.0.3

VSCode Extension v1.4.2

16 Sep 09:30
b4dadd8
Compare
Choose a tag to compare

What's Changed

  • fix(formatter): suppress default_constructed_unit_structs on formatter generated code by @unvalley in #298
  • docs: documentation for new configuration fields by @ematipico in #295

Full Changelog: cli/v1.2.1...lsp/v1.4.2

CLI v1.2.2

16 Sep 09:30
b4dadd8
Compare
Choose a tag to compare

CLI

Bug fixes

  • Fix a condition where import sorting wasn't applied when running biome check --apply

What's Changed

Other changes

  • fix(formatter): suppress default_constructed_unit_structs on formatter generated code by @unvalley in #298
  • docs: documentation for new configuration fields by @ematipico in #295

Full Changelog: cli/v1.2.1...cli/v1.2.2

VSCode Extension v1.4.1

15 Sep 17:08
9aa5c4e
Compare
Choose a tag to compare

What's Changed

Full Changelog: cli/v1.2.0...lsp/v1.4.1

VSCode Extension v1.4.0

15 Sep 14:13
1897c24
Compare
Choose a tag to compare

CLI

New features

  • Add new options to customize the behaviour the formatter based on the language of the file
    • --json-formatter-enabled
    • --json-formatter-indent-style
    • --json-formatter-indent-size
    • --json-formatter-line-width
    • --javascript-formatter-enabled
    • --javascript-formatter-indent-style
    • --javascript-formatter-indent-size
    • --javascript-formatter-line-width

Bug fixes

  • Fix a bug where --errors-on-warning didn't work when running biome ci command.

Configuration

New features

  • Add new options to customize the behaviour of the formatter based on the language of the file
    • json.formatter.enabled
    • json.formatter.indentStyle
    • json.formatter.indentSize
    • json.formatter.lineWidth
    • javascript.formatter.enabled
    • javascript.formatter.indentStyle
    • javascript.formatter.indentSize
    • javascript.formatter.lineWidth

Linter

Promoted rules

New rules are incubated in the nursery group.
Once stable, we promote them to a stable group.
The following rules are promoted:

New rules

Removed rules

  • Remove noConfusingArrow.

    Code formatters, such as prettier and Biome, always adds parentheses around the parameter or the body of an arrow function.
    This makes the rule useless.

    Contributed by @Conaclos

Enhancements

  • noFallthroughSwitchClause now relies on control flow analysis to report most of switch clause fallthrough. Contributed by @Conaclos

  • noAssignInExpressions no longer suggests code fixes. Most of the time the suggestion didn't match users' expectations. Contributed by @Conaclos

  • noUselessConstructor no longer emits safe code fixes. Contributed by @Conaclos

    All code fixes are now emitted as unsafe code fixes.
    Removing a constructor can change the behavior of a program.

  • useCollapsedElseIf now only provides safe code fixes. Contributed by @Conaclos

  • noUnusedVariables now reports more cases.

    The rule is now able to ignore self-writes.
    For example, the rule reports the following unused variable:

    let a = 0;
    a++;
    a += 1;

    The rule is also capable of detecting an unused declaration that uses itself.
    For example, the rule reports the following unused interface:

    interface I {
      instance(): I
    }

    Finally, the rule now ignores all TypeScript declaration files,
    including global declaration files.

    Contributed by @Conaclos

Bug fixes

VSCode

Enhancements

  • Improve server binary resolution when using certain package managers, notably pnpm.

    The new strategy is to point to node_modules/.bin/biome path,
    which is consistent for all package managers.

    Contributed by @nhedger

What's Changed

Read more

CLI v1.2.1

15 Sep 17:08
9aa5c4e
Compare
Choose a tag to compare

Configuration

  • Fix an edge case where the formatter language configuration wasn't picked.
  • Fix the configuration schema, where json.formatter properties weren't transformed in camel case.

What's Changed

Other changes

Full Changelog: cli/v1.2.0...cli/v1.2.1

CLI v1.2.0

15 Sep 14:13
1897c24
Compare
Choose a tag to compare

CLI

New features

  • Add new options to customize the behaviour the formatter based on the language of the file
    • --json-formatter-enabled
    • --json-formatter-indent-style
    • --json-formatter-indent-size
    • --json-formatter-line-width
    • --javascript-formatter-enabled
    • --javascript-formatter-indent-style
    • --javascript-formatter-indent-size
    • --javascript-formatter-line-width

Bug fixes

  • Fix a bug where --errors-on-warning didn't work when running biome ci command.

Configuration

New features

  • Add new options to customize the behaviour of the formatter based on the language of the file
    • json.formatter.enabled
    • json.formatter.indentStyle
    • json.formatter.indentSize
    • json.formatter.lineWidth
    • javascript.formatter.enabled
    • javascript.formatter.indentStyle
    • javascript.formatter.indentSize
    • javascript.formatter.lineWidth

Linter

Promoted rules

New rules are incubated in the nursery group.
Once stable, we promote them to a stable group.
The following rules are promoted:

New rules

Removed rules

  • Remove noConfusingArrow.

    Code formatters, such as prettier and Biome, always adds parentheses around the parameter or the body of an arrow function.
    This makes the rule useless.

    Contributed by @Conaclos

Enhancements

  • noFallthroughSwitchClause now relies on control flow analysis to report most of switch clause fallthrough. Contributed by @Conaclos

  • noAssignInExpressions no longer suggests code fixes. Most of the time the suggestion didn't match users' expectations. Contributed by @Conaclos

  • noUselessConstructor no longer emits safe code fixes. Contributed by @Conaclos

    All code fixes are now emitted as unsafe code fixes.
    Removing a constructor can change the behavior of a program.

  • useCollapsedElseIf now only provides safe code fixes. Contributed by @Conaclos

  • noUnusedVariables now reports more cases.

    The rule is now able to ignore self-writes.
    For example, the rule reports the following unused variable:

    let a = 0;
    a++;
    a += 1;

    The rule is also capable of detecting an unused declaration that uses itself.
    For example, the rule reports the following unused interface:

    interface I {
      instance(): I
    }

    Finally, the rule now ignores all TypeScript declaration files,
    including global declaration files.

    Contributed by @Conaclos

Bug fixes

VSCode

Enhancements

  • Improve server binary resolution when using certain package managers, notably pnpm.

    The new strategy is to point to node_modules/.bin/biome path,
    which is consistent for all package managers.

    Contributed by @nhedger

What's Changed

Read more

VSCode Extension v1.3.20230915

15 Sep 04:56
9c28238
Compare
Choose a tag to compare
Pre-release

Analyzer

CLI

Features

  • Add new options to customize the behaviour the formatter based on the language of the file
    • --json-formatter-enabled
    • --json-formatter-indent-style
    • --json-formatter-indent-size
    • --json-formatter-line-width
    • --javascript-formatter-enabled
    • --javascript-formatter-indent-style
    • --javascript-formatter-indent-size
    • --javascript-formatter-line-width

Bug fixes

  • Fix a bug where --errors-on-warning didn't work when running biome ci command.

Configuration

Features

  • Add new options to customize the behaviour of the formatter based on the language of the file
    • json.formatter.enabled
    • json.formatter.indentStyle
    • json.formatter.indentSize
    • json.formatter.lineWidth
    • javascript.formatter.enabled
    • javascript.formatter.indentStyle
    • javascript.formatter.indentSize
    • javascript.formatter.lineWidth

Editors

Formatter

JavaScript APIs

Linter

New features

Enhancements

  • noFallthroughSwitchClause now relies on control flow analysis to report most of switch clause fallthrough. Contributed by @Conaclos

  • noAssignInExpressions no longer suggest code fixes. Most of the time the suggestion didn't match users' expectations. Contributed by @Conaclos

  • noUselessConstructor no longer emits safe code fixes. Contributed by @Conaclos

    All code fixes are now emitted as unsafe code fixes.
    Removing a constructor can change the behavior of a program.

  • useCollapsedElseIf now only provides safe code fixes. Contributed by @Conaclos

  • noUnusedVariables now reports more cases.

    The rule is now able to ignore self-writes.
    For example, the rule reports the following unused variable:

    let a = 0;
    a++;
    a += 1;

    The rule is also capable of detecting an unused declaration that uses itself.
    For example, the rule reports the following unused interface:

    interface I {
      instance(): I
    }

    Finally, the rule now ignores all TypeScript declaration files,
    including global declaration files.

    Contributed by @Conaclos

  • Remove noConfusingArrow.

    Code formatters, such as prettier and Biome, always adds parentheses around the parameter or the body of an arrow function.
    This makes the rule useless.

    Contributed by @Conaclos

Bug fixes

Parser

VSCode

What's Changed

Other changes

New Contributors

Read more

VSCode Extension v1.2.2

07 Sep 19:21
cde6581
Compare
Choose a tag to compare

Analyzer

CLI

Configuration

Editors

Formatter

JavaScript APIs

Linter

Parser

VSCode

What's Changed

Full Changelog: cli/v1.1.1...lsp/v1.2.2

VSCode Extension v1.2.1

07 Sep 09:56
a947fc9
Compare
Choose a tag to compare

Analyzer

CLI

Configuration

Editors

Formatter

JavaScript APIs

Linter

Parser

VSCode

What's Changed

New Contributors

Full Changelog: cli/v1.1.0...lsp/v1.2.1