Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: biomejs/biome
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 4ed1cbe96bc9e6d7092e88dd0a54ff8ce78037e5
Choose a base ref
...
head repository: biomejs/biome
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 7669b334ecfb9580abe83bbf6141232805f0e4bd
Choose a head ref

Commits on Mar 12, 2024

  1. Copy the full SHA
    0aed274 View commit details
  2. Copy the full SHA
    1d31bda View commit details
  3. Copy the full SHA
    fe71929 View commit details
  4. Copy the full SHA
    8e8e450 View commit details
  5. Copy the full SHA
    e2bcaa4 View commit details

Commits on Mar 13, 2024

  1. Copy the full SHA
    dd1860e View commit details
  2. Copy the full SHA
    9363c5b View commit details
  3. Copy the full SHA
    2444526 View commit details
  4. Copy the full SHA
    0a74c02 View commit details
  5. Copy the full SHA
    409eb10 View commit details
  6. Copy the full SHA
    5bc24f1 View commit details
  7. Copy the full SHA
    172d906 View commit details
  8. Copy the full SHA
    6cb19f5 View commit details
  9. Copy the full SHA
    f95d8dc View commit details
  10. Copy the full SHA
    1a82a01 View commit details
  11. Copy the full SHA
    4568c5a View commit details

Commits on Mar 14, 2024

  1. Copy the full SHA
    976a54b View commit details
  2. Copy the full SHA
    ef1e5ff View commit details
  3. Copy the full SHA
    bdc090b View commit details
  4. Copy the full SHA
    690dc0a View commit details
  5. Copy the full SHA
    8dac854 View commit details
  6. Copy the full SHA
    1412306 View commit details
  7. Copy the full SHA
    b7de716 View commit details
  8. Copy the full SHA
    68e7f41 View commit details
  9. Copy the full SHA
    8bc73af View commit details
  10. Copy the full SHA
    9cd8b38 View commit details
  11. Copy the full SHA
    492dcca View commit details
  12. Copy the full SHA
    fdc592b View commit details
  13. Copy the full SHA
    89939ef View commit details
  14. Copy the full SHA
    745afc8 View commit details

Commits on Mar 15, 2024

  1. Copy the full SHA
    906b7c1 View commit details
  2. Copy the full SHA
    2c2efad View commit details
  3. docs: parser implementation guide (#2089)

    Co-authored-by: Nicolas Hedger <649677+nhedger@users.noreply.github.com>
    ematipico and nhedger authored Mar 15, 2024
    Copy the full SHA
    0b7797e View commit details
  4. Copy the full SHA
    37d772b View commit details
  5. Copy the full SHA
    5525710 View commit details

Commits on Mar 16, 2024

  1. Copy the full SHA
    55b5b57 View commit details
  2. Copy the full SHA
    c6cf7e5 View commit details
  3. Copy the full SHA
    984626d View commit details

Commits on Mar 18, 2024

  1. Copy the full SHA
    5f60beb View commit details
  2. Copy the full SHA
    71a8bf1 View commit details
  3. Copy the full SHA
    eef37f8 View commit details
  4. Copy the full SHA
    084c1ec View commit details

Commits on Mar 19, 2024

  1. ci: format renovate.json (#2129)

    Sec-ant authored Mar 19, 2024
    Copy the full SHA
    bab454f View commit details
  2. Copy the full SHA
    8df8bd3 View commit details
  3. refactor: generic lexer (#2124)

    Co-authored-by: Arend van Beelen jr. <arendjr@gmail.com>
    ematipico and arendjr authored Mar 19, 2024
    Copy the full SHA
    d14a4c6 View commit details
  4. Copy the full SHA
    98d53ae View commit details
  5. Copy the full SHA
    58974c9 View commit details
  6. Copy the full SHA
    c10688c View commit details
  7. Copy the full SHA
    6d29b27 View commit details
  8. Copy the full SHA
    8dc5011 View commit details
Showing 616 changed files with 16,149 additions and 10,339 deletions.
11 changes: 7 additions & 4 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
[alias]
biome-cli = "run -p biome_cli --release --"
biome-cli-dev = "run -p biome_cli --"
codegen = "run -p xtask_codegen --"
codegen-bindings = "run -p xtask_codegen --features schema -- bindings"
biome-cli = "run -p biome_cli --release --"
biome-cli-dev = "run -p biome_cli --"
codegen = "run -p xtask_codegen --"
codegen-bindings = "run -p xtask_codegen --features schema -- bindings"
codegen-configuration = "run -p xtask_codegen --features configuration -- configuration"
# updates a newly created crate
codegen-license = "run -p xtask_codegen --features license -- license"
codegen-schema = "run -p xtask_codegen --features schema -- schema"
codegen-website = "run -p xtask_codegen --features website -- website"
@@ -27,11 +28,13 @@ documentation = """
-p biome_js_semantic \
-p biome_markup \
-p biome_rowan
-p biome_string_case \
--no-deps
"""
format = "fmt --all --verbose"
lint = "clippy --workspace --all-targets -- --deny warnings"
lintdoc = "run -p xtask_lintdoc --"
new-crate = "run -p xtask_codegen -- new-crate"

[profile.release]
lto = true
8 changes: 0 additions & 8 deletions .changeset/README.md

This file was deleted.

11 changes: 0 additions & 11 deletions .changeset/config.json

This file was deleted.

22 changes: 13 additions & 9 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -1,24 +1,28 @@
# Generated files, sorted alphabetically.
* text=auto eol=lf
crates/biome_unicode_table/src/tables.rs linguist-generated=true text=auto eol=lf
**/generated/* linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/analyzers.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/assists.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/semantic_analyzers.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/analyzers/*.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/assists.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/assists/*.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/semantic_analyzers.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/semantic_analyzers/*.rs linguist-generated=true text=auto eol=lf
crates/biome_js_analyze/src/registry.rs linguist-generated=true text=auto eol=lf
crates/biome_service/src/configuration/linter/rules.rs linguist-generated=true text=auto eol=lf
crates/biome_service/src/configuration/parse/json/rules.rs linguist-generated=true text=auto eol=lf
crates/biome_unicode_table/src/tables.rs linguist-generated=true text=auto eol=lf
packages/@biomejs/backend-jsonrpc/src/workspace.ts linguist-generated=true text=auto eol=lf
packages/@biomejs/biome/configuration_schema.json linguist-generated=true text=auto eol=lf
pnpm-lock.yaml linguist-generated=true text=auto eol=lf
website/src/pages/lint/rules/**/*.md linguist-generated=true text=auto eol=lf
website/src/components/generated/.astro linguist-generated=true text=auto eol=lf
packages/@biomejs/biome/configuration_schema.json linguist-generated=true text=auto eol=lf
crates/biome_service/src/configuration/parse/json/rules.rs linguist-generated=true text=auto eol=lf
crates/biome_js_formatter/tests/**/*.ts.prettier-snap linguist-language=TypeScript
crates/biome_js_formatter/tests/**/*.js.prettier-snap linguist-language=JavaScript
crates/biome_js_formatter/tests/**/*.ts.snap linguist-language=Markdown
crates/biome_js_formatter/tests/**/*.js.snap linguist-language=Markdown

# Files with the language manually specified, sorted alphabetically.
crates/biome_cli/tests/**/*.snap linguist-language=Markdown
crates/biome_js_analyze/tests/specs/**/*.snap linguist-language=Markdown
crates/biome_css_formatter/tests/**/*.css.prettier-snap linguist-language=CSS
crates/biome_css_formatter/tests/**/*.css.snap linguist-language=Markdown
crates/biome_js_formatter/tests/**/*.ts.prettier-snap linguist-language=TypeScript
crates/biome_js_formatter/tests/**/*.js.prettier-snap linguist-language=JavaScript
crates/biome_js_formatter/tests/**/*.ts.snap linguist-language=Markdown
crates/biome_js_formatter/tests/**/*.js.snap linguist-language=Markdown
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: VSCode extension issues
url: https://github.com/biomejs/biome-vscode
about: File an issue in the biome-vscode repository
- name: IntelliJ extension issues
url: https://github.com/biomejs/biome-intellij
about: File an issue in the biome-intellij repository
- name: ✅ Linter rule requests
url: https://github.com/biomejs/biome/discussions/3
about: Please add a comment to the discussion named "Linter rules from other sources"
15 changes: 15 additions & 0 deletions .github/actions/free-disk-space/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Free Disk Space
description: Free up disk space on the runner
runs:
using: composite
steps:
- name: Free Disk Space (Ubuntu)
if: runner.os == 'Linux'
uses: jlumbroso/free-disk-space@main
with:
# We need to reclaim some space, but uninstalling everyting takes
# too long. So we'll just remove some of the larger packages.
android: true
dotnet: true
haskell: true
large-packages: false
28 changes: 28 additions & 0 deletions .github/renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
"timezone": "Europe/Gibraltar",
"schedule": ["before 9am on monday"],
"assignees": ["@biomejs/maintainers", "@biomejs/core-contributors"],
"packageRules": [
{
"groupName": "github-actions",
"matchManagers": ["github-actions"]
},
{
"groupName": "Rust crates",
"matchManagers": ["cargo"],
"matchFileNames": ["crates/**", "xtask/**"],
"ignoreDeps": ["syn", "quote"]
},
{
"groupName": "Website",
"matchFileNames": ["website/package.json"],
"matchManagers": ["npm"]
},
{
"groupName": "@biomejs packages",
"matchFileNames": ["packages/**"],
"matchManagers": ["npm"]
}
]
}
8 changes: 2 additions & 6 deletions .github/workflows/ja-translation.yaml
Original file line number Diff line number Diff line change
@@ -22,11 +22,7 @@ jobs:
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@v3
with:
version: 8
- name: Install libraries
working-directory: website
run: pnpm i
run: pnpm --filter @biomejs/website i
- name: Run textlint
working-directory: website
run: pnpm textlint
run: pnpm --filter @biomejs/website run textlint
10 changes: 10 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -25,6 +25,8 @@ jobs:
run: git config core.longpaths true
- name: Checkout repository
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -41,6 +43,8 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -56,6 +60,8 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -77,6 +83,8 @@ jobs:
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -102,6 +110,8 @@ jobs:
uses: actions/checkout@v4
with:
submodules: recursive
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
- name: Compile
3 changes: 3 additions & 0 deletions .github/workflows/parser_conformance.yml
Original file line number Diff line number Diff line change
@@ -35,6 +35,9 @@ jobs:
with:
submodules: recursive

- name: Free Disk Space
uses: ./.github/actions/free-disk-space

- name: Install toolchain
uses: moonrepo/setup-rust@v1

63 changes: 35 additions & 28 deletions .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
@@ -29,6 +29,8 @@ jobs:
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -45,6 +47,8 @@ jobs:
steps:
- name: Checkout PR Branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -58,6 +62,8 @@ jobs:
steps:
- name: Checkout PR Branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
run: rustup toolchain install nightly
- name: Install udeps
@@ -74,13 +80,10 @@ jobs:
- os: windows-latest
- os: ubuntu-latest
steps:
- name: Free Disk Space (Ubuntu)
if: matrix.os == 'ubuntu-latest'
uses: jlumbroso/free-disk-space@main
with:
android: true
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
@@ -90,25 +93,27 @@ jobs:
- name: Run doctests
run: cargo test --doc

fuzz-all:
name: Build and init fuzzers
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Install toolchain
uses: moonrepo/setup-rust@v1
with:
bins: cargo-fuzz
- name: Run init-fuzzer
run: bash fuzz/init-fuzzer.sh
# fuzz-all:
# name: Build and init fuzzers
# runs-on: ubuntu-latest
# steps:
# - name: Checkout PR branch
# uses: actions/checkout@v4
# - name: Install toolchain
# uses: moonrepo/setup-rust@v1
# with:
# bins: cargo-fuzz
# - name: Run init-fuzzer
# run: bash fuzz/init-fuzzer.sh

test-node-api:
name: Test node.js API
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
- name: Build main binary
@@ -125,31 +130,31 @@ jobs:
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@v3
with:
version: 8
- name: Install wasm-pack
run: curl https://rustwasm.github.io/wasm-pack/installer/init.sh -sSf | sh

- name: Build TypeScript code
run: |
pnpm --prefix packages/@biomejs/backend-jsonrpc i
pnpm --prefix packages/@biomejs/backend-jsonrpc run build
pnpm --prefix packages/@biomejs/js-api run build:wasm-bundler
pnpm --prefix packages/@biomejs/js-api run build:wasm-node
pnpm --prefix packages/@biomejs/js-api run build:wasm-web
pnpm --prefix packages/@biomejs/js-api i
pnpm --prefix packages/@biomejs/js-api run build
pnpm --filter @biomejs/backend-jsonrpc i
pnpm --filter @biomejs/backend-jsonrpc run build
pnpm --filter @biomejs/js-api run build:wasm-bundler
pnpm --filter @biomejs/js-api run build:wasm-node
pnpm --filter @biomejs/js-api run build:wasm-web
pnpm --filter @biomejs/js-api i
pnpm --filter @biomejs/js-api run build
- name: Run JS tests
run: |
pnpm --prefix packages/@biomejs/backend-jsonrpc test:ci
pnpm --prefix packages/@biomejs/js-api test:ci
pnpm --filter @biomejs/backend-jsonrpc run test:ci
pnpm --filter @biomejs/js-api run test:ci
documentation:
name: Documentation
runs-on: ubuntu-latest
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
- name: Run doc command
@@ -161,6 +166,8 @@ jobs:
steps:
- name: Checkout PR branch
uses: actions/checkout@v4
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Install toolchain
uses: moonrepo/setup-rust@v1
- name: Run the grammar codegen
Loading