mirror of
https://github.com/compiler-explorer/compiler-explorer.git
synced 2026-07-22 04:06:57 -04:00
## What Fresh rollup of minor/patch dependency updates via `npm update -S`, plus a `biome.json` tweak, plus a **node floor move to the latest 22 LTS**. Redo of #8844 on top of current `main`. Notable dep bumps: `@aws-sdk/*` 3.1057→3.1079, `@sentry/*` 10.55→10.63, `webpack` 5.107→5.108, `@biomejs/biome` 2.4.16→2.5.2, `cypress`, `sass`, `lint-staged`, and others. ## biome `!**/*.svg` biome 2.5 now parses `.svg` files as HTML and errors on them (94 errors across `static/**`/`public/**`). Added `!**/*.svg` to the biome ignore list. ## Node floor → 22.23.1 (latest 22 LTS) The update pulled `lint-staged@17.0.8`, which requires node `>=22.22.1` — above our previous declared minimum of `22.12.0`. Per the #8845 `find-node` contract, `.node-version` is the single source of truth whose satisfaction must also satisfy `engines.node` and every dependency. To keep that true, this bumps: - `.node-version` → `22.23.1` - `engines.node` → `>=22.23.1` 22.23.1 is the current latest 22 LTS and is also what CI's `setup-node` (`22.x` + `check-latest`) already resolves to. **Production node should move to match.** Lockfile regenerated cleanly under node 22.23.1 / npm 10.9.8 (CI's toolchain). ## No `webpackJsHack` bump The original #8844 also bumped `webpackJsHack` to dodge a source-map CDN hash collision; #8848 removed that escape hatch entirely (infra#2188 exempted source maps). So this touches no `webpack.config.esm.ts`. ## Note on the earlier biome CI failure An earlier push failed `test` with `Cannot find module '@biomejs/cli-linux-x64/biome'`. Investigated: the lockfile is complete (all 8 platform optional deps present, biome 2.5.2's package metadata is byte-identical to 2.4.16 which passes on `main`), it installs fine under npm 10.9/11.8 locally, and node 22.23.1 satisfies all engines. This is the known nondeterministic npm optional-dependency install flake (npm/cli#4828) under node-22's bundled npm 10.9 — not a lockfile/code defect. It resolves on re-run; the systemic fix (make CI install with the repo's declared `npm@11.2.0` via corepack) is out of scope here. Supersedes #8844. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: mattgodbolt-molty <mattgodbolt-molty@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
176 lines
6.1 KiB
JSON
176 lines
6.1 KiB
JSON
{
|
|
"name": "compiler-explorer",
|
|
"description": "Interactively investigate compiler output",
|
|
"type": "module",
|
|
"private": true,
|
|
"author": {
|
|
"name": "Matt Godbolt",
|
|
"email": "matt@godbolt.org",
|
|
"url": "https://xania.org"
|
|
},
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "compiler-explorer/compiler-explorer"
|
|
},
|
|
"version": "0.0.3",
|
|
"engines": {
|
|
"node": ">=22.23.1"
|
|
},
|
|
"main": "./app.ts",
|
|
"dependencies": {
|
|
"@aws-sdk/client-dynamodb": "^3.1079.0",
|
|
"@aws-sdk/client-ec2": "^3.1079.0",
|
|
"@aws-sdk/client-s3": "^3.1079.0",
|
|
"@aws-sdk/client-sqs": "^3.1079.0",
|
|
"@aws-sdk/client-ssm": "^3.1079.0",
|
|
"@aws-sdk/credential-providers": "^3.1079.0",
|
|
"@flatten-js/interval-tree": "^2.0.3",
|
|
"@fortawesome/fontawesome-free": "^7.3.0",
|
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
"@orchidjs/sifter": "^1.1.0",
|
|
"@popperjs/core": "^2.11.8",
|
|
"@sentry/browser": "^10.63.0",
|
|
"@sentry/node": "^10.63.0",
|
|
"@types/semver": "^7.7.1",
|
|
"big-integer": "^1.6.52",
|
|
"bootstrap": "^5.3.8",
|
|
"buffer": "^6.0.3",
|
|
"chart.js": "^4.5.1",
|
|
"clipboard": "^2.0.11",
|
|
"commander": "^15.0.0",
|
|
"compression": "^1.8.1",
|
|
"copy-webpack-plugin": "^14.0.0",
|
|
"cross-env": "^10.1.0",
|
|
"enhanced-ms": "^5.0.0",
|
|
"events": "^3.3.0",
|
|
"express": "^5.2.1",
|
|
"file-saver": "^2.0.5",
|
|
"golden-layout": "github:compiler-explorer/golden-layout#v1.6.0",
|
|
"http-proxy": "^1.18.1",
|
|
"jquery": "^4.0.0",
|
|
"js-cookie": "^3.0.8",
|
|
"jszip": "^3.10.1",
|
|
"lodash.clonedeep": "^4.5.0",
|
|
"lru-cache": "^11.5.1",
|
|
"lz-string": "^1.5.0",
|
|
"marked": "^18.0.5",
|
|
"monaco-editor": "^0.55.1",
|
|
"monaco-vim": "^0.4.4",
|
|
"morgan": "^1.11.0",
|
|
"node-targz": "^0.2.0",
|
|
"p-queue": "^9.3.0",
|
|
"path-browserify": "^1.0.1",
|
|
"profanities": "^3.0.1",
|
|
"prom-client": "^15.1.3",
|
|
"pug": "^3.0.4",
|
|
"response-time": "^2.3.4",
|
|
"sanitize-filename": "^1.6.4",
|
|
"scroll-into-view-if-needed": "^3.1.0",
|
|
"semver": "^7.8.5",
|
|
"systemd-socket": "0.0.0",
|
|
"tar-stream": "^3.2.0",
|
|
"tom-select": "^2.6.1",
|
|
"tree-kill": "^1.2.2",
|
|
"triple-beam": "^1.4.1",
|
|
"tsx": "^4.22.5",
|
|
"underscore": "^1.13.8",
|
|
"url-join": "^5.0.0",
|
|
"whatwg-fetch": "^3.6.20",
|
|
"which": "^6.0.1",
|
|
"winston": "^3.19.0",
|
|
"winston-loki": "^6.1.4",
|
|
"winston-papertrail": "^1.0.5",
|
|
"winston-transport": "^4.9.0",
|
|
"ws": "^8.21.0",
|
|
"yaml": "^2.9.0",
|
|
"zod": "^4.4.3"
|
|
},
|
|
"devDependencies": {
|
|
"@biomejs/biome": "^2.5.2",
|
|
"@sentry/types": "^10.63.0",
|
|
"@smithy/util-stream": "^4.7.5",
|
|
"@types/bootstrap": "^5.2.11",
|
|
"@types/chai": "^5.2.3",
|
|
"@types/compression": "^1.8.1",
|
|
"@types/express": "^5.0.6",
|
|
"@types/file-saver": "^2.0.7",
|
|
"@types/http-proxy": "^1.17.17",
|
|
"@types/jquery": "^4.0.1",
|
|
"@types/js-cookie": "^3.0.6",
|
|
"@types/node-targz": "^0.2.4",
|
|
"@types/request": "^2.48.13",
|
|
"@types/response-time": "^2.3.9",
|
|
"@types/supertest": "^7.2.0",
|
|
"@types/temp": "^0.9.4",
|
|
"@types/underscore": "^1.13.0",
|
|
"@types/webpack-env": "^1.18.8",
|
|
"@types/which": "^3.0.4",
|
|
"@types/ws": "^8.18.1",
|
|
"@vitest/coverage-v8": "^4.1.2",
|
|
"aws-sdk-client-mock": "^4.1.0",
|
|
"cheerio": "^1.2.0",
|
|
"css-loader": "^7.1.4",
|
|
"css-minimizer-webpack-plugin": "^8.0.0",
|
|
"cypress": "^15.18.0",
|
|
"file-loader": "^6.2.0",
|
|
"happy-dom": "^20.10.6",
|
|
"husky": "^9.1.7",
|
|
"lint-staged": "^17.0.8",
|
|
"mini-css-extract-plugin": "^2.10.2",
|
|
"mock-fs": "^5.5.0",
|
|
"monaco-editor-webpack-plugin": "^7.1.1",
|
|
"nock": "^14.0.16",
|
|
"npm-run-all": "^4.1.5",
|
|
"sass": "^1.101.0",
|
|
"sass-loader": "^17.0.0",
|
|
"source-map-loader": "^5.0.0",
|
|
"supertest": "^7.2.2",
|
|
"terser-webpack-plugin": "^5.6.1",
|
|
"ts-loader": "^9.6.2",
|
|
"typescript": "^6.0.3",
|
|
"vitest": "^4.0.1",
|
|
"vitest-fetch-mock": "^0.4.5",
|
|
"webpack": "^5.108.3",
|
|
"webpack-cli": "^7.1.0",
|
|
"webpack-dev-middleware": "^8.0.3",
|
|
"webpack-manifest-plugin": "^6.0.1"
|
|
},
|
|
"optionalDependencies": {
|
|
"@rollup/rollup-darwin-arm64": "^4.62.2",
|
|
"@rollup/rollup-darwin-x64": "^4.62.2",
|
|
"@rollup/rollup-linux-x64-gnu": "^4.62.2",
|
|
"@rollup/rollup-linux-x64-musl": "^4.62.2",
|
|
"@rollup/rollup-win32-x64-msvc": "^4.62.2"
|
|
},
|
|
"scripts": {
|
|
"cypress": "cypress run",
|
|
"lint": "biome check . --write",
|
|
"lint-check": "biome check .",
|
|
"test-coverage": "vitest run --coverage",
|
|
"test": "vitest run",
|
|
"test:watch": "vitest",
|
|
"test-min": "cross-env SKIP_EXPENSIVE_TESTS=true vitest run",
|
|
"test:props": "vitest run --reporter=dot properties-validation-tests.ts",
|
|
"check": "npm run ts-check && npm run lint-check && npm run check-frontend-imports && npm run check-license-headers && npm run test-min -- --reporter dot",
|
|
"check-frontend-imports": "node ./etc/scripts/check-frontend-imports.js",
|
|
"check-license-headers": "node ./etc/scripts/check-license-headers.js",
|
|
"dev": "cross-env NODE_ENV=DEV node --no-warnings=ExperimentalWarning --import=tsx app.ts",
|
|
"debugger": "cross-env NODE_ENV=DEV node --import=tsx --inspect-brk app.ts",
|
|
"debug": "cross-env NODE_ENV=DEV node --no-warnings=ExperimentalWarning --import=tsx app.ts --debug",
|
|
"start": "npm run webpack && cross-env NODE_ENV=LOCAL node --no-warnings=ExperimentalWarning --import=tsx app.ts",
|
|
"sentry": "npx -p @sentry/cli sentry-cli",
|
|
"update-browserslist": "npx update-browserslist-db@latest",
|
|
"prepare": "husky",
|
|
"ts-compile": "tsc",
|
|
"ts-check": "npm-run-all ts-check:*",
|
|
"ts-check:backend": "tsc -p ./tsconfig.backend.json --noEmit",
|
|
"ts-check:frontend": "tsc -p ./tsconfig.frontend.json --noEmit",
|
|
"ts-check:tests": "tsc -p ./tsconfig.tests.json --noEmit",
|
|
"ts-check:frontend-tests": "tsc -p ./tsconfig.frontend.tests.json --noEmit",
|
|
"ts-check:cypress": "tsc -p ./cypress/tsconfig.json --noEmit",
|
|
"webpack": "node --no-warnings=ExperimentalWarning --import=tsx ./node_modules/webpack-cli/bin/cli.js --config-node-env=production --config webpack.config.esm.ts"
|
|
},
|
|
"license": "BSD-2-Clause",
|
|
"packageManager": "npm@11.2.0"
|
|
}
|