diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 2353b779..5afe338a 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -39,7 +39,7 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 24 - cache: pnpm + package-manager-cache: false - name: Install dependencies run: pnpm install - name: Lint @@ -58,7 +58,7 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 24 - cache: pnpm + package-manager-cache: false - name: Install dependencies run: pnpm install - name: Build @@ -146,13 +146,13 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 24 - cache: pnpm - - name: Install - run: rustup target add ${{ matrix.settings.target }} + package-manager-cache: false - uses: oxc-project/setup-rust@23f38cfb0c04af97a055f76acee94d5be71c7c82 # v1.0.16 with: cache-key: ${{ matrix.settings.target }}-${{ matrix.settings.host }} save-cache: ${{ github.ref_name == 'main' }} + - name: Install + run: rustup target add ${{ matrix.settings.target }} - uses: mlugg/setup-zig@d1434d08867e3ee9daa34448df10607b98908d29 # v2.2.1 if: ${{ contains(matrix.settings.target, 'musl') }} with: @@ -172,12 +172,14 @@ jobs: shell: bash - name: Install dependencies run: pnpm install + - name: Pin cargo binary + run: echo "CARGO=$(rustup which cargo)" >> "$GITHUB_ENV" - name: Setup node x86 uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 if: matrix.settings.target == 'i686-pc-windows-msvc' with: node-version: 22 - cache: pnpm + package-manager-cache: false architecture: x86 - name: Build run: ${{ matrix.settings.build }} @@ -229,7 +231,8 @@ jobs: pnpm --filter=@oxc-node/core build --target x86_64-unknown-freebsd pnpm --filter=@oxc-node/core export-oxc-runtime pnpm --filter @oxc-node/cli build - pnpm rebuild + # Re-link workspace bins after the CLI entrypoint is generated. + pnpm install --offline --ignore-scripts pnpm test rm -rf node_modules rm -rf target @@ -283,9 +286,9 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: ${{ matrix.node }} - cache: pnpm check-latest: true architecture: ${{ matrix.settings.architecture }} + package-manager-cache: false - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: cli @@ -339,7 +342,7 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: ${{ matrix.node }} - cache: pnpm + package-manager-cache: false - name: Output docker params id: docker run: | @@ -411,7 +414,7 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 24 - cache: pnpm + package-manager-cache: false - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: cli @@ -452,7 +455,7 @@ jobs: uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0 with: node-version: 24 - cache: pnpm + package-manager-cache: false - name: Install dependencies run: pnpm install - name: Download all artifacts diff --git a/.github/workflows/security.yml b/.github/workflows/security.yml index ed71b9fe..4891f854 100644 --- a/.github/workflows/security.yml +++ b/.github/workflows/security.yml @@ -21,4 +21,5 @@ jobs: name: Security Analysis runs-on: ubuntu-slim steps: + - uses: oxc-project/setup-rust@23f38cfb0c04af97a055f76acee94d5be71c7c82 # v1.0.16 - uses: oxc-project/security-action@77e230508eccbb400b23746dab6c573a8ea7483e # v1.0.5 diff --git a/Cargo.toml b/Cargo.toml index 91944eac..c40249d8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,7 @@ tracing-subscriber = { version = "0.3", default-features = false, features = [ "fmt", ] } # Omit the `regex` feature -[target.'cfg(all(not(target_os = "linux"), not(target_os = "freebsd"), not(target_arch = "arm"), not(target_arch = "x86"), not(target_family = "wasm")))'.dependencies] +[target.'cfg(all(not(target_os = "linux"), not(target_os = "freebsd"), not(target_arch = "arm"), not(target_arch = "x86"), not(target_family = "wasm"), not(all(target_os = "windows", target_arch = "aarch64"))))'.dependencies] mimalloc-safe = { version = "0.1", features = ["skip_collect_on_exit"] } [target.'cfg(any(target_os = "linux", target_os = "freebsd"))'.dependencies] diff --git a/package.json b/package.json index 89be8a67..56947e61 100644 --- a/package.json +++ b/package.json @@ -36,5 +36,5 @@ "oxlint --fix" ] }, - "packageManager": "pnpm@10.33.0" + "packageManager": "pnpm@11.0.4" } diff --git a/packages/integrate-ava/package.json b/packages/integrate-ava/package.json index 8bc4444b..a517b89e 100644 --- a/packages/integrate-ava/package.json +++ b/packages/integrate-ava/package.json @@ -11,9 +11,9 @@ }, "ava": { "cache": false, - "extensions": { - "ts": "module" - }, + "extensions": [ + "ts" + ], "files": [ "__tests__/**/*.spec.ts" ], diff --git a/packages/integrate-module-bundler/package.json b/packages/integrate-module-bundler/package.json index a103a99e..012bd191 100644 --- a/packages/integrate-module-bundler/package.json +++ b/packages/integrate-module-bundler/package.json @@ -4,7 +4,7 @@ "private": true, "type": "module", "scripts": { - "test": "oxnode -C dev ./src/index.ts" + "test": "node ../cli/dist/index.js -C dev ./src/index.ts" }, "dependencies": { "file-type": "^22.0.0", diff --git a/packages/integrate-module/package.json b/packages/integrate-module/package.json index 49f38019..df3d3090 100644 --- a/packages/integrate-module/package.json +++ b/packages/integrate-module/package.json @@ -4,7 +4,7 @@ "private": true, "type": "module", "scripts": { - "test": "oxnode ./src/index.ts" + "test": "node ../cli/dist/index.js ./src/index.ts" }, "dependencies": { "file-type": "^22.0.0", diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 7edb6067..23f6cba1 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,5 +1,11 @@ packages: - packages/* +allowBuilds: + "@nestjs/core": true + "@swc/core": true + core-js: true + esbuild: true + nx: true catalog: "@napi-rs/cli": 3.6.2 diff --git a/src/lib.rs b/src/lib.rs index 20a028b1..9a0d777a 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -31,7 +31,8 @@ use phf::Set; #[cfg(all( not(target_arch = "x86"), not(target_arch = "arm"), - not(target_family = "wasm") + not(target_family = "wasm"), + not(all(target_os = "windows", target_arch = "aarch64")) ))] #[global_allocator] static ALLOC: mimalloc_safe::MiMalloc = mimalloc_safe::MiMalloc;