chore(deps): bump typescript to 6.0.3 - #116
Conversation
Dependabot has been proposing TypeScript 7 (#113). That PR looks green because the Docusaurus build never runs tsc, but `npm run typecheck` fails on it: TS 7 removes baseUrl, which this tsconfig sets. TypeScript 6 is the supported step off 5.x, so take that instead. TS 6 deprecates baseUrl rather than removing it, and the deprecation can't be resolved here: @docusaurus/tsconfig sets baseUrl upstream, so the warning fires on the inherited option even after dropping ours. Added ignoreDeprecations: "6.0" with a note explaining that TS 7 is blocked on Docusaurus, not on this repo. Worth noting the @site/* alias that baseUrl exists to anchor is not used anywhere in the project, so this is inherited config we carry rather than something we depend on. Verified: typecheck and build both pass. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
📝 WalkthroughWalkthroughThe documentation project updates its TypeScript development dependency to 6.0.3 and adjusts the editor-only compiler configuration to retain the Docusaurus path alias while suppressing TypeScript 6.0 deprecation warnings. ChangesTypeScript upgrade
Assessment against linked issues
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@opsimate-docs/package.json`:
- Line 34: Regenerate opsimate-docs/package-lock.json from the updated
TypeScript dependency in package.json so the root dependency range is ^6.0.3 and
the node_modules/typescript entry resolves to 6.0.3, including corresponding
metadata and integrity values.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: a3a39830-159f-4fdf-981f-784542fe48c5
⛔ Files ignored due to path filters (1)
package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (2)
opsimate-docs/package.jsonopsimate-docs/tsconfig.json
| "@docusaurus/tsconfig": "^3.10.2", | ||
| "@docusaurus/types": "^3.9.2", | ||
| "typescript": "~5.6.2" | ||
| "typescript": "^6.0.3" |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
set -euo pipefail
python - <<'PY'
import json
from pathlib import Path
manifest = json.loads(Path("opsimate-docs/package.json").read_text())
lockfile = json.loads(Path("opsimate-docs/package-lock.json").read_text())
assert (
lockfile["packages"][""]["devDependencies"]["typescript"]
== manifest["devDependencies"]["typescript"]
)
assert lockfile["packages"]["node_modules/typescript"]["version"] == "6.0.3"
PYRepository: OpsiMate/documentation
Length of output: 248
🏁 Script executed:
#!/bin/bash
set -euo pipefail
echo "== package.json relevant deps =="
python3 - <<'PY'
import json
from pathlib import Path
p=Path("opsimate-docs/package.json")
m=json.loads(p.read_text())
print(m.get("devDependencies", {}).get("typescript"), m.get("dependencies", {}).get("typescript"))
PY
echo "== package-lock files mentioning typescript =="
rg -n '"typescript"|"node_modules/typescript"' opsimate-docs/package-lock.json || true
echo "== lockfile package entry =="
python3 - <<'PY'
import json
from pathlib import Path
lock=json.loads(Path("opsimate-docs/package-lock.json").read_text())
print("root ts range:", lock.get("packages", {}).get("", {}).get("devDependencies", {}).get("typescript"))
for k,v in lock.get("packages", {}).items():
if k.endswith("node_modules/typescript"):
print(k, v.get("version"), v.get("resolved"), v.get("dev", False), v.get("devDependencies"))
PYRepository: OpsiMate/documentation
Length of output: 544
Update the lockfile with TypeScript 6.0.3.
opsimate-docs/package-lock.json still lists typescript as ~5.6.2 and resolves 5.6.3, but opsimate-docs/package.json requests ^6.0.3. Regenerate the lockfile so the root dependency range and node_modules/typescript resolved version match 6.0.3.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@opsimate-docs/package.json` at line 34, Regenerate
opsimate-docs/package-lock.json from the updated TypeScript dependency in
package.json so the root dependency range is ^6.0.3 and the
node_modules/typescript entry resolves to 6.0.3, including corresponding
metadata and integrity values.
Replaces #113.
Why not TypeScript 7
#113 looks green, but only because the Docusaurus build never invokes
tsc. Running this repo's ownnpm run typecheckon it:TS 7 removes
baseUrloutright. TypeScript 6 is the supported intermediate step, so this takes that instead.The baseUrl situation
TS 6 deprecates
baseUrlrather than removing it — and the deprecation can't actually be resolved in this repo.@docusaurus/tsconfigsetsbaseUrlupstream:So the warning fires on the inherited option even after removing ours — I tried, and TS5101 just moves to pointing at the
compilerOptionsblock. Our localbaseUrl: "."exists to re-anchor that alias to the project directory rather than the package's own location insidenode_modules, so dropping it would be a silent behaviour change, not a cleanup.Added
ignoreDeprecations: "6.0"with the reasoning inline. TS 7 here is blocked on Docusaurus shipping a baseUrl-free tsconfig, not on anything in this repo — worth knowing before someone retries the TS 7 bump and hits the same wall.Incidentally, the
@site/*alias this all exists to support isn't used anywhere in the project (zero matches across.ts,.tsx,.md,.mdx). It's inherited config we carry, not something we depend on.Verification
npm run typecheckandnpm run buildboth pass. The new CI job from #115 exercises both.Close #113 in favour of this.
🤖 Generated with Claude Code
Summary by CodeRabbit