Skip to content

Releases: biomejs/biome

Intellij Plugin v0.0.4

19 Oct 09:10
5dcae83
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.

  • Import sorting now handles Bun imports bun:<name>, absolute path imports /<path>, and Node's subpath imports #<name>. See our documentation for more details. Contributed by @Conaclos

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
  • Fix a bug where the extends functionality doesn't carry over organizeImports.ignore. Contributed by @ematipico
  • The CLI now returns the original content when using stdin and the original content doesn't change. Contributed by @ematipico

New features

  • Add support for BIOME_BINARY environment variable to override the location of the binary. Contributed by @ematipico

  • Add option --indent-width, and deprecated the option --indent-size. Contributed by @ematipico

  • Add option --javascript-formatter-indent-width, and deprecated the option --javascript-formatter-indent-size. Contributed by @ematipico

  • Add option --json-formatter-indent-width, and deprecated the option --json-formatter-indent-size. Contributed by @ematipico

  • Add option --daemon-logs to biome rage. The option is required to view Biome daemon server logs. Contributed by @unvalley

  • Add support for logging. By default, Biome doesn't log anything other than diagnostics. Logging can be enabled with the new option --log-level:

    biome format --log-level=info ./src

    There are four different levels of logging, from the most verbose to the least verbose: debug, info, warn and error. Here's how an INFO log will look like:

    2023-10-05T08:27:01.954727Z  INFO  Analyze file ./website/src/playground/components/Resizable.tsx
      at crates/biome_service/src/file_handlers/javascript.rs:298 on biome::worker_5
      in Pulling diagnostics with categories: RuleCategories(SYNTAX)
      in Processes formatting with path: "./website/src/playground/components/Resizable.tsx"
      in Process check with path: "./website/src/playground/components/Resizable.tsx"
    

    You can customize how the log will look like with a new option --log-kind. The supported kinds are: pretty, compact and json.

    pretty is the default logging. Here's how a compact log will look like:

    2023-10-05T08:29:04.864247Z  INFO biome::worker_2 Process check:Processes linting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(LINT)
    2023-10-05T08:29:04.864290Z  INFO biome::worker_7 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Tabs.tsx path="./website/src/playground/components/Tabs.tsx" path="./website/src/playground/components/Tabs.tsx"
    2023-10-05T08:29:04.879332Z  INFO biome::worker_2 Process check:Processes formatting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(SYNTAX)
    2023-10-05T08:29:04.879383Z  INFO biome::worker_2 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx"
    

Enhancements

  • Deprecated the environment variable ROME_BINARY. Use BIOME_BINARY instead. Contributed by @ematipico
  • Biome doesn't check anymore the presence of the .git folder when VCS support is enabled. Contributed by @ematipico
  • biome rage doesn't print the logs of the daemon, use biome rage --daemon-logs to print them. Contributed by @unvalley

Configuration

New features

  • Add option formatter.indentWidth, and deprecated the option formatter.indentSize. Contributed by @ematipico

  • Add option javascript.formatter.indentWidth, and deprecated the option javascript.formatter.indentSize. Contributed by @ematipico

  • Add option json.formatter.indentWidth, and deprecated the option json.formatter.indentSize. Contributed by @ematipico

  • Add option include to multiple sections of the configuration

    • files.include;
    • formatter.include;
    • linter.include;
    • organizeImports.include;
      When include and ignore are both specified, ignore takes precedence over include
  • Add option overrides, where users can modify the behaviour of the tools for certain files or paths.

    For example, it's possible to modify the formatter lineWidth, and even quoteStyle for certain files that are included in glob path generated/**:

    {
      "formatter": {
        "lineWidth": 100
      },
      "overrides": [
        {
          "include": ["generated/**"],
          "formatter": {
            "lineWidth": 160
          },
          "javascript": {
            "formatter": {
              "quoteStyle": "single"
            }
          }
        }
      ]
    }

    Or, you can disable certain rules for certain path, and disable the linter for other paths:

    {
      "linter": {
        "enabled": true,
        "rules": {
          "recommended": true
        }
      },
      "overrides": [
        {
          "include": ["lib/**"],
          "linter": {
            "rules": {
              "suspicious": {
                "noDebugger": "off"
              }
            }
          }
        },
        {
          "include": ["shims/**"],
          "linter": {
            "enabled": false
          }
        }
      ]
    }

Bug fixes

  • Fix #343, extends was incorrectly applied to the biome.json file. Contributed by @ematipico

Editors

Bug fixes

  • Fix #404. Biome intellij plugin now works on Windows. Contributed by @victor-teles

  • Fix #402. Biome format on intellij plugin now recognize biome.json. Contributed by @victor-teles

Formatter

Enhancements

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

Linter

Promoted rules

The following rules are now recommended:

Bug fixes

New features

Read more

CLI v1.3.0

19 Oct 09:04
5dcae83
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.

  • Import sorting now handles Bun imports bun:<name>, absolute path imports /<path>, and Node's subpath imports #<name>. See our documentation for more details. Contributed by @Conaclos

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
  • Fix a bug where the extends functionality doesn't carry over organizeImports.ignore. Contributed by @ematipico
  • The CLI now returns the original content when using stdin and the original content doesn't change. Contributed by @ematipico

New features

  • Add support for BIOME_BINARY environment variable to override the location of the binary. Contributed by @ematipico

  • Add option --indent-width, and deprecated the option --indent-size. Contributed by @ematipico

  • Add option --javascript-formatter-indent-width, and deprecated the option --javascript-formatter-indent-size. Contributed by @ematipico

  • Add option --json-formatter-indent-width, and deprecated the option --json-formatter-indent-size. Contributed by @ematipico

  • Add option --daemon-logs to biome rage. The option is required to view Biome daemon server logs. Contributed by @unvalley

  • Add support for logging. By default, Biome doesn't log anything other than diagnostics. Logging can be enabled with the new option --log-level:

    biome format --log-level=info ./src

    There are four different levels of logging, from the most verbose to the least verbose: debug, info, warn and error. Here's how an INFO log will look like:

    2023-10-05T08:27:01.954727Z  INFO  Analyze file ./website/src/playground/components/Resizable.tsx
      at crates/biome_service/src/file_handlers/javascript.rs:298 on biome::worker_5
      in Pulling diagnostics with categories: RuleCategories(SYNTAX)
      in Processes formatting with path: "./website/src/playground/components/Resizable.tsx"
      in Process check with path: "./website/src/playground/components/Resizable.tsx"
    

    You can customize how the log will look like with a new option --log-kind. The supported kinds are: pretty, compact and json.

    pretty is the default logging. Here's how a compact log will look like:

    2023-10-05T08:29:04.864247Z  INFO biome::worker_2 Process check:Processes linting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(LINT)
    2023-10-05T08:29:04.864290Z  INFO biome::worker_7 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Tabs.tsx path="./website/src/playground/components/Tabs.tsx" path="./website/src/playground/components/Tabs.tsx"
    2023-10-05T08:29:04.879332Z  INFO biome::worker_2 Process check:Processes formatting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(SYNTAX)
    2023-10-05T08:29:04.879383Z  INFO biome::worker_2 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx"
    

Enhancements

  • Deprecated the environment variable ROME_BINARY. Use BIOME_BINARY instead. Contributed by @ematipico
  • Biome doesn't check anymore the presence of the .git folder when VCS support is enabled. Contributed by @ematipico
  • biome rage doesn't print the logs of the daemon, use biome rage --daemon-logs to print them. Contributed by @unvalley

Configuration

New features

  • Add option formatter.indentWidth, and deprecated the option formatter.indentSize. Contributed by @ematipico

  • Add option javascript.formatter.indentWidth, and deprecated the option javascript.formatter.indentSize. Contributed by @ematipico

  • Add option json.formatter.indentWidth, and deprecated the option json.formatter.indentSize. Contributed by @ematipico

  • Add option include to multiple sections of the configuration

    • files.include;
    • formatter.include;
    • linter.include;
    • organizeImports.include;
      When include and ignore are both specified, ignore takes precedence over include
  • Add option overrides, where users can modify the behaviour of the tools for certain files or paths.

    For example, it's possible to modify the formatter lineWidth, and even quoteStyle for certain files that are included in glob path generated/**:

    {
      "formatter": {
        "lineWidth": 100
      },
      "overrides": [
        {
          "include": ["generated/**"],
          "formatter": {
            "lineWidth": 160
          },
          "javascript": {
            "formatter": {
              "quoteStyle": "single"
            }
          }
        }
      ]
    }

    Or, you can disable certain rules for certain path, and disable the linter for other paths:

    {
      "linter": {
        "enabled": true,
        "rules": {
          "recommended": true
        }
      },
      "overrides": [
        {
          "include": ["lib/**"],
          "linter": {
            "rules": {
              "suspicious": {
                "noDebugger": "off"
              }
            }
          }
        },
        {
          "include": ["shims/**"],
          "linter": {
            "enabled": false
          }
        }
      ]
    }

Bug fixes

  • Fix #343, extends was incorrectly applied to the biome.json file. Contributed by @ematipico

Editors

Bug fixes

  • Fix #404. Biome intellij plugin now works on Windows. Contributed by @victor-teles

  • Fix #402. Biome format on intellij plugin now recognize biome.json. Contributed by @victor-teles

Formatter

Enhancements

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

Linter

Promoted rules

The following rules are now recommended:

Bug fixes

New features

Read more

VSCode Extension v1.5.20231014

14 Oct 07:19
Compare
Choose a tag to compare
Pre-release

Analyzer

Enhancements

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

  • Import sorting now handles Bun imports bun:<name>, absolute path imports /<path>, and Node's subpath imports #<name>. See our documentation for more details. Contributed by @Conaclos

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
  • Fix a bug where the extends functionality doesn't carry over organizeImports.ignore. Contributed by @ematipico

New features

  • Add support for BIOME_BINARY environment variable to override the location of the binary. Contributed by @ematipico

  • Add option --indent-width, and deprecated the option --indent-size. Contributed by @ematipico

  • Add option --javascript-formatter-indent-width, and deprecated the option --javascript-formatter-indent-size. Contributed by @ematipico

  • Add option --json-formatter-indent-width, and deprecated the option --json-formatter-indent-size. Contributed by @ematipico

  • Add option --daemon-logs to biome rage. The option is required to view Biome daemon server logs. Contributed by @unvalley

  • Add support for logging. By default, Biome doesn't log anything other than diagnostics. Logging can be enabled with the new option --log-level:

    biome format --log-level=info ./src

    There are four different levels of logging, from the most verbose to the least verbose: debug, info, warn and error. Here's how an INFO log will look like:

    2023-10-05T08:27:01.954727Z  INFO  Analyze file ./website/src/playground/components/Resizable.tsx
      at crates/biome_service/src/file_handlers/javascript.rs:298 on biome::worker_5
      in Pulling diagnostics with categories: RuleCategories(SYNTAX)
      in Processes formatting with path: "./website/src/playground/components/Resizable.tsx"
      in Process check with path: "./website/src/playground/components/Resizable.tsx"
    

    You can customize how the log will look like with a new option --log-kind. The supported kinds are: pretty, compact and json.

    pretty is the default logging. Here's how a compact log will look like:

    2023-10-05T08:29:04.864247Z  INFO biome::worker_2 Process check:Processes linting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(LINT)
    2023-10-05T08:29:04.864290Z  INFO biome::worker_7 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Tabs.tsx path="./website/src/playground/components/Tabs.tsx" path="./website/src/playground/components/Tabs.tsx"
    2023-10-05T08:29:04.879332Z  INFO biome::worker_2 Process check:Processes formatting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(SYNTAX)
    2023-10-05T08:29:04.879383Z  INFO biome::worker_2 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx"
    

Enhancements

  • Deprecated the environment variable ROME_BINARY. Contributed by @ematipico
  • Biome doesn't check anymore the presence of the .git folder when VCS support is enabled. Contributed by @ematipico

Configuration

New features

  • Add option formatter.indentWidth, and deprecated the option formatter.indentSize. Contributed by @ematipico
  • Add option javascript.formatter.indentWidth, and deprecated the option javascript.formatter.indentSize. Contributed by @ematipico
  • Add option json.formatter.indentWidth, and deprecated the option json.formatter.indentSize. Contributed by @ematipico
  • Add option include to multiple sections of the configuration
    • files.include;
    • formatter.include;
    • linter.include;
    • organizeImports.include;
      When include and ignore are both specified, ignore takes precedence over include

Bug fixes

  • Fix #343, extends was incorrectly applied to the biome.json file. Contributed by @ematipico

Editors

Bug fixes

  • Fix #404. Biome intellij plugin now works on Windows. Contributed by @victor-teles

  • Fix #402. Biome format on intellij plugin now recognize biome.json. Contributed by @victor-teles

Formatter

Enhancements

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

JavaScript APIs

Linter

Bug fixes

New features

Enhancements

Bug fixes

Read more

VSCode Extension v1.5.20231006

06 Oct 18:37
9264c09
Compare
Choose a tag to compare
Pre-release

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
  • Fix a bug where the extends functionality doesn't carry over organizeImports.ignore. Contributed by @ematipico

New features

  • Add support for BIOME_BINARY environment variable to override the location of the binary. Contributed by @ematipico

  • Add option --indent-width, and deprecated the option --indent-size. Contributed by @ematipico

  • Add option --javascript-formatter-indent-width, and deprecated the option --javascript-formatter-indent-size. Contributed by @ematipico

  • Add option --json-formatter-indent-width, and deprecated the option --json-formatter-indent-size. Contributed by @ematipico

  • Add option --daemon-logs to biome rage. The option is required to view Biome daemon server logs. Contributed by @unvalley

  • Add support for logging. By default, Biome doesn't log anything other than diagnostics. Logging can be enabled with the new option --log-level:

    biome format --log-level=info ./src

    There are four different levels of logging, from the most verbose to the least verbose: debug, info, warn and error. Here's how an INFO log will look like:

    2023-10-05T08:27:01.954727Z  INFO  Analyze file ./website/src/playground/components/Resizable.tsx
      at crates/biome_service/src/file_handlers/javascript.rs:298 on biome::worker_5
      in Pulling diagnostics with categories: RuleCategories(SYNTAX)
      in Processes formatting with path: "./website/src/playground/components/Resizable.tsx"
      in Process check with path: "./website/src/playground/components/Resizable.tsx"
    

    You can customize how the log will look like with a new option --log-kind. The supported kinds are: pretty, compact and json.

    pretty is the default logging. Here's how a compact log will look like:

    2023-10-05T08:29:04.864247Z  INFO biome::worker_2 Process check:Processes linting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(LINT)
    2023-10-05T08:29:04.864290Z  INFO biome::worker_7 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Tabs.tsx path="./website/src/playground/components/Tabs.tsx" path="./website/src/playground/components/Tabs.tsx"
    2023-10-05T08:29:04.879332Z  INFO biome::worker_2 Process check:Processes formatting:Pulling diagnostics: crates/biome_service/src/file_handlers/javascript.rs: Analyze file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx" categories=RuleCategories(SYNTAX)
    2023-10-05T08:29:04.879383Z  INFO biome::worker_2 Process check:Processes formatting: crates/biome_service/src/file_handlers/javascript.rs: Format file ./website/src/playground/components/Resizable.tsx path="./website/src/playground/components/Resizable.tsx" path="./website/src/playground/components/Resizable.tsx"
    

Enhancements

  • Deprecated the environment variable ROME_BINARY. Contributed by @ematipico
  • Biome doesn't check anymore the presence of the .git folder when VCS support is enabled. Contributed by @ematipico

Configuration

New features

  • Add option formatter.indentWidth, and deprecated the option formatter.indentSize. Contributed by @ematipico
  • Add option javascript.formatter.indentWidth, and deprecated the option javascript.formatter.indentSize. Contributed by @ematipico
  • Add option json.formatter.indentWidth, and deprecated the option json.formatter.indentSize. Contributed by @ematipico
  • Add option include to multiple sections of the configuration
    • files.include;
    • formatter.include;
    • linter.include;
    • organizeImports.include;
      When include and ignore are both specified, ignore takes precedence over include

Editors

Bug fixes

  • Fix #404. Biome intellij plugin now works on Windows. Contributed by @victor-teles

  • Fix #402. Biome format on intellij plugin now recognize biome.json. Contributed by @victor-teles

Formatter

Enhancements

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

JavaScript APIs

Linter

Bug fixes

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

  • Add support for parsing trailing commas inside JSON files:

    {
      "json": {
        "parser": {
          "allowTrailingCommas": true
        }
      }
    }

    Contributed by @nissy-dev

VSCode

What's Changed

Other changes

  • chore: improve diagnostic message for `n...
Read more

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