Skip to content

Commit 9df3f0a

Browse files
committed
chore: do not use workspace
1 parent d93d296 commit 9df3f0a

File tree

9 files changed

+99
-62
lines changed

9 files changed

+99
-62
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,4 @@ workspace
66
.pnpm-debug.log
77
.idea
88
website/src/data/remote/*.json
9+
website/dist

.nvmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
v22

AGENTS.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
The CLI entry point lives in `ecosystem-ci.ts`, handling argument parsing, stack selection, and GitHub Actions plumbing. Shared helpers (`runInRepo`, git utilities, bootstrap logic) reside in `utils.ts`, while DTOs are defined in `types.d.ts`. Integration suites are colocated under `tests/<stack>/` (for example `tests/rspack/nuxt.ts` or `tests/rsbuild/plugins.ts`) and export an async `test(options: RunOptions)` function. Runtime clones are created under `workspace/`; treat this directory as disposable and keep it untracked. The `website/` directory hosts the deployed page, which pulls fresh data from the `data` branch via ecosystem CI rendering before the scheduled deployment jobs run.
55

66
## Build, Test, and Development Commands
7-
Use `pnpm install` to bootstrap dependencies (Node ≥18). Run targeted suites with `pnpm test -- --stack <stack> [suite]`, e.g. `pnpm test -- --stack rsbuild plugins`. Bisect regressions via `pnpm bisect -- --stack <stack>`. Execute `pnpm lint` to run `biome check .`. After cloning, `pnpm prepare` installs `simple-git-hooks` so the Biome pre-commit hook fires locally.
7+
Use `pnpm install` to bootstrap dependencies (Node ≥18). Run targeted suites with `pnpm test --stack <stack> [suite]`, e.g. `pnpm test --stack rsbuild plugins`. Bisect regressions via `pnpm bisect --stack <stack>`. Execute `pnpm lint` to run `biome check .`. After cloning, `pnpm prepare` installs `simple-git-hooks` so the Biome pre-commit hook fires locally.
88

99
## Coding Style & Naming Conventions
1010
Biome enforces space indentation, single quotes, normalized imports, and the shared lint rules. Follow the strict TypeScript settings in `tsconfig.json` (ESNext target, NodeNext resolution, `noImplicitOverride`). Name suite files in lowercase or kebab-case (`tests/rspack/lynx-stack.ts`), keep helpers camelCase, and reserve `test` exports for suite entry points.
@@ -13,7 +13,7 @@ Biome enforces space indentation, single quotes, normalized imports, and the sha
1313
Suites boot via `setupEnvironment` and must remain idempotent so reruns start clean. Prefer `runInRepo` with explicit `repo`, `branch`, `test`, and overrides so reviewers can audit each step. When adding scenarios, mirror the minimal patterns (for example `tests/rsbuild/examples.ts` with `test: ['build:rsbuild']`) and document any required environment tweaks.
1414

1515
## Commit & Pull Request Guidelines
16-
Commits follow short, imperative subjects (≤72 chars), elaborating in the body only when behavior changes. PRs should justify the change, list affected stacks or utilities, and include the exact validation command, e.g. `pnpm test -- --stack rspack modernjs`. Attach logs or screenshots for CI changes and highlight any new secrets or webhooks reviewers must configure.
16+
Commits follow short, imperative subjects (≤72 chars), elaborating in the body only when behavior changes. PRs should justify the change, list affected stacks or utilities, and include the exact validation command, e.g. `pnpm test --stack rspack modernjs`. Attach logs or screenshots for CI changes and highlight any new secrets or webhooks reviewers must configure.
1717

1818
## Environment & Tooling Notes
1919
The runner exports `ECOSYSTEM_CI`, `TURBO_FORCE`, and memory-safe `NODE_OPTIONS`; avoid overriding them unless a suite explicitly requires it. Keep `workspace/` untracked, and never commit runtime artifacts. Remember that network-dependent steps may need explicit approval in restricted environments.

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ Workflows are scheduled to run automatically every day
1919

2020
- clone this repo
2121
- run `pnpm i`
22-
- run `pnpm test -- --stack <stack>` to run every suite under the selected stack (`rsbuild`, `rspack`, `rstest`, `rslib`, `rsdoctor`, or `rslint`)
23-
- run `pnpm test -- --stack rspack` to execute all Rspack suites (available stacks: `rsbuild`, `rspack`, `rstest`, `rslib`, `rsdoctor`, `rslint`)
24-
- run `pnpm test -- --stack rslib` to execute all Rslib suites
25-
- run `pnpm test -- --stack rsbuild plugins` to target a specific suite
22+
- run `pnpm test --stack <stack>` to run every suite under the selected stack (`rsbuild`, `rspack`, `rstest`, `rslib`, `rsdoctor`, or `rslint`)
23+
- run `pnpm test --stack rspack` to execute all Rspack suites (available stacks: `rsbuild`, `rspack`, `rstest`, `rslib`, `rsdoctor`, `rslint`)
24+
- run `pnpm test --stack rslib` to execute all Rslib suites
25+
- run `pnpm test --stack rsbuild plugins` to target a specific suite
2626
- or invoke `tsx ecosystem-ci.ts` directly for advanced commands such as `build`, `run-suites`, or `bisect`
2727

2828
The version selection flags apply to the chosen stack:
@@ -34,8 +34,8 @@ The repositories are checked out into `workspace` subdirectory as shallow clones
3434

3535
### Cheat sheet
3636

37-
- `pnpm test -- --stack rspack --release nightly <suite>`: run a nightly release of the selected stack
38-
- `pnpm test -- --stack rsbuild --branch main --suite-branch update-rsbuild <suite>`: use `update-rsbuild` branch for the suite to test `main`
37+
- `pnpm test --stack rspack --release nightly <suite>`: run a nightly release of the selected stack
38+
- `pnpm test --stack rsbuild --branch main --suite-branch update-rsbuild <suite>`: use `update-rsbuild` branch for the suite to test `main`
3939

4040
# How to add a new integration test
4141

netlify.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[build]
2-
command = "pnpm install --frozen-lockfile && pnpm --filter ecosystem-ci-website build"
2+
command = "pnpm install --frozen-lockfile && pnpm run website:build"
33
publish = "website/dist"
44

55
[build.environment]

package.json

Lines changed: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,13 @@
1616
"bisect": "tsx ecosystem-ci.ts bisect",
1717
"lint": "biome check .",
1818
"prepare": "pnpm exec simple-git-hooks",
19-
"test": "tsx ecosystem-ci.ts"
19+
"test": "tsx ecosystem-ci.ts",
20+
"website:fetch": "node ./website/scripts/fetch-remote-history.mjs",
21+
"website:dev": "pnpm run website:fetch && cd website && rsbuild dev",
22+
"website:dev:mock": "cross-env RSBUILD_PUBLIC_DATA_SOURCE=mock pnpm run website:fetch && cd website && cross-env RSBUILD_PUBLIC_DATA_SOURCE=mock rsbuild dev",
23+
"website:dev:cached": "cd website && rsbuild dev",
24+
"website:build": "pnpm run website:fetch && cd website && rsbuild build",
25+
"website:preview": "cd website && rsbuild preview"
2026
},
2127
"simple-git-hooks": {
2228
"pre-commit": "pnpm exec nano-staged"
@@ -27,26 +33,45 @@
2733
"dependencies": {
2834
"@actions/cache": "^4.0.1",
2935
"@actions/core": "^1.10.0",
36+
"@fontsource/geist-sans": "^5.0.3",
3037
"@manypkg/get-packages": "^2.2.2",
38+
"@radix-ui/react-select": "^1.2.2",
39+
"@radix-ui/react-slot": "^1.1.0",
40+
"@rsbuild/core": "^1.5.17",
41+
"@rsbuild/plugin-react": "^1.4.1",
3142
"cac": "^6.7.14",
43+
"class-variance-authority": "^0.7.0",
44+
"clsx": "^2.0.0",
3245
"execa": "^7.1.1",
46+
"lucide-react": "^0.356.0",
3347
"node-fetch": "^3.3.1",
48+
"react": "^18.3.1",
49+
"react-dom": "^18.3.1",
50+
"react-router-dom": "^7.0.2",
51+
"tailwind-merge": "^2.3.0",
52+
"tailwindcss-animate": "^1.0.7",
3453
"yaml": "^2.8.1"
3554
},
3655
"devDependencies": {
3756
"@antfu/ni": "^0.20.0",
3857
"@biomejs/biome": "^1.9.4",
3958
"@types/node": "^18.15.5",
59+
"@types/react": "^18.3.3",
60+
"@types/react-dom": "^18.3.0",
4061
"@types/semver": "^7.3.13",
62+
"autoprefixer": "^10.4.19",
63+
"cross-env": "^7.0.3",
4164
"nano-staged": "^0.8.0",
65+
"postcss": "^8.4.39",
4266
"semver": "^7.3.8",
4367
"simple-git-hooks": "^2.8.1",
68+
"tailwindcss": "^3.4.6",
4469
"tsx": "^4.19.2",
45-
"typescript": "^4.9.5"
70+
"typescript": "^5.5.4"
4671
},
47-
"packageManager": "pnpm@10.19.0",
72+
"packageManager": "pnpm@10.20.0",
4873
"engines": {
4974
"node": ">=18",
50-
"pnpm": "10.19.0"
75+
"pnpm": "10.20.0"
5176
}
5277
}

pnpm-lock.yaml

Lines changed: 59 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pnpm-workspace.yaml

Lines changed: 0 additions & 3 deletions
This file was deleted.

website/package.json

Lines changed: 0 additions & 37 deletions
This file was deleted.

0 commit comments

Comments
 (0)