mirror of
https://github.com/compiler-explorer/compiler-explorer.git
synced 2026-07-16 18:37:07 -04:00
Bumps the remaining major-version dependencies. **golden-layout is deliberately excluded** (we depend on its internals too heavily for the 1.x → 2.x jump). Each bump is its own commit, verified independently (ts-check, lint, unit tests, and where relevant the webpack build + cypress). ## Included - **TypeScript 6.0** — pin `ignoreDeprecations: "6.0"` (downlevelIteration + the frontend's `es5` target are deprecated-but-functional until TS7), pin the frontend to `module=commonjs`/`moduleResolution=node` (TS6's new esnext/bundler defaults break deep monaco esm imports), and declare `*.css`/`*.scss` side-effect modules (`noUncheckedSideEffectImports` now defaults true). - **marked 18** — no code changes; only use is the Claude-explain view. - **Build chain**: webpack-cli 7 (renamed `--node-env` → `--config-node-env` in the `webpack` script), webpack-dev-middleware 8, sass-loader 17. - **zod 4** — only used by the MCP tool schemas via stable primitives; MCP SDK already supports `^3.25 || ^4.0`. - **lint-staged 17** — dev tooling; pre-commit pipeline exercised. - **commander 15** — both CLI entrypoints use options only; v15's stricter excess-args default only tightens rejection of stray positionals. Requires Node ≥22.12. - **enhanced-ms 5**, **which 7** — small utilities, APIs unchanged. ## Node floor bump — split into its own PR The first commit (`Bump Node floor to v22`: `engines >=22` + `find-node` `NODE_MIN_VERSION=22`) is **isolated and intended to be cherry-picked into a separate PR**. It aligns the declared floor with production (Node 22.13.1) and is a prerequisite for commander 15 (needs ≥22.12). ## Follow-ups (not in this PR) - The `es5 → es2015` frontend migration, required before TS7 (currently bridged by `ignoreDeprecations`). ## Testing - Local: ts-check, lint, full unit suite, production webpack build, and cypress (81 specs) all pass. - Pre-existing: 13 `dontMaskFilenames` filter snapshots fail **locally only** (a local /tmp path leaks into output where the snapshot expects a clean `example.cpp`); they fail identically on `main` and pass in CI. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
25 lines
729 B
JSON
25 lines
729 B
JSON
{
|
|
"compilerOptions": {
|
|
/* Code generation */
|
|
"sourceMap": true,
|
|
"downlevelIteration": true,
|
|
"importHelpers": true,
|
|
/* TS6 deprecates downlevelIteration and the frontend's es5 target; both still
|
|
function until TS7. Silence the deprecation errors until the es5->es2015
|
|
migration is tackled separately. */
|
|
"ignoreDeprecations": "6.0",
|
|
/* Module resolution */
|
|
"esModuleInterop": true,
|
|
/* Other options */
|
|
"forceConsistentCasingInFileNames": true,
|
|
"skipLibCheck": true,
|
|
"strict": true,
|
|
"noImplicitAny": false,
|
|
"noImplicitOverride": true,
|
|
"strictNullChecks": true,
|
|
"strictFunctionTypes": true,
|
|
"noUnusedLocals": true,
|
|
"noImplicitThis": true
|
|
}
|
|
}
|