diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 09ecf0b..acd0626 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -63,6 +63,18 @@ jobs: - host: ubuntu-latest target: aarch64-unknown-linux-musl build: yarn build --target aarch64-unknown-linux-musl -x + - host: ubuntu-latest + target: powerpc64le-unknown-linux-gnu + build: | + sudo apt-get update + sudo apt-get install -y gcc-powerpc64le-linux-gnu + yarn build --target powerpc64le-unknown-linux-gnu + - host: ubuntu-latest + target: s390x-unknown-linux-gnu + build: | + sudo apt-get update + sudo apt-get install -y gcc-s390x-linux-gnu + yarn build --target s390x-unknown-linux-gnu - host: windows-latest target: aarch64-pc-windows-msvc build: yarn build --target aarch64-pc-windows-msvc @@ -95,9 +107,7 @@ jobs: uses: actions/cache@v4 with: path: | - ~/.cargo/registry/index/ - ~/.cargo/registry/cache/ - ~/.cargo/git/db/ + ~/.cargo ~/.napi-rs target/ key: ${{ matrix.settings.target }}-cargo-${{ matrix.settings.host }} @@ -105,6 +115,13 @@ jobs: if: ${{ contains(matrix.settings.target, 'musl') }} with: version: 0.13.0 + - name: Install cargo-zigbuild + uses: taiki-e/install-action@v2 + if: ${{ contains(matrix.settings.target, 'musl') }} + env: + GITHUB_TOKEN: ${{ github.token }} + with: + tool: cargo-zigbuild - name: Setup toolchain run: ${{ matrix.settings.setup }} if: ${{ matrix.settings.setup }} @@ -219,16 +236,30 @@ jobs: shell: bash - name: Test bindings run: yarn test - test-linux-x64-gnu-binding: - name: Test bindings on Linux-x64-gnu - node@${{ matrix.node }} + test-linux-binding: + name: Test ${{ matrix.target }} - node@${{ matrix.node }} needs: - build strategy: fail-fast: false matrix: + target: + - x86_64-unknown-linux-gnu + - x86_64-unknown-linux-musl + - aarch64-unknown-linux-gnu + - aarch64-unknown-linux-musl + - armv7-unknown-linux-gnueabihf + - s390x-unknown-linux-gnu + - powerpc64le-unknown-linux-gnu node: - '18' - '20' + exclude: + # too slow + - target: aarch64-unknown-linux-gnu + node: '18' + - target: s390x-unknown-linux-gnu + node: '18' runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 @@ -237,162 +268,55 @@ jobs: with: node-version: ${{ matrix.node }} cache: yarn - - name: Install dependencies - run: yarn install - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: bindings-x86_64-unknown-linux-gnu - path: . - - name: List packages - run: ls -R . - shell: bash - - name: Test bindings - run: docker run --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-slim yarn test - test-linux-x64-musl-binding: - name: Test bindings on x86_64-unknown-linux-musl - node@${{ matrix.node }} - needs: - - build - strategy: - fail-fast: false - matrix: - node: - - '18' - - '20' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Setup node - uses: actions/setup-node@v4 - with: - node-version: ${{ matrix.node }} - cache: yarn - - name: Install dependencies - run: | - yarn config set supportedArchitectures.libc "musl" - yarn install - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: bindings-x86_64-unknown-linux-musl - path: . - - name: List packages - run: ls -R . - shell: bash - - name: Test bindings - run: docker run --rm -v $(pwd):/build -w /build node:${{ matrix.node }}-alpine yarn test - test-linux-aarch64-gnu-binding: - name: Test bindings on aarch64-unknown-linux-gnu - node@${{ matrix.node }} - needs: - - build - strategy: - fail-fast: false - matrix: - node: - - '18' - - '20' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: bindings-aarch64-unknown-linux-gnu - path: . - - name: List packages - run: ls -R . - shell: bash - - name: Install dependencies + - name: Output docker params + id: docker run: | - yarn config set supportedArchitectures.cpu "arm64" - yarn config set supportedArchitectures.libc "glibc" - yarn install - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - with: - platforms: arm64 - - run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - name: Setup and run tests - uses: addnab/docker-run-action@v3 - with: - image: node:${{ matrix.node }}-slim - options: '--platform linux/arm64 -v ${{ github.workspace }}:/build -w /build' - run: | - set -e - yarn test - ls -la - test-linux-aarch64-musl-binding: - name: Test bindings on aarch64-unknown-linux-musl - node@lts - needs: - - build - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - - name: Download artifacts - uses: actions/download-artifact@v4 - with: - name: bindings-aarch64-unknown-linux-musl - path: . - - name: List packages - run: ls -R . - shell: bash + node -e " + if ('${{ matrix.target }}'.startsWith('aarch64')) { + console.log('PLATFORM=linux/arm64') + } else if ('${{ matrix.target }}'.startsWith('armv7')) { + console.log('PLATFORM=linux/arm/v7') + } else if ('${{ matrix.target }}'.startsWith('powerpc64le')) { + console.log('PLATFORM=linux/ppc64le') + } else if ('${{ matrix.target }}'.startsWith('s390x')) { + console.log('PLATFORM=linux/s390x') + } else { + console.log('PLATFORM=linux/amd64') + } + " >> $GITHUB_OUTPUT + node -e " + if ('${{ matrix.target }}'.endsWith('-musl')) { + console.log('IMAGE=node:${{ matrix.node }}-alpine') + } else { + console.log('IMAGE=node:${{ matrix.node }}-slim') + } + " >> $GITHUB_OUTPUT - name: Install dependencies run: | - yarn config set supportedArchitectures.cpu "arm64" - yarn config set supportedArchitectures.libc "musl" + yarn config set --json supportedArchitectures.os '["current", "linux"]' + yarn config set --json supportedArchitectures.cpu '["current", "arm64", "arm", "ppc64", "s390x", "x64"]' + yarn config set --json supportedArchitectures.libc '["current", "glibc", "musl"]' yarn install - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - with: - platforms: arm64 - - run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - name: Setup and run tests - uses: addnab/docker-run-action@v3 - with: - image: node:lts-alpine - options: '--platform linux/arm64 -v ${{ github.workspace }}:/build -w /build' - run: | - set -e - yarn test - test-linux-arm-gnueabihf-binding: - name: Test bindings on armv7-unknown-linux-gnueabihf - node@${{ matrix.node }} - needs: - - build - strategy: - fail-fast: false - matrix: - node: - - '18' - - '20' - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - name: Download artifacts uses: actions/download-artifact@v4 with: - name: bindings-armv7-unknown-linux-gnueabihf + name: bindings-${{ matrix.target }} path: . - name: List packages run: ls -R . shell: bash - - name: Install dependencies - run: | - yarn config set supportedArchitectures.cpu "arm" - yarn install - name: Set up QEMU uses: docker/setup-qemu-action@v3 with: - platforms: arm + platforms: all - run: docker run --rm --privileged multiarch/qemu-user-static --reset -p yes - - name: Setup and run tests + - name: Test bindings uses: addnab/docker-run-action@v3 with: - image: node:${{ matrix.node }}-slim - options: '--platform linux/arm/v7 -v ${{ github.workspace }}:/build -w /build' - run: | - set -e - yarn test - ls -la + image: ${{ steps.docker.outputs.IMAGE }} + options: -v ${{ github.workspace }}:${{ github.workspace }} -w ${{ github.workspace }} --platform ${{ steps.docker.outputs.PLATFORM }} + run: yarn run test + test-nodejs-wasi: name: Test bindings on wasm32-wasi - node@${{ matrix.node }} needs: @@ -431,11 +355,7 @@ jobs: needs: - build-freebsd - test-macOS-windows-binding - - test-linux-x64-gnu-binding - - test-linux-x64-musl-binding - - test-linux-aarch64-gnu-binding - - test-linux-aarch64-musl-binding - - test-linux-arm-gnueabihf-binding + - test-linux-binding - test-nodejs-wasi steps: - uses: actions/checkout@v4 diff --git a/__test__/index.spec.ts b/__test__/index.spec.ts index 697dc70..d62dd0c 100644 --- a/__test__/index.spec.ts +++ b/__test__/index.spec.ts @@ -4,6 +4,9 @@ import { join } from 'node:path' import test from 'ava' import { Archive } from '../index' +import { fileURLToPath } from 'node:url' + +const __dirname = join(fileURLToPath(import.meta.url), '..') test('should be able to read archive', (t) => { const archive = new Archive(join(__dirname, 'src.tar')) diff --git a/__test__/package.json b/__test__/package.json new file mode 100644 index 0000000..3dbc1ca --- /dev/null +++ b/__test__/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/__test__/tsconfig.json b/__test__/tsconfig.json new file mode 100644 index 0000000..47d70c9 --- /dev/null +++ b/__test__/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "module": "ESNext", + "moduleResolution": "Bundler", + "outDir": "./dist" + }, + "include": ["."], + "exclude": [] +} diff --git a/benchmark/bench.ts b/benchmark/bench.ts index 6c6611f..2c1c49c 100644 --- a/benchmark/bench.ts +++ b/benchmark/bench.ts @@ -1,10 +1,13 @@ import { readFileSync } from 'node:fs' import { join } from 'node:path' -import b from 'benny' +import { Bench } from 'tinybench' import { list } from 'tar' import { Archive } from '../index' +import { fileURLToPath } from 'node:url' + +const __dirname = join(fileURLToPath(import.meta.url), '..') const ARCHIVE_PATH = join(__dirname, '..', '__test__', 'src.tar.gz') @@ -22,33 +25,26 @@ for (const entry of archive.entries()) { console.info('list from @napi-rs/tar', entry.path()) } -async function run() { - await b.suite( - 'Read all entries', - - b.add('@napi-rs/tar', () => { - const archiveBuffer = readFileSync(ARCHIVE_PATH) - const archive = new Archive(archiveBuffer) - for (const entry of archive.entries()) { - entry.path() - } - }), - - b.add('node-tar', () => { - list({ - file: join(__dirname, '..', '__test__', 'src.tar.gz'), - onentry: (entry) => { - entry.path - }, - sync: true, - }) - }), - - b.cycle(), - b.complete(), - ) -} +const b = new Bench() + +b.add('@napi-rs/tar', () => { + const archiveBuffer = readFileSync(ARCHIVE_PATH) + const archive = new Archive(archiveBuffer) + for (const entry of archive.entries()) { + entry.path() + } +}) -run().catch((e) => { - console.error(e) +b.add('node-tar', () => { + list({ + file: join(__dirname, '..', '__test__', 'src.tar.gz'), + onentry: (entry) => { + entry.path + }, + sync: true, + }) }) + +await b.run() + +console.table(b.table()) diff --git a/benchmark/package.json b/benchmark/package.json new file mode 100644 index 0000000..3dbc1ca --- /dev/null +++ b/benchmark/package.json @@ -0,0 +1,3 @@ +{ + "type": "module" +} diff --git a/benchmark/tsconfig.json b/benchmark/tsconfig.json new file mode 100644 index 0000000..451cf31 --- /dev/null +++ b/benchmark/tsconfig.json @@ -0,0 +1,5 @@ +{ + "extends": "../__test__/tsconfig.json", + "include": ["."], + "exclude": [] +} diff --git a/package.json b/package.json index 5143230..98d33ca 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,8 @@ "aarch64-unknown-linux-musl", "aarch64-pc-windows-msvc", "armv7-linux-androideabi", + "powerpc64le-unknown-linux-gnu", + "s390x-unknown-linux-gnu", "wasm32-wasip1-threads" ] }, @@ -47,7 +49,7 @@ }, "scripts": { "artifacts": "napi artifacts", - "bench": "node -r @swc-node/register benchmark/bench.ts", + "bench": "node --import @oxc-node/core/register benchmark/bench.ts", "build": "napi build --platform --release", "build:debug": "napi build --platform", "format": "run-p format:prettier format:rs format:toml", @@ -62,8 +64,7 @@ "devDependencies": { "@napi-rs/cli": "^3.0.0-alpha.62", "@napi-rs/lzma": "^1.3.0", - "@swc-node/register": "^1.9.0", - "@swc/core": "^1.4.17", + "@oxc-node/core": "^0.0.10", "@taplo/cli": "^0.7.0", "@types/node": "^20.12.7", "@types/tar": "^6", @@ -90,14 +91,15 @@ ] }, "ava": { - "require": [ - "@swc-node/register" - ], - "extensions": [ - "ts" - ], + "extensions": { + "ts": "module" + }, "timeout": "2m", "workerThreads": false, + "nodeArguments": [ + "--import", + "@oxc-node/core/register" + ], "environmentVariables": { "TS_NODE_PROJECT": "./tsconfig.json" } diff --git a/tsconfig.json b/tsconfig.json index 969d7b3..0ba4fb8 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -10,5 +10,5 @@ "allowSyntheticDefaultImports": true }, "include": ["."], - "exclude": ["node_modules"] + "exclude": ["node_modules", "__test__", "benchmark"] } diff --git a/yarn.lock b/yarn.lock index 7c0879d..b6db350 100644 --- a/yarn.lock +++ b/yarn.lock @@ -591,8 +591,7 @@ __metadata: dependencies: "@napi-rs/cli": "npm:^3.0.0-alpha.62" "@napi-rs/lzma": "npm:^1.3.0" - "@swc-node/register": "npm:^1.9.0" - "@swc/core": "npm:^1.4.17" + "@oxc-node/core": "npm:^0.0.10" "@taplo/cli": "npm:^0.7.0" "@types/node": "npm:^20.12.7" "@types/tar": "npm:^6" @@ -620,6 +619,17 @@ __metadata: languageName: node linkType: hard +"@napi-rs/wasm-runtime@npm:^0.2.4": + version: 0.2.4 + resolution: "@napi-rs/wasm-runtime@npm:0.2.4" + dependencies: + "@emnapi/core": "npm:^1.1.0" + "@emnapi/runtime": "npm:^1.1.0" + "@tybys/wasm-util": "npm:^0.9.0" + checksum: 10c0/1040de49b2ef509db207e2517465dbf7fb3474f20e8ec32897672a962ff4f59872385666dac61dc9dbeae3cae5dad265d8dc3865da756adeb07d1634c67b03a1 + languageName: node + linkType: hard + "@napi-rs/wasm-tools-android-arm-eabi@npm:0.0.2": version: 0.0.2 resolution: "@napi-rs/wasm-tools-android-arm-eabi@npm:0.0.2" @@ -949,252 +959,254 @@ __metadata: languageName: node linkType: hard -"@oxlint/darwin-arm64@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/darwin-arm64@npm:0.6.0" +"@oxc-node/core-android-arm-eabi@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-android-arm-eabi@npm:0.0.10" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@oxc-node/core-android-arm64@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-android-arm64@npm:0.0.10" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@oxc-node/core-darwin-arm64@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-darwin-arm64@npm:0.0.10" conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@oxlint/darwin-x64@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/darwin-x64@npm:0.6.0" +"@oxc-node/core-darwin-x64@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-darwin-x64@npm:0.0.10" conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@oxlint/linux-arm64-gnu@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/linux-arm64-gnu@npm:0.6.0" - conditions: os=linux & cpu=arm64 & libc=glibc +"@oxc-node/core-freebsd-x64@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-freebsd-x64@npm:0.0.10" + conditions: os=freebsd & cpu=x64 languageName: node linkType: hard -"@oxlint/linux-arm64-musl@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/linux-arm64-musl@npm:0.6.0" - conditions: os=linux & cpu=arm64 & libc=musl +"@oxc-node/core-linux-arm-gnueabihf@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-arm-gnueabihf@npm:0.0.10" + conditions: os=linux & cpu=arm languageName: node linkType: hard -"@oxlint/linux-x64-gnu@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/linux-x64-gnu@npm:0.6.0" - conditions: os=linux & cpu=x64 & libc=glibc +"@oxc-node/core-linux-arm64-gnu@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-arm64-gnu@npm:0.0.10" + conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@oxlint/linux-x64-musl@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/linux-x64-musl@npm:0.6.0" - conditions: os=linux & cpu=x64 & libc=musl +"@oxc-node/core-linux-arm64-musl@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-arm64-musl@npm:0.0.10" + conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@oxlint/win32-arm64@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/win32-arm64@npm:0.6.0" - conditions: os=win32 & cpu=arm64 +"@oxc-node/core-linux-ppc64-gnu@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-ppc64-gnu@npm:0.0.10" + conditions: os=linux & cpu=ppc64 & libc=glibc languageName: node linkType: hard -"@oxlint/win32-x64@npm:0.6.0": - version: 0.6.0 - resolution: "@oxlint/win32-x64@npm:0.6.0" - conditions: os=win32 & cpu=x64 +"@oxc-node/core-linux-s390x-gnu@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-s390x-gnu@npm:0.0.10" + conditions: os=linux & cpu=s390x & libc=glibc languageName: node linkType: hard -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd +"@oxc-node/core-linux-x64-gnu@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-x64-gnu@npm:0.0.10" + conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@rollup/pluginutils@npm:^4.0.0": - version: 4.2.1 - resolution: "@rollup/pluginutils@npm:4.2.1" - dependencies: - estree-walker: "npm:^2.0.1" - picomatch: "npm:^2.2.2" - checksum: 10c0/3ee56b2c8f1ed8dfd0a92631da1af3a2dfdd0321948f089b3752b4de1b54dc5076701eadd0e5fc18bd191b77af594ac1db6279e83951238ba16bf8a414c64c48 +"@oxc-node/core-linux-x64-musl@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-linux-x64-musl@npm:0.0.10" + conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@sindresorhus/merge-streams@npm:^2.1.0": - version: 2.3.0 - resolution: "@sindresorhus/merge-streams@npm:2.3.0" - checksum: 10c0/69ee906f3125fb2c6bb6ec5cdd84e8827d93b49b3892bce8b62267116cc7e197b5cccf20c160a1d32c26014ecd14470a72a5e3ee37a58f1d6dadc0db1ccf3894 +"@oxc-node/core-wasm32-wasi@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-wasm32-wasi@npm:0.0.10" + dependencies: + "@napi-rs/wasm-runtime": "npm:^0.2.4" + conditions: cpu=wasm32 languageName: node linkType: hard -"@swc-node/core@npm:^1.13.0": - version: 1.13.0 - resolution: "@swc-node/core@npm:1.13.0" - peerDependencies: - "@swc/core": ">= 1.3" - "@swc/types": ">= 0.1" - checksum: 10c0/c41c6fcd155bb6904590d6c8dbd012a5a18dbfac55ab469220a35db47b252c0b5f3baeef9d5438249c3f2823eb9ec5e33566eb2e9b310e07c7f6ab3d207def69 +"@oxc-node/core-win32-arm64-msvc@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-win32-arm64-msvc@npm:0.0.10" + conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc-node/register@npm:^1.9.0": - version: 1.9.0 - resolution: "@swc-node/register@npm:1.9.0" - dependencies: - "@swc-node/core": "npm:^1.13.0" - "@swc-node/sourcemap-support": "npm:^0.5.0" - colorette: "npm:^2.0.20" - debug: "npm:^4.3.4" - pirates: "npm:^4.0.6" - tslib: "npm:^2.6.2" - peerDependencies: - "@swc/core": ">= 1.3" - typescript: ">= 4.3" - checksum: 10c0/9c92beed9b36968a4efc3cec4327bc747302f08e5df7915822e71f11eb660c488f59eedd8410a8d03d871a4d4726e5cffd2a6898f1737f0d7ef93e2cb7883a06 +"@oxc-node/core-win32-ia32-msvc@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-win32-ia32-msvc@npm:0.0.10" + conditions: os=win32 & cpu=ia32 languageName: node linkType: hard -"@swc-node/sourcemap-support@npm:^0.5.0": - version: 0.5.0 - resolution: "@swc-node/sourcemap-support@npm:0.5.0" - dependencies: - source-map-support: "npm:^0.5.21" - tslib: "npm:^2.6.2" - checksum: 10c0/ce079d56d23aca8110fe5aa4826b394aa613b44fc442198a5403bf146d8963f38ed7cb4fa9594095c4c78fe06e5a0781dc51b5343d687658c4426e7fbfce749b +"@oxc-node/core-win32-x64-msvc@npm:0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core-win32-x64-msvc@npm:0.0.10" + conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@swc/core-darwin-arm64@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-darwin-arm64@npm:1.4.17" - conditions: os=darwin & cpu=arm64 +"@oxc-node/core@npm:^0.0.10": + version: 0.0.10 + resolution: "@oxc-node/core@npm:0.0.10" + dependencies: + "@oxc-node/core-android-arm-eabi": "npm:0.0.10" + "@oxc-node/core-android-arm64": "npm:0.0.10" + "@oxc-node/core-darwin-arm64": "npm:0.0.10" + "@oxc-node/core-darwin-x64": "npm:0.0.10" + "@oxc-node/core-freebsd-x64": "npm:0.0.10" + "@oxc-node/core-linux-arm-gnueabihf": "npm:0.0.10" + "@oxc-node/core-linux-arm64-gnu": "npm:0.0.10" + "@oxc-node/core-linux-arm64-musl": "npm:0.0.10" + "@oxc-node/core-linux-ppc64-gnu": "npm:0.0.10" + "@oxc-node/core-linux-s390x-gnu": "npm:0.0.10" + "@oxc-node/core-linux-x64-gnu": "npm:0.0.10" + "@oxc-node/core-linux-x64-musl": "npm:0.0.10" + "@oxc-node/core-wasm32-wasi": "npm:0.0.10" + "@oxc-node/core-win32-arm64-msvc": "npm:0.0.10" + "@oxc-node/core-win32-ia32-msvc": "npm:0.0.10" + "@oxc-node/core-win32-x64-msvc": "npm:0.0.10" + dependenciesMeta: + "@oxc-node/core-android-arm-eabi": + optional: true + "@oxc-node/core-android-arm64": + optional: true + "@oxc-node/core-darwin-arm64": + optional: true + "@oxc-node/core-darwin-x64": + optional: true + "@oxc-node/core-freebsd-x64": + optional: true + "@oxc-node/core-linux-arm-gnueabihf": + optional: true + "@oxc-node/core-linux-arm64-gnu": + optional: true + "@oxc-node/core-linux-arm64-musl": + optional: true + "@oxc-node/core-linux-ppc64-gnu": + optional: true + "@oxc-node/core-linux-s390x-gnu": + optional: true + "@oxc-node/core-linux-x64-gnu": + optional: true + "@oxc-node/core-linux-x64-musl": + optional: true + "@oxc-node/core-wasm32-wasi": + optional: true + "@oxc-node/core-win32-arm64-msvc": + optional: true + "@oxc-node/core-win32-ia32-msvc": + optional: true + "@oxc-node/core-win32-x64-msvc": + optional: true + checksum: 10c0/8525219fbfcd88ebf86f34420ad8916d4d1d19434b37b7593a8f63634a335dfb3492a358831ecb381fcd1db0632ef8922eab720b8a01f7b891445c6179a9d69b languageName: node linkType: hard -"@swc/core-darwin-x64@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-darwin-x64@npm:1.4.17" - conditions: os=darwin & cpu=x64 +"@oxlint/darwin-arm64@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/darwin-arm64@npm:0.6.0" + conditions: os=darwin & cpu=arm64 languageName: node linkType: hard -"@swc/core-linux-arm-gnueabihf@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-linux-arm-gnueabihf@npm:1.4.17" - conditions: os=linux & cpu=arm +"@oxlint/darwin-x64@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/darwin-x64@npm:0.6.0" + conditions: os=darwin & cpu=x64 languageName: node linkType: hard -"@swc/core-linux-arm64-gnu@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-linux-arm64-gnu@npm:1.4.17" +"@oxlint/linux-arm64-gnu@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/linux-arm64-gnu@npm:0.6.0" conditions: os=linux & cpu=arm64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-arm64-musl@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-linux-arm64-musl@npm:1.4.17" +"@oxlint/linux-arm64-musl@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/linux-arm64-musl@npm:0.6.0" conditions: os=linux & cpu=arm64 & libc=musl languageName: node linkType: hard -"@swc/core-linux-x64-gnu@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-linux-x64-gnu@npm:1.4.17" +"@oxlint/linux-x64-gnu@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/linux-x64-gnu@npm:0.6.0" conditions: os=linux & cpu=x64 & libc=glibc languageName: node linkType: hard -"@swc/core-linux-x64-musl@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-linux-x64-musl@npm:1.4.17" +"@oxlint/linux-x64-musl@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/linux-x64-musl@npm:0.6.0" conditions: os=linux & cpu=x64 & libc=musl languageName: node linkType: hard -"@swc/core-win32-arm64-msvc@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-win32-arm64-msvc@npm:1.4.17" +"@oxlint/win32-arm64@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/win32-arm64@npm:0.6.0" conditions: os=win32 & cpu=arm64 languageName: node linkType: hard -"@swc/core-win32-ia32-msvc@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-win32-ia32-msvc@npm:1.4.17" - conditions: os=win32 & cpu=ia32 - languageName: node - linkType: hard - -"@swc/core-win32-x64-msvc@npm:1.4.17": - version: 1.4.17 - resolution: "@swc/core-win32-x64-msvc@npm:1.4.17" +"@oxlint/win32-x64@npm:0.6.0": + version: 0.6.0 + resolution: "@oxlint/win32-x64@npm:0.6.0" conditions: os=win32 & cpu=x64 languageName: node linkType: hard -"@swc/core@npm:^1.4.17": - version: 1.4.17 - resolution: "@swc/core@npm:1.4.17" - dependencies: - "@swc/core-darwin-arm64": "npm:1.4.17" - "@swc/core-darwin-x64": "npm:1.4.17" - "@swc/core-linux-arm-gnueabihf": "npm:1.4.17" - "@swc/core-linux-arm64-gnu": "npm:1.4.17" - "@swc/core-linux-arm64-musl": "npm:1.4.17" - "@swc/core-linux-x64-gnu": "npm:1.4.17" - "@swc/core-linux-x64-musl": "npm:1.4.17" - "@swc/core-win32-arm64-msvc": "npm:1.4.17" - "@swc/core-win32-ia32-msvc": "npm:1.4.17" - "@swc/core-win32-x64-msvc": "npm:1.4.17" - "@swc/counter": "npm:^0.1.2" - "@swc/types": "npm:^0.1.5" - peerDependencies: - "@swc/helpers": ^0.5.0 - dependenciesMeta: - "@swc/core-darwin-arm64": - optional: true - "@swc/core-darwin-x64": - optional: true - "@swc/core-linux-arm-gnueabihf": - optional: true - "@swc/core-linux-arm64-gnu": - optional: true - "@swc/core-linux-arm64-musl": - optional: true - "@swc/core-linux-x64-gnu": - optional: true - "@swc/core-linux-x64-musl": - optional: true - "@swc/core-win32-arm64-msvc": - optional: true - "@swc/core-win32-ia32-msvc": - optional: true - "@swc/core-win32-x64-msvc": - optional: true - peerDependenciesMeta: - "@swc/helpers": - optional: true - checksum: 10c0/385b1ced6ed3b282c717f422d7fb70a8529f81b004dacb6fd49b3cc3693f33047d806870fae868ea71b586628aaf6879870afacd495c61103fe4f46bda8a83e3 +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd languageName: node linkType: hard -"@swc/counter@npm:^0.1.2, @swc/counter@npm:^0.1.3": - version: 0.1.3 - resolution: "@swc/counter@npm:0.1.3" - checksum: 10c0/8424f60f6bf8694cfd2a9bca45845bce29f26105cda8cf19cdb9fd3e78dc6338699e4db77a89ae449260bafa1cc6bec307e81e7fb96dbf7dcfce0eea55151356 +"@rollup/pluginutils@npm:^4.0.0": + version: 4.2.1 + resolution: "@rollup/pluginutils@npm:4.2.1" + dependencies: + estree-walker: "npm:^2.0.1" + picomatch: "npm:^2.2.2" + checksum: 10c0/3ee56b2c8f1ed8dfd0a92631da1af3a2dfdd0321948f089b3752b4de1b54dc5076701eadd0e5fc18bd191b77af594ac1db6279e83951238ba16bf8a414c64c48 languageName: node linkType: hard -"@swc/types@npm:^0.1.5": - version: 0.1.6 - resolution: "@swc/types@npm:0.1.6" - dependencies: - "@swc/counter": "npm:^0.1.3" - checksum: 10c0/043a0e56d69db8733827ad69db55d0ffbd6976fd24ef629a488e57040067ac84d057a57e08bc5a3db545d44b01d6aa43c22df1152c637af450d366e57cde6e22 +"@sindresorhus/merge-streams@npm:^2.1.0": + version: 2.3.0 + resolution: "@sindresorhus/merge-streams@npm:2.3.0" + checksum: 10c0/69ee906f3125fb2c6bb6ec5cdd84e8827d93b49b3892bce8b62267116cc7e197b5cccf20c160a1d32c26014ecd14470a72a5e3ee37a58f1d6dadc0db1ccf3894 languageName: node linkType: hard @@ -1216,6 +1228,15 @@ __metadata: languageName: node linkType: hard +"@tybys/wasm-util@npm:^0.9.0": + version: 0.9.0 + resolution: "@tybys/wasm-util@npm:0.9.0" + dependencies: + tslib: "npm:^2.4.0" + checksum: 10c0/f9fde5c554455019f33af6c8215f1a1435028803dc2a2825b077d812bed4209a1a64444a4ca0ce2ea7e1175c8d88e2f9173a36a33c199e8a5c671aa31de8242d + languageName: node + linkType: hard + "@types/mute-stream@npm:^0.0.4": version: 0.0.4 resolution: "@types/mute-stream@npm:0.0.4" @@ -1569,13 +1590,6 @@ __metadata: languageName: node linkType: hard -"buffer-from@npm:^1.0.0": - version: 1.1.2 - resolution: "buffer-from@npm:1.1.2" - checksum: 10c0/124fff9d66d691a86d3b062eff4663fe437a9d9ee4b47b1b9e97f5a5d14f6d5399345db80f796827be7c95e70a8e765dd404b7c3ff3b3324f98e9b0c8826cc34 - languageName: node - linkType: hard - "cacache@npm:^18.0.0": version: 18.0.2 resolution: "cacache@npm:18.0.2" @@ -3189,13 +3203,6 @@ __metadata: languageName: node linkType: hard -"pirates@npm:^4.0.6": - version: 4.0.6 - resolution: "pirates@npm:4.0.6" - checksum: 10c0/00d5fa51f8dded94d7429700fb91a0c1ead00ae2c7fd27089f0c5b63e6eca36197fe46384631872690a66f390c5e27198e99006ab77ae472692ab9c2ca903f36 - languageName: node - linkType: hard - "plur@npm:^5.1.0": version: 5.1.0 resolution: "plur@npm:5.1.0" @@ -3511,23 +3518,6 @@ __metadata: languageName: node linkType: hard -"source-map-support@npm:^0.5.21": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" - dependencies: - buffer-from: "npm:^1.0.0" - source-map: "npm:^0.6.0" - checksum: 10c0/9ee09942f415e0f721d6daad3917ec1516af746a8120bba7bb56278707a37f1eb8642bde456e98454b8a885023af81a16e646869975f06afc1a711fb90484e7d - languageName: node - linkType: hard - -"source-map@npm:^0.6.0": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 - languageName: node - linkType: hard - "sprintf-js@npm:^1.1.3": version: 1.1.3 resolution: "sprintf-js@npm:1.1.3" @@ -3727,7 +3717,7 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^2.1.0, tslib@npm:^2.4.0, tslib@npm:^2.6.2": +"tslib@npm:^2.1.0, tslib@npm:^2.4.0": version: 2.6.2 resolution: "tslib@npm:2.6.2" checksum: 10c0/e03a8a4271152c8b26604ed45535954c0a45296e32445b4b87f8a5abdb2421f40b59b4ca437c4346af0f28179780d604094eb64546bee2019d903d01c6c19bdb