Skip to content

feat(graphql_analyze): implement useUniqueEnumValueNames #5297

feat(graphql_analyze): implement useUniqueEnumValueNames

feat(graphql_analyze): implement useUniqueEnumValueNames #5297

# Jobs run on pull request for Node.js APIs
name: Pull request Node.js
on:
merge_group:
pull_request:
branches:
- main
paths: # Only run when changes are made to Rust crates or Node.js packages
- "crates/**"
- "packages/@biomejs/**"
- "Cargo.toml"
- "Cargo.lock"
- "package.json"
- "pnpm-lock.yaml"
- "rust-toolchain.toml"
- ".github/workflows/pull_request_node.yml"
# Cancel jobs when the PR is updated
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true
env:
RUST_LOG: info
RUST_BACKTRACE: 1
jobs:
test-node-api:
name: Test Node.js API
runs-on: depot-ubuntu-24.04-arm-16
steps:
- name: Checkout PR branch
uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1
- name: Install toolchain
uses: moonrepo/setup-rust@ede6de059f8046a5e236c94046823e2af11ca670 # v1.2.2
with:
cache-target: release
cache-base: main
bins: [email protected], wasm-opt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Build main binary
run: cargo build -p biome_cli --release
- name: Install Node.js
uses: actions/setup-node@395ad3262231945c25e8478fd5baf05154b1d79f # v6.1.0
with:
node-version: 24.12.0
- name: Cache pnpm modules
uses: actions/cache@9255dc7a253b0ccc959486e2bca901246202afeb # v5.0.1
with:
path: ~/.pnpm-store
key: ${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
- name: Install just
uses: extractions/setup-just@e33e0265a09d6d736e2ee1e0eb685ef1de4669ff # v3.0.0
- name: Build TypeScript code
# We use the `*-dev` builds below because release builds take very long.
# The main difference is that release builds run `wasm-opt`, which is
# responsible for the majority of the time of these builds, but regular
# PRs of ours don't influence that process anyway, so it feels like a
# waste of time to run on every PR. It does mean that if `wasm-opt`
# breaks something, we'll discover it later, possibly when creating a
# prerelease.
run: |
pnpm --filter @biomejs/backend-jsonrpc i
pnpm --filter @biomejs/backend-jsonrpc run build
pnpm --filter @biomejs/js-api run build:wasm-bundler-dev
pnpm --filter @biomejs/js-api run build:wasm-node-dev
pnpm --filter @biomejs/js-api run build:wasm-web-dev
pnpm --filter @biomejs/js-api i
pnpm --filter @biomejs/js-api run build
- name: Run JS tests
run: |
pnpm --filter @biomejs/backend-jsonrpc run test:ci
pnpm --filter @biomejs/js-api run test:ci