ci(dependabot): ignore typescript major bumps for docs/site - #22763
Closed
bloxster wants to merge 1 commit into
Closed
ci(dependabot): ignore typescript major bumps for docs/site#22763bloxster wants to merge 1 commit into
bloxster wants to merge 1 commit into
Conversation
PR #22395 (typescript 6.0.3 -> 7.0.2) was closed because TypeScript 7 removed `baseUrl` (TS5102), which @docusaurus/tsconfig still sets as of 3.10.2. An inherited compilerOption cannot be unset by the extending config, and docs/site/tsconfig.json's `ignoreDeprecations: "6.0"` only silences TS 6's TS5101 deprecation — TS 7 rejects the option itself. Since docs-site-build.yml gates `npm run typecheck`, a TS 7 bump turns docs CI red. Closing a Dependabot PR only suppresses that exact version, so 7.0.3 and every later 7.x would re-propose it. Encode the decision instead. Minor and patch TypeScript updates keep flowing. Taking TS 7 later means inlining @docusaurus/tsconfig's options minus baseUrl (deleting our local baseUrl alone would just inherit theirs). That fix is already proven in erigontech/cocoon#36 and erigontech/zilkworm-docs#13 if we want it here. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Collaborator
Author
|
Superseded by #22764, which removes the need for this deferral: it drops If we ever want to pin back to TypeScript 6, this rule is the way to do it — the rationale is preserved in the commit on |
pull Bot
pushed a commit
to Dustin4444/erigon
that referenced
this pull request
Jul 27, 2026
…rigontech#22764) ## Why Dependabot erigontech#22395 (`typescript` 6.0.3 → 7.0.2) was closed because it failed docs-site CI: ``` docs/site/tsconfig.json(7,5): error TS5102: Option 'baseUrl' has been removed. Please remove it from your configuration. ``` TypeScript 7 **removed** `baseUrl`. Our `"ignoreDeprecations": "6.0"` silenced TS 6's TS5101 *deprecation*, but TS 7 rejects the option itself, so that escape hatch expires at the major boundary. **Deleting only our own `baseUrl` line would not fix it.** `extends: @docusaurus/tsconfig` would inherit upstream's — it still ships one as of 3.10.2 — and an inherited `compilerOption` cannot be unset by the extending config. The error would simply move from `(7,5)` to `(6,3)`. ## What 1. **`docs/site/tsconfig.json`** — inline the base config minus `baseUrl`, dropping the now-useless `ignoreDeprecations`. 2. **`docs/site/scripts/check-tsconfig-drift.mjs`** (+ `npm run check:tsconfig`) — inlining means upstream changes stop reaching us, so this diffs our copy against `node_modules/@docusaurus/tsconfig` modulo declared deltas, and reports when upstream drops `baseUrl` and the whole workaround can be reverted. Wired into `docs-site-build.yml` ahead of the existing typecheck. The guard depends on nothing but Node, deliberately: a version that imported `typescript` to parse JSONC broke under the very upgrade it guards (erigontech/cocoon#37). ## `@site/*` is unaffected here Verified via the TypeScript API — `@site/docusaurus.config` resolves to `docs/site/docusaurus.config.ts` both before and after: ``` OLD (extends + our own baseUrl: "."): @site/docusaurus.config -> <site>/docusaurus.config.ts NEW (inlined, no baseUrl): @site/docusaurus.config -> <site>/docusaurus.config.ts ``` Worth noting because this is where erigon differed from its siblings: in cocoon and zilkworm-docs `baseUrl` was *only inherited*, so it resolved to `node_modules/@docusaurus/tsconfig` and left `@site/*` silently broken. Our explicit `baseUrl: "."` is what kept the alias correct — and dropping it costs nothing, because `paths` now resolves against the tsconfig's own directory, which is the same `docs/site` root. ## Verification In `docs/site`, under **both** toolchains: | | TS 6.0.3 | TS 7.0.2 | |---|---|---| | `npm run check:tsconfig` | exit 0 | exit 0 | | `npm run typecheck` | exit 0 | exit 0 | | `npm run build` | exit 0 | exit 0 | ## Relationship to erigontech#22763 **Supersedes erigontech#22763**, which added a Dependabot ignore rule for `typescript` majors to stop the closed PR resurfacing on every 7.x release. That deferral is unnecessary if this lands — recommend closing erigontech#22763. If you'd rather stay on TS 6 for now, do the opposite: merge erigontech#22763 and close this. Same fix as erigontech/cocoon#36 and erigontech/zilkworm-docs#13, both now merged and running TypeScript 7.0.2. 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Bloxster <gianni.morselli@erigon.tech> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
PR #22395 (
typescript6.0.3 → 7.0.2) was closed because TypeScript 7 removedbaseUrl(TS5102), which@docusaurus/tsconfigstill sets as of 3.10.2:An inherited
compilerOptioncannot be unset by the extending config, anddocs/site/tsconfig.json's"ignoreDeprecations": "6.0"only silences TS 6's TS5101 deprecation — TS 7 rejects the option itself. Sincedocs-site-build.ymlgatesnpm run typecheck, a TS 7 bump turns docs CI red.What
Closing a Dependabot PR suppresses only that exact version, so 7.0.3 and every later 7.x would re-propose it. This encodes the decision instead. Minor and patch TypeScript updates keep flowing.
No behaviour change — Dependabot config only.
If we want TS 7 later
It requires inlining
@docusaurus/tsconfig's options minusbaseUrl. Note that deleting our localbaseUrl: "."alone would not work — it would just inherit theirs. That fix is already proven in erigontech/cocoon#36 and erigontech/zilkworm-docs#13.Aside: our local
baseUrl: "."is also why@site/*resolves correctly here. In both sibling repos the option was purely inherited, which made it resolve tonode_modules/@docusaurus/tsconfigand silently broke the alias.🤖 Generated with Claude Code