mirror of
https://github.com/vercel-labs/scriptc.git
synced 2026-10-04 09:28:24 +08:00
- packages/compiler/surface-manifest.json is generated (pnpm manifest), committed, and shipped in @scriptc/compiler; entries project mechanically from the diagnostics registry, the unsupported-syntax dispatch tables, the stdlib/builtin lowering tables, and the supported-builtin-module list - every non-static entry carries the SC code the compiler raises for it, and the version spine is the exact published release version - FENCE_CODES joins the diagnostics registry so factory-minted construct fences are enumerable - the sampling harness compiles listed-static probes and asserts each sampled non-static entry refuses with exactly its listed code, beside a byte-identical staleness guard - the release workflow regenerates the manifest, fails on drift, and attaches it to the GitHub release
26 lines
761 B
JSON
26 lines
761 B
JSON
{
|
|
"name": "scriptc-monorepo",
|
|
"private": true,
|
|
"engines": {
|
|
"node": ">=24.0.0"
|
|
},
|
|
"scripts": {
|
|
"build": "pnpm -r --filter './packages/*' run build",
|
|
"build:fresh": "rm -rf packages/compiler/dist packages/cli/dist node_modules/.cache/scriptc-tsc && pnpm build",
|
|
"test": "vitest run",
|
|
"test:cache-identity": "node tests/harness/cache-identity.mjs",
|
|
"test:watch": "vitest",
|
|
"lint": "eslint packages/compiler/src packages/cli/src",
|
|
"manifest": "tsx scripts/surface-manifest.mjs",
|
|
"scriptc": "tsx packages/cli/src/main.ts"
|
|
},
|
|
"devDependencies": {
|
|
"@types/node": "^24.0.0",
|
|
"eslint": "^9.20.0",
|
|
"tsx": "^4.19.0",
|
|
"typescript": "5.9.3",
|
|
"typescript-eslint": "^8.24.0",
|
|
"vitest": "^3.0.0"
|
|
}
|
|
}
|