Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 070e9612c8 | |||
| 518b0cbfa5 |
@@ -8,8 +8,12 @@ on:
|
||||
branches:
|
||||
- "**"
|
||||
|
||||
concurrency:
|
||||
group: ci-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
|
||||
NX_CLOUD_ACCESS_TOKEN: OWViNjcxNmUtYzRmNC00YzBjLWFhNGEtNzc0OTYxZDYwNmEwfHJlYWQtd3JpdGU=
|
||||
|
||||
jobs:
|
||||
main-linux:
|
||||
@@ -160,3 +164,42 @@ jobs:
|
||||
else
|
||||
echo "Skip E2E tests for macOS as there are no changes in React Native projects."
|
||||
fi
|
||||
|
||||
benchmarks:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Fetch Master
|
||||
run: git fetch origin master:master
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
|
||||
- name: Set SHAs
|
||||
uses: nrwl/nx-set-shas@v4
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y ca-certificates lsof libvips-dev libglib2.0-dev libgirepository1.0-dev
|
||||
|
||||
- uses: pnpm/action-setup@v4
|
||||
name: Install pnpm
|
||||
with:
|
||||
version: 9.8.0
|
||||
run_install: false
|
||||
|
||||
- name: Install project dependencies
|
||||
run: |
|
||||
pnpm install --frozen-lockfile
|
||||
|
||||
- name: Install Rust
|
||||
uses: dtolnay/rust-toolchain@stable
|
||||
|
||||
- name: Run benchmarks
|
||||
uses: CodSpeedHQ/action@v3
|
||||
with:
|
||||
run: "pnpm exec nx run-many -t benchmark"
|
||||
token: ${{ secrets.CODSPEED_TOKEN }}
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"name": "e2e-benchmarks",
|
||||
"targets": {
|
||||
"benchmark": {
|
||||
"command": "vitest bench",
|
||||
"options": {
|
||||
"cwd": "{projectRoot}",
|
||||
"args": ["--watch=false"]
|
||||
},
|
||||
"configurations": {
|
||||
"watch": {
|
||||
"args": ["--watch=true"]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
import { execSync } from 'node:child_process';
|
||||
import { rmSync } from 'node:fs';
|
||||
import { tmpdir } from 'node:os';
|
||||
import { join } from 'node:path';
|
||||
import { bench, beforeAll, describe } from 'vitest';
|
||||
|
||||
describe('large-incremental-repo', () => {
|
||||
const workspaceRoot = join(tmpdir(), 'nx-benchmark-large-incremental-repo');
|
||||
|
||||
beforeAll(() => {
|
||||
rmSync(workspaceRoot, { recursive: true, force: true });
|
||||
execSync(
|
||||
`git clone https://github.com/vsavkin/large-monorepo ${workspaceRoot}`
|
||||
);
|
||||
execSync('npm i', { cwd: workspaceRoot });
|
||||
execSync('npx nx migrate latest', { cwd: workspaceRoot });
|
||||
execSync('npx nx migrate --run-migrations --if-exists', {
|
||||
cwd: workspaceRoot,
|
||||
});
|
||||
});
|
||||
|
||||
describe('graph compute', () => {
|
||||
describe('cold', () => {
|
||||
bench(
|
||||
'daemon=false',
|
||||
() => {
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'false',
|
||||
},
|
||||
});
|
||||
},
|
||||
{
|
||||
setup: () => {
|
||||
execSync('npx nx reset', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'false',
|
||||
},
|
||||
});
|
||||
},
|
||||
}
|
||||
);
|
||||
|
||||
bench(
|
||||
'daemon=true',
|
||||
() => {
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'true',
|
||||
},
|
||||
});
|
||||
},
|
||||
{
|
||||
setup: () => {
|
||||
execSync('npx nx reset', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'true',
|
||||
},
|
||||
});
|
||||
},
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
describe('warm', () => {
|
||||
/**
|
||||
* Warms up the graph cache and daemon
|
||||
*/
|
||||
beforeAll(() => {
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'false',
|
||||
},
|
||||
});
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'true',
|
||||
},
|
||||
});
|
||||
}, 60_000); // 1 minute
|
||||
|
||||
bench('daemon=false', () => {
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'false',
|
||||
},
|
||||
});
|
||||
});
|
||||
|
||||
bench('daemon=true', () => {
|
||||
execSync('npx nx show projects', {
|
||||
cwd: workspaceRoot,
|
||||
env: {
|
||||
...process.env,
|
||||
NX_DAEMON: 'true',
|
||||
},
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../../dist/out-tsc",
|
||||
"module": "commonjs",
|
||||
"types": ["vitest", "node"]
|
||||
},
|
||||
"include": ["**/*.bench.ts", "**/*.d.ts", "jest.config.ts"]
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"types": ["node", "vitest"]
|
||||
},
|
||||
"include": [],
|
||||
"files": [],
|
||||
"references": [
|
||||
{
|
||||
"path": "./tsconfig.bench.json"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
import { defineConfig } from 'vitest/config';
|
||||
import codspeedPlugin from '@codspeed/vitest-plugin';
|
||||
import { join } from 'node:path';
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [codspeedPlugin()],
|
||||
test: {
|
||||
globals: true,
|
||||
environment: 'node',
|
||||
globalSetup: ['../utils/benchmark-setup.ts'],
|
||||
hookTimeout: 60 * 60 * 1000, // 1 hour
|
||||
},
|
||||
benchmark: {},
|
||||
} as any);
|
||||
@@ -0,0 +1,72 @@
|
||||
// This is exported from /jest/, but doesn't rely on jest itself.
|
||||
import { startLocalRegistry } from '@nx/js/plugins/jest/local-registry';
|
||||
import { existsSync, removeSync } from 'fs-extra';
|
||||
import * as isCI from 'is-ci';
|
||||
import { exec } from 'node:child_process';
|
||||
import { join } from 'node:path';
|
||||
import { registerTsConfigPaths } from '../../packages/nx/src/plugins/js/utils/register';
|
||||
import { runLocalRelease } from '../../scripts/local-registry/populate-storage';
|
||||
|
||||
let teardownFn: (() => void) | undefined;
|
||||
|
||||
export async function setup() {
|
||||
try {
|
||||
const isVerbose: boolean = process.env.NX_VERBOSE_LOGGING === 'true';
|
||||
|
||||
teardownFn = await startLocalRegistry({
|
||||
localRegistryTarget: '@nx/nx-source:local-registry',
|
||||
verbose: isVerbose,
|
||||
clearStorage: true,
|
||||
});
|
||||
|
||||
/**
|
||||
* Set the published version based on what has previously been loaded into the
|
||||
* verdaccio storage.
|
||||
*/
|
||||
const publishedVersion = await getPublishedVersion();
|
||||
if (publishedVersion) {
|
||||
process.env.PUBLISHED_VERSION = publishedVersion;
|
||||
}
|
||||
|
||||
if (process.env.NX_E2E_SKIP_CLEANUP !== 'true' || !existsSync('./build')) {
|
||||
if (!isCI) {
|
||||
registerTsConfigPaths(join(__dirname, '../../tsconfig.base.json'));
|
||||
const { e2eCwd } = await import('./get-env-info');
|
||||
removeSync(e2eCwd);
|
||||
}
|
||||
console.log('Publishing packages to local registry');
|
||||
const publishVersion = process.env.PUBLISHED_VERSION ?? 'major';
|
||||
// Always show full release logs on CI, they should only happen once via e2e-ci
|
||||
await runLocalRelease(publishVersion, isCI || isVerbose);
|
||||
}
|
||||
} catch (err) {
|
||||
// Clean up registry if possible after setup related errors
|
||||
if (typeof teardownFn === 'function') {
|
||||
teardownFn();
|
||||
console.log('Killed local registry process due to an error during setup');
|
||||
}
|
||||
throw err;
|
||||
}
|
||||
}
|
||||
|
||||
export function teardown() {
|
||||
teardownFn();
|
||||
}
|
||||
|
||||
function getPublishedVersion(): Promise<string | undefined> {
|
||||
return new Promise((resolve) => {
|
||||
// Resolve the published nx version from verdaccio
|
||||
exec(
|
||||
'npm view nx@latest version',
|
||||
{
|
||||
windowsHide: false,
|
||||
},
|
||||
(error, stdout, stderr) => {
|
||||
if (error) {
|
||||
return resolve(undefined);
|
||||
}
|
||||
return resolve(stdout.trim());
|
||||
}
|
||||
);
|
||||
});
|
||||
}
|
||||
@@ -242,7 +242,6 @@
|
||||
},
|
||||
"@nx/powerpack-enterprise-cloud"
|
||||
],
|
||||
"nxCloudId": "62d013ea0852fe0a2df74438",
|
||||
"nxCloudUrl": "https://staging.nx.app",
|
||||
"parallel": 1,
|
||||
"bust": 5,
|
||||
@@ -371,5 +370,6 @@
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"nxCloudId": "67cf575fb94d810c00034323"
|
||||
}
|
||||
|
||||
+10
-1
@@ -46,6 +46,8 @@
|
||||
"@babel/preset-react": "^7.22.5",
|
||||
"@babel/preset-typescript": "^7.22.5",
|
||||
"@babel/runtime": "^7.22.6",
|
||||
"@codspeed/tinybench-plugin": "^4.0.0",
|
||||
"@codspeed/vitest-plugin": "^4.0.0",
|
||||
"@eslint/compat": "^1.1.1",
|
||||
"@eslint/eslintrc": "^2.1.1",
|
||||
"@eslint/js": "^8.48.0",
|
||||
@@ -377,6 +379,7 @@
|
||||
"tailwind-merge": "^2.4.0",
|
||||
"tailwindcss": "3.4.4",
|
||||
"three": "^0.166.1",
|
||||
"tinybench": "^2.9.0",
|
||||
"tslib": "^2.3.0",
|
||||
"webpack-cli": "^5.1.4"
|
||||
},
|
||||
@@ -395,5 +398,11 @@
|
||||
"check-codeowners"
|
||||
]
|
||||
},
|
||||
"packageManager": "pnpm@9.8.0"
|
||||
"packageManager": "pnpm@9.8.0",
|
||||
"pnpm": {
|
||||
"overrides": {
|
||||
"vite": "6.2.0",
|
||||
"vitest": "3.0.5"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,6 +115,7 @@
|
||||
"@nestjs/cli", // nx init nest makes use of nestjs cli (which should be available in NestJS CLI app) to parse the nest-cli.json file
|
||||
"ts-node", // We *may* fall back on ts-node, but we want to encourage the use of @swc-node instead so we don't explicitly list ts-node as an optional dep
|
||||
"memfs", // used in mock for handling .node files in tests
|
||||
"tinybench", // used in benchmarks
|
||||
"events", // This is coming from @storybook/builder-manager since it uses the browser polyfill
|
||||
"process", // This is coming from @storybook/builder-manager since it uses the browser polyfill
|
||||
"prettier", // This is coming from @storybook/builder-manager since it uses the browser polyfill
|
||||
|
||||
@@ -105,6 +105,14 @@
|
||||
"echo": {
|
||||
"command": "echo hi"
|
||||
},
|
||||
"benchmark": {
|
||||
"command": "node -r ts-node/register --hash-seed=1 --random-seed=1 --no-opt --predictable --predictable-gc-schedule --interpreted-frames-native-stack --allow-natives-syntax --expose-gc --no-concurrent-sweeping ./tools/tinybench-runner {projectRoot}",
|
||||
"options": {
|
||||
"env": {
|
||||
"TS_NODE_PROJECT": "./tools/tinybench-runner/tsconfig.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"build": {
|
||||
"dependsOn": ["^build-client", "build-base", "build-native"],
|
||||
"inputs": [
|
||||
|
||||
@@ -0,0 +1,63 @@
|
||||
import type { Bench } from 'tinybench';
|
||||
|
||||
import { projectsToRun } from './run-many';
|
||||
import { ProjectGraph } from '../../config/project-graph';
|
||||
|
||||
let projectGraph: ProjectGraph = {
|
||||
nodes: {
|
||||
proj1: {
|
||||
name: 'proj1',
|
||||
type: 'lib',
|
||||
data: {
|
||||
root: 'proj1',
|
||||
tags: ['api', 'theme1'],
|
||||
targets: {
|
||||
build: {},
|
||||
test: {},
|
||||
},
|
||||
},
|
||||
},
|
||||
proj2: {
|
||||
name: 'proj2',
|
||||
type: 'lib',
|
||||
data: {
|
||||
root: 'proj2',
|
||||
tags: ['ui', 'theme2'],
|
||||
targets: {
|
||||
test: {},
|
||||
},
|
||||
},
|
||||
},
|
||||
} as any,
|
||||
dependencies: {},
|
||||
};
|
||||
|
||||
for (let i = 0; i < 1000000; i++) {
|
||||
projectGraph.nodes['proj' + i] = {
|
||||
name: 'proj' + i,
|
||||
type: 'lib',
|
||||
data: {
|
||||
root: 'proj' + i,
|
||||
targets: {
|
||||
test: {},
|
||||
},
|
||||
} as any,
|
||||
};
|
||||
}
|
||||
|
||||
export function registerBenchmarks(bench: Bench) {
|
||||
return bench.add(
|
||||
'should be able to select and exclude via patterns',
|
||||
async () => {
|
||||
projectsToRun(
|
||||
{
|
||||
targets: ['test'],
|
||||
projects: ['proj1*'],
|
||||
exclude: ['proj12*'],
|
||||
},
|
||||
projectGraph
|
||||
);
|
||||
},
|
||||
{}
|
||||
);
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
{
|
||||
"extends": "./tsconfig.json",
|
||||
"compilerOptions": {
|
||||
"module": "CommonJS",
|
||||
"outDir": "../../dist/out-tsc",
|
||||
"declaration": true,
|
||||
"types": ["node"]
|
||||
},
|
||||
"exclude": [
|
||||
"**/*.spec.ts",
|
||||
"**/*_spec.ts",
|
||||
"jest.config.ts",
|
||||
"**/__fixtures__/**/*.*",
|
||||
"./src/internal-testing-utils/**/*.ts"
|
||||
],
|
||||
"include": ["**/*.benchmark.ts"]
|
||||
}
|
||||
@@ -11,7 +11,8 @@
|
||||
"**/*_spec.ts",
|
||||
"jest.config.ts",
|
||||
"**/__fixtures__/**/*.*",
|
||||
"./src/internal-testing-utils/**/*.ts"
|
||||
"./src/internal-testing-utils/**/*.ts",
|
||||
"**/*.benchmark.ts"
|
||||
],
|
||||
"include": ["**/*.ts"]
|
||||
}
|
||||
|
||||
Generated
+137
-149
@@ -7,6 +7,8 @@ settings:
|
||||
overrides:
|
||||
minimist: ^1.2.6
|
||||
underscore: ^1.12.1
|
||||
vite: 6.2.0
|
||||
vitest: 3.0.5
|
||||
|
||||
importers:
|
||||
|
||||
@@ -156,6 +158,9 @@ importers:
|
||||
three:
|
||||
specifier: ^0.166.1
|
||||
version: 0.166.1
|
||||
tinybench:
|
||||
specifier: ^2.9.0
|
||||
version: 2.9.0
|
||||
tslib:
|
||||
specifier: ^2.3.0
|
||||
version: 2.7.0
|
||||
@@ -223,6 +228,12 @@ importers:
|
||||
'@babel/runtime':
|
||||
specifier: ^7.22.6
|
||||
version: 7.25.6
|
||||
'@codspeed/tinybench-plugin':
|
||||
specifier: ^4.0.0
|
||||
version: 4.0.0(tinybench@2.9.0)
|
||||
'@codspeed/vitest-plugin':
|
||||
specifier: ^4.0.0
|
||||
version: 4.0.0(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))
|
||||
'@eslint/compat':
|
||||
specifier: ^1.1.1
|
||||
version: 1.1.1
|
||||
@@ -372,7 +383,7 @@ importers:
|
||||
version: 1.9.0(react-redux@8.0.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1))(react@18.3.1)
|
||||
'@remix-run/dev':
|
||||
specifier: ^2.14.0
|
||||
version: 2.14.0(@remix-run/react@2.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(bufferutil@4.0.7)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))
|
||||
version: 2.14.0(@remix-run/react@2.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(bufferutil@4.0.7)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(yaml@2.6.1)
|
||||
'@remix-run/node':
|
||||
specifier: ^2.14.0
|
||||
version: 2.14.0(typescript@5.7.3)
|
||||
@@ -843,7 +854,7 @@ importers:
|
||||
version: 11.0.1
|
||||
nuxt:
|
||||
specifier: ^3.10.0
|
||||
version: 3.13.2(@azure/identity@4.5.0)(@azure/storage-blob@12.25.0)(@parcel/watcher@2.4.1)(@types/node@20.16.10)(bufferutil@4.0.7)(encoding@0.1.13)(eslint@8.57.0)(ioredis@5.4.1)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)
|
||||
version: 3.13.2(@azure/identity@4.5.0)(@azure/storage-blob@12.25.0)(@parcel/watcher@2.4.1)(@types/node@20.16.10)(bufferutil@4.0.7)(encoding@0.1.13)(eslint@8.57.0)(ioredis@5.4.1)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)(yaml@2.6.1)
|
||||
nx:
|
||||
specifier: 20.5.0-rc.4
|
||||
version: 20.5.0-rc.4(@swc-node/register@1.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@swc/types@0.1.12)(typescript@5.7.3))(@swc/core@1.5.7(@swc/helpers@0.5.11))
|
||||
@@ -2615,6 +2626,20 @@ packages:
|
||||
resolution: {integrity: sha512-YLPHc8yASwjNkmcDMQMY35yiWjoKAKnhUbPRszBRS0YgH+IXtsMp61j+yTcnCE3oO2DgP0U3iejLC8FTtKDC8Q==}
|
||||
engines: {node: '>=16.13'}
|
||||
|
||||
'@codspeed/core@4.0.0':
|
||||
resolution: {integrity: sha512-B3zwdwLG8rcV0ORfYKX1wDP6ZCWf9C6ySidSf61q2vm9v5Lj2cWwRvj7vX+w/UyFHWKjp/zSyWTEed/r3Fv4Tg==}
|
||||
|
||||
'@codspeed/tinybench-plugin@4.0.0':
|
||||
resolution: {integrity: sha512-h31pWeN1yrxAnkL5UYyBLTt0abrWFbdEIFzuO11lGqYp6BQn8OitaJFsDWo5SAk5od+hb/tKTtjGpDm5UnQ5Sw==}
|
||||
peerDependencies:
|
||||
tinybench: ^2.3.0
|
||||
|
||||
'@codspeed/vitest-plugin@4.0.0':
|
||||
resolution: {integrity: sha512-L7oCOuVL2xI1/z+HLt56+7Xs/MGzbaf5aaOys6vOMDAs1PmxbmyAz6g1Y0x1TrP1+dvR9LUZQCKM/CsXHCrNxg==}
|
||||
peerDependencies:
|
||||
vite: 6.2.0
|
||||
vitest: 3.0.5
|
||||
|
||||
'@colors/colors@1.5.0':
|
||||
resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==}
|
||||
engines: {node: '>=0.1.90'}
|
||||
@@ -4173,7 +4198,7 @@ packages:
|
||||
resolution: {integrity: sha512-feQ+ntr+8hbVudnsTUapiMN9q8T90XA1d5jn9QzY09sNoj4iD9wi0PY1vsBFTda4ZjEaxRK9S81oarR2nj7TFQ==}
|
||||
peerDependencies:
|
||||
typescript: '>= 4.3.x'
|
||||
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
|
||||
vite: 6.2.0
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
@@ -5340,7 +5365,7 @@ packages:
|
||||
'@nuxt/devtools-kit@1.4.2':
|
||||
resolution: {integrity: sha512-8a5PhVnC7E94318/sHbNSe9mI2MlsQ8+pJLGs2Hh1OJyidB9SWe6hoFc8q4K9VOtXak9uCFVb5V2JGXS1q+1aA==}
|
||||
peerDependencies:
|
||||
vite: '*'
|
||||
vite: 6.2.0
|
||||
|
||||
'@nuxt/devtools-wizard@1.4.2':
|
||||
resolution: {integrity: sha512-TyhmPBg/xJKPOdnwR3DAh8KMUt6/0dUNABCxGVeY7PYbIiXt4msIGVJkBc4y+WwIJHOYPrSRClmZVsXQfRlB4A==}
|
||||
@@ -5350,7 +5375,7 @@ packages:
|
||||
resolution: {integrity: sha512-Ok3g2P7iwKyK8LiwozbYVAZTo8t91iXSmlJj2ozeo1okKQ2Qi1AtwB6nYgIlkUHZmo155ZjG/LCHYI5uhQ/sGw==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
vite: '*'
|
||||
vite: 6.2.0
|
||||
|
||||
'@nuxt/kit@3.13.2':
|
||||
resolution: {integrity: sha512-KvRw21zU//wdz25IeE1E5m/aFSzhJloBRAQtv+evcFeZvuroIxpIQuUqhbzuwznaUwpiWbmwlcsp5uOWmi4vwA==}
|
||||
@@ -5614,8 +5639,8 @@ packages:
|
||||
'@nx/vite@20.5.0-rc.4':
|
||||
resolution: {integrity: sha512-LiqiwTn8Ndqh1EUIuaECGaGYsZBv281RrBAHqsxujQt1F/J6LOmhK0wANaG1abTVMhZhXM78Eq0aH+yicQluBQ==}
|
||||
peerDependencies:
|
||||
vite: ^5.0.0 || ^6.0.0
|
||||
vitest: ^1.3.1 || ^2.0.0 || ^3.0.0
|
||||
vite: 6.2.0
|
||||
vitest: 3.0.5
|
||||
|
||||
'@nx/web@20.5.0-rc.4':
|
||||
resolution: {integrity: sha512-ZjcCZ53XVchNAWf2ZIOBB88KF/Aksapf699lz55ExWjSCj/hX1QNyGUfj0A4AOeFHmzvoFaKjlatJpIt3BieXg==}
|
||||
@@ -6192,7 +6217,7 @@ packages:
|
||||
'@remix-run/react': ^2.14.0
|
||||
'@remix-run/serve': ^2.14.0
|
||||
typescript: ^5.1.0
|
||||
vite: ^5.1.0
|
||||
vite: 6.2.0
|
||||
wrangler: ^3.28.2
|
||||
peerDependenciesMeta:
|
||||
'@remix-run/serve':
|
||||
@@ -6912,7 +6937,7 @@ packages:
|
||||
resolution: {integrity: sha512-PyJsaEPyuRFFEplpNUi+nbuJd7d1DC2dAZjpsaHTXyqg5iPIbkIgsbCJLUDeIXnUDqM/utjmMpN0sQKJuhIc6w==}
|
||||
peerDependencies:
|
||||
storybook: ^8.4.6
|
||||
vite: ^4.0.0 || ^5.0.0 || ^6.0.0
|
||||
vite: 6.2.0
|
||||
|
||||
'@storybook/builder-webpack5@8.4.6':
|
||||
resolution: {integrity: sha512-/ZInCFk2myJZinnAU05bATe+9iJn3+YRoxl+CUpYljxzsjoqb7iAwaNaMNolZCDOnMj24Kg2Pt87WtzAhu+ilw==}
|
||||
@@ -7029,7 +7054,7 @@ packages:
|
||||
react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
|
||||
react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta
|
||||
storybook: ^8.4.6
|
||||
vite: ^4.0.0 || ^5.0.0 || ^6.0.0
|
||||
vite: 6.2.0
|
||||
|
||||
'@storybook/react-webpack5@8.4.6':
|
||||
resolution: {integrity: sha512-qUCOUoYW09voRhk0PzEZpZz6F5Ek9aHvVto8KW3lyYEuk6qujqUTNO6Y/X7hMraVt/C3l0+Ds4D5LEmxNBvd8g==}
|
||||
@@ -7983,20 +8008,20 @@ packages:
|
||||
resolution: {integrity: sha512-mkQnxTkcldAzIsomk1UuLfAu9n+kpQ3JbHcpCp7d2Oo6ITtji8pHS3QToOWjhPFvNQSnhlkAjmGbhv2QvwO/7Q==}
|
||||
engines: {node: '>=14.21.3'}
|
||||
peerDependencies:
|
||||
vite: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
|
||||
vite: 6.2.0
|
||||
|
||||
'@vitejs/plugin-vue-jsx@4.0.1':
|
||||
resolution: {integrity: sha512-7mg9HFGnFHMEwCdB6AY83cVK4A6sCqnrjFYF4WIlebYAQVVJ/sC/CiTruVdrRlhrFoeZ8rlMxY9wYpPTIRhhAg==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
peerDependencies:
|
||||
vite: ^5.0.0
|
||||
vite: 6.2.0
|
||||
vue: ^3.0.0
|
||||
|
||||
'@vitejs/plugin-vue@5.1.4':
|
||||
resolution: {integrity: sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
peerDependencies:
|
||||
vite: ^5.0.0
|
||||
vite: 6.2.0
|
||||
vue: ^3.2.25
|
||||
|
||||
'@vitest/expect@2.0.5':
|
||||
@@ -8009,7 +8034,7 @@ packages:
|
||||
resolution: {integrity: sha512-CLPNBFBIE7x6aEGbIjaQAX03ZZlBMaWwAjBdMkIf/cAn6xzLTiM3zYqO/WAbieEjsAZir6tO71mzeHZoodThvw==}
|
||||
peerDependencies:
|
||||
msw: ^2.4.9
|
||||
vite: ^5.0.0 || ^6.0.0
|
||||
vite: 6.2.0
|
||||
peerDependenciesMeta:
|
||||
msw:
|
||||
optional: true
|
||||
@@ -16349,6 +16374,10 @@ packages:
|
||||
stable@0.1.8:
|
||||
resolution: {integrity: sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==}
|
||||
|
||||
stack-trace@1.0.0-pre2:
|
||||
resolution: {integrity: sha512-2ztBJRek8IVofG9DBJqdy2N5kulaacX30Nz7xmkYF6ale9WBVmIy6mFBchvGX7Vx/MyjBhx+Rcxqrj+dbOnQ6A==}
|
||||
engines: {node: '>=16'}
|
||||
|
||||
stack-utils@2.0.6:
|
||||
resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==}
|
||||
engines: {node: '>=10'}
|
||||
@@ -17592,7 +17621,7 @@ packages:
|
||||
vite-hot-client@0.2.3:
|
||||
resolution: {integrity: sha512-rOGAV7rUlUHX89fP2p2v0A2WWvV3QMX2UYq0fRqsWSvFvev4atHWqjwGoKaZT1VTKyLGk533ecu3eyd0o59CAg==}
|
||||
peerDependencies:
|
||||
vite: ^2.6.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-0
|
||||
vite: 6.2.0
|
||||
|
||||
vite-node@1.6.0:
|
||||
resolution: {integrity: sha512-de6HJgzC+TFzOu0NTC4RAIsyf/DY/ibWDYQUcuEA84EMHhcefTUGkjFHKKEJhQN4A+6I0u++kr3l36ZF2d7XRw==}
|
||||
@@ -17619,7 +17648,7 @@ packages:
|
||||
optionator: ^0.9.1
|
||||
stylelint: '>=13'
|
||||
typescript: '*'
|
||||
vite: '>=2.0.0'
|
||||
vite: 6.2.0
|
||||
vls: '*'
|
||||
vti: '*'
|
||||
vue-tsc: ~2.1.6
|
||||
@@ -17648,7 +17677,7 @@ packages:
|
||||
engines: {node: '>=14'}
|
||||
peerDependencies:
|
||||
'@nuxt/kit': '*'
|
||||
vite: ^3.1.0 || ^4.0.0 || ^5.0.0-0
|
||||
vite: 6.2.0
|
||||
peerDependenciesMeta:
|
||||
'@nuxt/kit':
|
||||
optional: true
|
||||
@@ -17656,78 +17685,7 @@ packages:
|
||||
vite-plugin-vue-inspector@5.2.0:
|
||||
resolution: {integrity: sha512-wWxyb9XAtaIvV/Lr7cqB1HIzmHZFVUJsTNm3yAxkS87dgh/Ky4qr2wDEWNxF23fdhVa3jQ8MZREpr4XyiuaRqA==}
|
||||
peerDependencies:
|
||||
vite: ^3.0.0-0 || ^4.0.0-0 || ^5.0.0-0
|
||||
|
||||
vite@5.4.11:
|
||||
resolution: {integrity: sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==}
|
||||
engines: {node: ^18.0.0 || >=20.0.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@types/node': ^18.0.0 || >=20.0.0
|
||||
less: '*'
|
||||
lightningcss: ^1.21.0
|
||||
sass: '*'
|
||||
sass-embedded: '*'
|
||||
stylus: '*'
|
||||
sugarss: '*'
|
||||
terser: ^5.4.0
|
||||
peerDependenciesMeta:
|
||||
'@types/node':
|
||||
optional: true
|
||||
less:
|
||||
optional: true
|
||||
lightningcss:
|
||||
optional: true
|
||||
sass:
|
||||
optional: true
|
||||
sass-embedded:
|
||||
optional: true
|
||||
stylus:
|
||||
optional: true
|
||||
sugarss:
|
||||
optional: true
|
||||
terser:
|
||||
optional: true
|
||||
|
||||
vite@6.1.0:
|
||||
resolution: {integrity: sha512-RjjMipCKVoR4hVfPY6GQTgveinjNuyLw+qruksLDvA5ktI1150VmcMBKmQaEWJhg/j6Uaf6dNCNA0AfdzUb/hQ==}
|
||||
engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
'@types/node': ^18.0.0 || ^20.0.0 || >=22.0.0
|
||||
jiti: '>=1.21.0'
|
||||
less: '*'
|
||||
lightningcss: ^1.21.0
|
||||
sass: '*'
|
||||
sass-embedded: '*'
|
||||
stylus: '*'
|
||||
sugarss: '*'
|
||||
terser: ^5.16.0
|
||||
tsx: ^4.8.1
|
||||
yaml: ^2.4.2
|
||||
peerDependenciesMeta:
|
||||
'@types/node':
|
||||
optional: true
|
||||
jiti:
|
||||
optional: true
|
||||
less:
|
||||
optional: true
|
||||
lightningcss:
|
||||
optional: true
|
||||
sass:
|
||||
optional: true
|
||||
sass-embedded:
|
||||
optional: true
|
||||
stylus:
|
||||
optional: true
|
||||
sugarss:
|
||||
optional: true
|
||||
terser:
|
||||
optional: true
|
||||
tsx:
|
||||
optional: true
|
||||
yaml:
|
||||
optional: true
|
||||
vite: 6.2.0
|
||||
|
||||
vite@6.2.0:
|
||||
resolution: {integrity: sha512-7dPxoo+WsT/64rDcwoOjk76XHj+TqNTIvHKcuMQ1k4/SeHDaQt5GFAeLYzrimZrMpn/O6DtdI03WUjdxuPM0oQ==}
|
||||
@@ -18668,7 +18626,7 @@ snapshots:
|
||||
'@babel/helper-split-export-declaration': 7.24.7
|
||||
'@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.9)
|
||||
'@inquirer/confirm': 5.1.6(@types/node@20.16.10)
|
||||
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.1.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))
|
||||
'@vitejs/plugin-basic-ssl': 1.2.0(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))
|
||||
beasties: 0.2.0
|
||||
browserslist: 4.24.4
|
||||
esbuild: 0.25.0
|
||||
@@ -18686,7 +18644,7 @@ snapshots:
|
||||
semver: 7.7.1
|
||||
source-map-support: 0.5.21
|
||||
typescript: 5.7.3
|
||||
vite: 6.1.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
watchpack: 2.4.2
|
||||
optionalDependencies:
|
||||
less: 4.2.2
|
||||
@@ -20847,6 +20805,31 @@ snapshots:
|
||||
dependencies:
|
||||
mime: 3.0.0
|
||||
|
||||
'@codspeed/core@4.0.0':
|
||||
dependencies:
|
||||
axios: 1.7.7
|
||||
find-up: 6.3.0
|
||||
form-data: 4.0.0
|
||||
node-gyp-build: 4.8.2
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
|
||||
'@codspeed/tinybench-plugin@4.0.0(tinybench@2.9.0)':
|
||||
dependencies:
|
||||
'@codspeed/core': 4.0.0
|
||||
stack-trace: 1.0.0-pre2
|
||||
tinybench: 2.9.0
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
|
||||
'@codspeed/vitest-plugin@4.0.0(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))':
|
||||
dependencies:
|
||||
'@codspeed/core': 4.0.0
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vitest: 3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
transitivePeerDependencies:
|
||||
- debug
|
||||
|
||||
'@colors/colors@1.5.0':
|
||||
optional: true
|
||||
|
||||
@@ -23336,12 +23319,12 @@ snapshots:
|
||||
- supports-color
|
||||
- webpack-sources
|
||||
|
||||
'@nuxt/vite-builder@3.13.2(@types/node@20.16.10)(eslint@8.57.0)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vue@3.5.6(typescript@5.7.3))(webpack-sources@3.2.3)':
|
||||
'@nuxt/vite-builder@3.13.2(@types/node@20.16.10)(eslint@8.57.0)(jiti@1.21.6)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vue@3.5.6(typescript@5.7.3))(webpack-sources@3.2.3)(yaml@2.6.1)':
|
||||
dependencies:
|
||||
'@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.22.0)(webpack-sources@3.2.3)
|
||||
'@rollup/plugin-replace': 5.0.7(rollup@4.22.0)
|
||||
'@vitejs/plugin-vue': 5.1.4(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))(vue@3.5.6(typescript@5.7.3))
|
||||
'@vitejs/plugin-vue-jsx': 4.0.1(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))(vue@3.5.6(typescript@5.7.3))
|
||||
'@vitejs/plugin-vue': 5.1.4(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vue@3.5.6(typescript@5.7.3))
|
||||
'@vitejs/plugin-vue-jsx': 4.0.1(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vue@3.5.6(typescript@5.7.3))
|
||||
autoprefixer: 10.4.20(postcss@8.5.2)
|
||||
clear: 0.1.0
|
||||
consola: 3.2.3
|
||||
@@ -23367,15 +23350,16 @@ snapshots:
|
||||
ufo: 1.5.4
|
||||
unenv: 1.10.0
|
||||
unplugin: 1.14.1(webpack-sources@3.2.3)
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite-node: 2.1.1(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite-plugin-checker: 0.8.0(eslint@8.57.0)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vite-node: 2.1.1(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vite-plugin-checker: 0.8.0(eslint@8.57.0)(optionator@0.9.4)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))
|
||||
vue: 3.5.6(typescript@5.7.3)
|
||||
vue-bundle-renderer: 2.1.0
|
||||
transitivePeerDependencies:
|
||||
- '@biomejs/biome'
|
||||
- '@types/node'
|
||||
- eslint
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- magicast
|
||||
@@ -23389,12 +23373,14 @@ snapshots:
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- typescript
|
||||
- uWebSockets.js
|
||||
- vls
|
||||
- vti
|
||||
- vue-tsc
|
||||
- webpack-sources
|
||||
- yaml
|
||||
|
||||
'@nuxtjs/opencollective@0.3.2(encoding@0.1.13)':
|
||||
dependencies:
|
||||
@@ -24785,7 +24771,7 @@ snapshots:
|
||||
react: 18.3.1
|
||||
react-redux: 8.0.5(@types/react-dom@18.3.0)(@types/react@18.3.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(redux@4.2.1)
|
||||
|
||||
'@remix-run/dev@2.14.0(@remix-run/react@2.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(bufferutil@4.0.7)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))':
|
||||
'@remix-run/dev@2.14.0(@remix-run/react@2.12.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.7.3))(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(bufferutil@4.0.7)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(ts-node@10.9.1(@swc/core@1.5.7(@swc/helpers@0.5.11))(@types/node@20.16.10)(typescript@5.7.3))(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(yaml@2.6.1)':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.0
|
||||
'@babel/generator': 7.26.2
|
||||
@@ -24802,7 +24788,7 @@ snapshots:
|
||||
'@remix-run/router': 1.21.0
|
||||
'@remix-run/server-runtime': 2.14.0(typescript@5.7.3)
|
||||
'@types/mdx': 2.0.13
|
||||
'@vanilla-extract/integration': 6.5.0(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
'@vanilla-extract/integration': 6.5.0(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
arg: 5.0.2
|
||||
cacache: 17.1.4
|
||||
chalk: 4.1.2
|
||||
@@ -24841,7 +24827,7 @@ snapshots:
|
||||
tar-fs: 2.1.1
|
||||
tsconfig-paths: 4.2.0
|
||||
valibot: 0.41.0(typescript@5.7.3)
|
||||
vite-node: 1.6.0(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite-node: 1.6.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
ws: 7.5.10(bufferutil@4.0.7)
|
||||
optionalDependencies:
|
||||
typescript: 5.7.3
|
||||
@@ -24851,6 +24837,7 @@ snapshots:
|
||||
- babel-plugin-macros
|
||||
- bluebird
|
||||
- bufferutil
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
@@ -24860,7 +24847,9 @@ snapshots:
|
||||
- supports-color
|
||||
- terser
|
||||
- ts-node
|
||||
- tsx
|
||||
- utf-8-validate
|
||||
- yaml
|
||||
|
||||
'@remix-run/node@2.14.0(typescript@5.7.3)':
|
||||
dependencies:
|
||||
@@ -26809,7 +26798,7 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- babel-plugin-macros
|
||||
|
||||
'@vanilla-extract/integration@6.5.0(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)':
|
||||
'@vanilla-extract/integration@6.5.0(@types/node@20.16.10)(babel-plugin-macros@3.1.0)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.0
|
||||
'@babel/plugin-syntax-typescript': 7.25.4(@babel/core@7.26.0)
|
||||
@@ -26822,11 +26811,12 @@ snapshots:
|
||||
lodash: 4.17.21
|
||||
mlly: 1.7.1
|
||||
outdent: 0.8.0
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite-node: 1.6.0(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vite-node: 1.6.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- babel-plugin-macros
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
@@ -26835,6 +26825,8 @@ snapshots:
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
'@vanilla-extract/private@1.0.6': {}
|
||||
|
||||
@@ -27018,27 +27010,27 @@ snapshots:
|
||||
minimatch: 7.4.6
|
||||
semver: 7.6.3
|
||||
|
||||
'@vitejs/plugin-basic-ssl@1.2.0(vite@6.1.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))':
|
||||
dependencies:
|
||||
vite: 6.1.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
|
||||
'@vitejs/plugin-basic-ssl@1.2.0(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))':
|
||||
dependencies:
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
|
||||
'@vitejs/plugin-vue-jsx@4.0.1(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))(vue@3.5.6(typescript@5.7.3))':
|
||||
'@vitejs/plugin-basic-ssl@1.2.0(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))':
|
||||
dependencies:
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
|
||||
'@vitejs/plugin-vue-jsx@4.0.1(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vue@3.5.6(typescript@5.7.3))':
|
||||
dependencies:
|
||||
'@babel/core': 7.26.9
|
||||
'@babel/plugin-transform-typescript': 7.25.2(@babel/core@7.26.9)
|
||||
'@vue/babel-plugin-jsx': 1.2.5(@babel/core@7.26.9)
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vue: 3.5.6(typescript@5.7.3)
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
'@vitejs/plugin-vue@5.1.4(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0))(vue@3.5.6(typescript@5.7.3))':
|
||||
'@vitejs/plugin-vue@5.1.4(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vue@3.5.6(typescript@5.7.3))':
|
||||
dependencies:
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vue: 3.5.6(typescript@5.7.3)
|
||||
|
||||
'@vitest/expect@2.0.5':
|
||||
@@ -34598,14 +34590,14 @@ snapshots:
|
||||
optionalDependencies:
|
||||
fsevents: 2.3.3
|
||||
|
||||
nuxt@3.13.2(@azure/identity@4.5.0)(@azure/storage-blob@12.25.0)(@parcel/watcher@2.4.1)(@types/node@20.16.10)(bufferutil@4.0.7)(encoding@0.1.13)(eslint@8.57.0)(ioredis@5.4.1)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3):
|
||||
nuxt@3.13.2(@azure/identity@4.5.0)(@azure/storage-blob@12.25.0)(@parcel/watcher@2.4.1)(@types/node@20.16.10)(bufferutil@4.0.7)(encoding@0.1.13)(eslint@8.57.0)(ioredis@5.4.1)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(webpack-sources@3.2.3)(yaml@2.6.1):
|
||||
dependencies:
|
||||
'@nuxt/devalue': 2.0.2
|
||||
'@nuxt/devtools': 1.4.2(bufferutil@4.0.7)(rollup@4.22.0)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1))(vue@3.5.6(typescript@5.7.3))(webpack-sources@3.2.3)
|
||||
'@nuxt/kit': 3.13.2(magicast@0.3.5)(rollup@4.22.0)(webpack-sources@3.2.3)
|
||||
'@nuxt/schema': 3.13.2(rollup@4.22.0)(webpack-sources@3.2.3)
|
||||
'@nuxt/telemetry': 2.6.0(magicast@0.3.5)(rollup@4.22.0)(webpack-sources@3.2.3)
|
||||
'@nuxt/vite-builder': 3.13.2(@types/node@20.16.10)(eslint@8.57.0)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vue@3.5.6(typescript@5.7.3))(webpack-sources@3.2.3)
|
||||
'@nuxt/vite-builder': 3.13.2(@types/node@20.16.10)(eslint@8.57.0)(jiti@1.21.6)(less@4.1.3)(magicast@0.3.5)(optionator@0.9.4)(rollup@4.22.0)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(typescript@5.7.3)(vue@3.5.6(typescript@5.7.3))(webpack-sources@3.2.3)(yaml@2.6.1)
|
||||
'@unhead/dom': 1.11.6
|
||||
'@unhead/shared': 1.11.6
|
||||
'@unhead/ssr': 1.11.6
|
||||
@@ -34701,6 +34693,7 @@ snapshots:
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- typescript
|
||||
- uWebSockets.js
|
||||
- utf-8-validate
|
||||
@@ -34710,6 +34703,7 @@ snapshots:
|
||||
- vue-tsc
|
||||
- webpack-sources
|
||||
- xml2js
|
||||
- yaml
|
||||
|
||||
nwsapi@2.2.12: {}
|
||||
|
||||
@@ -37553,6 +37547,8 @@ snapshots:
|
||||
|
||||
stable@0.1.8: {}
|
||||
|
||||
stack-trace@1.0.0-pre2: {}
|
||||
|
||||
stack-utils@2.0.6:
|
||||
dependencies:
|
||||
escape-string-regexp: 2.0.0
|
||||
@@ -38972,15 +38968,16 @@ snapshots:
|
||||
dependencies:
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
|
||||
vite-node@1.6.0(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0):
|
||||
vite-node@1.6.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.3.7(supports-color@8.1.1)
|
||||
pathe: 1.1.2
|
||||
picocolors: 1.1.1
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
@@ -38989,15 +38986,18 @@ snapshots:
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
vite-node@2.1.1(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0):
|
||||
vite-node@2.1.1(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
cac: 6.7.14
|
||||
debug: 4.4.0
|
||||
pathe: 1.1.2
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
transitivePeerDependencies:
|
||||
- '@types/node'
|
||||
- jiti
|
||||
- less
|
||||
- lightningcss
|
||||
- sass
|
||||
@@ -39006,6 +39006,8 @@ snapshots:
|
||||
- sugarss
|
||||
- supports-color
|
||||
- terser
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
vite-node@3.0.5(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
@@ -39028,7 +39030,7 @@ snapshots:
|
||||
- tsx
|
||||
- yaml
|
||||
|
||||
vite-plugin-checker@0.8.0(eslint@8.57.0)(optionator@0.9.4)(typescript@5.7.3)(vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)):
|
||||
vite-plugin-checker@0.8.0(eslint@8.57.0)(optionator@0.9.4)(typescript@5.7.3)(vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)):
|
||||
dependencies:
|
||||
'@babel/code-frame': 7.26.2
|
||||
ansi-escapes: 4.3.2
|
||||
@@ -39040,7 +39042,7 @@ snapshots:
|
||||
npm-run-path: 4.0.1
|
||||
strip-ansi: 6.0.1
|
||||
tiny-invariant: 1.3.3
|
||||
vite: 5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)
|
||||
vite: 6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1)
|
||||
vscode-languageclient: 7.0.0
|
||||
vscode-languageserver: 7.0.0
|
||||
vscode-languageserver-textdocument: 1.0.12
|
||||
@@ -39083,36 +39085,6 @@ snapshots:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
vite@5.4.11(@types/node@20.16.10)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0):
|
||||
dependencies:
|
||||
esbuild: 0.21.5
|
||||
postcss: 8.5.2
|
||||
rollup: 4.34.8
|
||||
optionalDependencies:
|
||||
'@types/node': 20.16.10
|
||||
fsevents: 2.3.3
|
||||
less: 4.1.3
|
||||
sass: 1.55.0
|
||||
sass-embedded: 1.85.1
|
||||
stylus: 0.64.0
|
||||
terser: 5.39.0
|
||||
|
||||
vite@6.1.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
esbuild: 0.24.2
|
||||
postcss: 8.5.3
|
||||
rollup: 4.34.8
|
||||
optionalDependencies:
|
||||
'@types/node': 20.16.10
|
||||
fsevents: 2.3.3
|
||||
jiti: 1.21.6
|
||||
less: 4.2.2
|
||||
sass: 1.85.0
|
||||
sass-embedded: 1.85.1
|
||||
stylus: 0.64.0
|
||||
terser: 5.39.0
|
||||
yaml: 2.6.1
|
||||
|
||||
vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
esbuild: 0.25.0
|
||||
@@ -39129,6 +39101,22 @@ snapshots:
|
||||
terser: 5.39.0
|
||||
yaml: 2.6.1
|
||||
|
||||
vite@6.2.0(@types/node@20.16.10)(jiti@1.21.6)(less@4.2.2)(sass-embedded@1.85.1)(sass@1.85.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
esbuild: 0.25.0
|
||||
postcss: 8.5.3
|
||||
rollup: 4.34.8
|
||||
optionalDependencies:
|
||||
'@types/node': 20.16.10
|
||||
fsevents: 2.3.3
|
||||
jiti: 1.21.6
|
||||
less: 4.2.2
|
||||
sass: 1.85.0
|
||||
sass-embedded: 1.85.1
|
||||
stylus: 0.64.0
|
||||
terser: 5.39.0
|
||||
yaml: 2.6.1
|
||||
|
||||
vitest@3.0.5(@types/debug@4.1.12)(@types/node@20.16.10)(jiti@1.21.6)(jsdom@20.0.3(bufferutil@4.0.7))(less@4.1.3)(sass-embedded@1.85.1)(sass@1.55.0)(stylus@0.64.0)(terser@5.39.0)(yaml@2.6.1):
|
||||
dependencies:
|
||||
'@vitest/expect': 3.0.5
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
import { join } from 'node:path';
|
||||
import { Bench, Fn } from 'tinybench';
|
||||
import { withCodSpeed } from '@codspeed/tinybench-plugin';
|
||||
|
||||
import { globWithWorkspaceContext } from 'nx/src/utils/workspace-context';
|
||||
import { workspaceRoot } from '../../packages/nx/src/utils/workspace-root';
|
||||
|
||||
export function findAllBenchmarks(root: string) {
|
||||
return globWithWorkspaceContext(workspaceRoot, [
|
||||
join(root, '**', '*.benchmark.ts'),
|
||||
]);
|
||||
}
|
||||
|
||||
export async function runAllBenchmarks(root: string) {
|
||||
const bench = withCodSpeed(new Bench());
|
||||
|
||||
const benchmarks = await findAllBenchmarks(root);
|
||||
|
||||
for (const benchmarkFile of benchmarks) {
|
||||
const m = require(join('../../', benchmarkFile)) as {
|
||||
registerBenchmarks?: (bench: Bench) => void;
|
||||
};
|
||||
if (m.registerBenchmarks) {
|
||||
m.registerBenchmarks(bench);
|
||||
} else {
|
||||
throw new Error(`No benchmarks found in ${benchmarkFile}`);
|
||||
}
|
||||
}
|
||||
const results = await bench.run();
|
||||
console.table(bench.table());
|
||||
const errors = results.map((s) => s.result?.error).filter(Boolean);
|
||||
if (errors.length) {
|
||||
throw new AggregateError(errors);
|
||||
}
|
||||
}
|
||||
|
||||
if (require.main === module) {
|
||||
const root = process.argv[2] || '.';
|
||||
runAllBenchmarks(root)
|
||||
.then(() => {
|
||||
console.log('All benchmarks completed.');
|
||||
process.exit(0);
|
||||
})
|
||||
.catch((err) => {
|
||||
console.error('Error running benchmarks:', err);
|
||||
process.exit(1);
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"extends": "../../tsconfig.base.json",
|
||||
"compilerOptions": {
|
||||
"outDir": "../../build/bench-out",
|
||||
"module": "commonjs",
|
||||
"types": ["node"]
|
||||
},
|
||||
"include": ["../../**/*.ts"]
|
||||
}
|
||||
Reference in New Issue
Block a user