chore(deps): upgrade dependencies for Astro 7 (DOCSDEV-75) - #712
Open
Infi-Knight wants to merge 1 commit into
Open
chore(deps): upgrade dependencies for Astro 7 (DOCSDEV-75)#712Infi-Knight wants to merge 1 commit into
Infi-Knight wants to merge 1 commit into
Conversation
Phase 3b of DOCSDEV-75. Core: - astro 6.3.8 to 7.2.10 - @astrojs/starlight 0.39.2 to 0.42.0 - @astrojs/markdown-remark added at 7.3.0 - @interledger/docs-design-system 0.13.0 to 0.14.0 - starlight-links-validator 0.24.0 to 0.26.0 - starlight-llms-txt 0.9.0 to 0.11.0 - @astrojs/check 0.9.9 to 0.9.10 - sharp 0.34.5 to 0.35.4 - respec 35.6.1 to 37.3.5 Tooling: - eslint 10.4.0 to 10.9.1 - eslint-plugin-astro 1.7.0 to 3.1.0 - astro-eslint-parser 1.4.0 to 3.1.0 - typescript-eslint and @typescript-eslint/parser 8.60.0 to 8.69.0 - globals 17.6.0 to 17.11.0 - prettier 3.8.3 to 3.9.6 - eslint-plugin-jsx-a11y added at 6.10.2 Removed remark-mermaidjs. It was declared but never imported, and this site renders no Mermaid diagrams. TypeScript stays at 6.0.3. @astrojs/check declares typescript ^5 or ^6, and typescript-eslint refuses TypeScript 7 at runtime. Astro 7 makes Sätteri the default markdown processor. This cycle keeps every Starlight site on the unified processor. This site configures no plugins, so its unified() call takes no arguments. Enabled the eslint-plugin-astro accessibility rules through flat/jsx-a11y-recommended. That found one real bug: the FAQ hero image had no alt attribute. It is decorative, so it now has alt="". Added an npm overrides entry for eslint-plugin-jsx-a11y. That package declares eslint ^3 to ^9 but runs correctly on eslint 10. npm treats the stale range as a hard install error, unlike bun and pnpm. Regenerated package-lock.json. npm could not resolve the Astro 7 tree against the old lockfile. The Linux-only optional dependencies are still recorded, so npm ci --include=optional still works on CI.
✅ Deploy Preview for webmonetization-preview ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
Infi-Knight marked as non substantive for IPR from ash-nazg. |
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.
Part of a fleet-wide dependency upgrade across the Interledger documentation sites (DOCSDEV-75). This one moves the site to Astro 7.
Dependency changes
astro6.3.8 to 7.2.10@astrojs/starlight0.39.2 to 0.42.0@astrojs/markdown-remarkadded at 7.3.0@interledger/docs-design-system0.13.0 to 0.14.0starlight-links-validator0.24.0 to 0.26.0starlight-llms-txt0.9.0 to 0.11.0@astrojs/check0.9.9 to 0.9.10sharp0.34.5 to 0.35.4respec35.6.1 to 37.3.5Tooling:
eslintto 10.9.1,eslint-plugin-astroto 3.1.0,astro-eslint-parserto 3.1.0,typescript-eslintto 8.69.0,globalsto 17.11.0,prettierto 3.9.6,eslint-plugin-jsx-a11yadded at 6.10.2.typescriptstays at 6.0.3.@astrojs/checkdeclarestypescript ^5 || ^6, andtypescript-eslintrefuses TypeScript 7 at runtime.Removed
remark-mermaidjsIt was declared in
dependenciesbut never imported. A repo-wide search found references only inpackage.json, the lockfile, and one old SVG filename. This site renders no Mermaid diagrams.An accessibility bug, found and fixed
eslint-plugin-astro3 exposes accessibility rule sets that version 1 did not. The config now extendsflat/jsx-a11y-recommended, which turns on 31 rules. That found one real problem:The FAQ hero image had no
alt. It sits beside the "Frequently asked Questions" heading and adds no information, so it is decorative and now hasalt="". Screen readers will skip it rather than announce a filename.Two things reviewers should know
package-lock.jsonis fully regenerated. npm could not resolve the Astro 7 tree against the old lockfile, so the diff is large. I verified the Linux-only optional dependencies are still recorded, sonpm ci --include=optionalstill works on CI. Note that Vite 8 replaced rollup withrolldown, so the pinned@rollup/rollup-linux-x64-gnuis now unused. I left it in place rather than change a deliberate pin, but it can be dropped in a follow-up.A new
overridesentry was needed.eslint-plugin-jsx-a11y@6.10.2declareseslint ^3 || ... || ^9but runs correctly on ESLint 10. npm treats that stale range as a hard install failure, where bun and pnpm only warn. The override forces the rooteslintversion for that package. It can be removed once upstream declares ESLint 10 support.Markdown processor
Astro 7 makes Sätteri the default, and Sätteri does not run remark or rehype plugins. Starlight follows the same default. This cycle keeps every Starlight site on the
unified()processor, so all sites stay on the pipeline they run today. This site configures no plugins, so itsunified()call takes no arguments.Test plan
npm install --include=optionalcleannpm run buildpassed, 41 pages, 101 HTML filesspec-symlinkintegration works under Vite 8. Tested from a clean state withpublic/specificationdeleted, which is what CI does. The integration recreated the symlink and 22 spec files reacheddist/./specification/serves, and respec loads from the W3C CDN (respecConfigdefined, 23825 characters of content)starlight-links-validator0.26.0 reports all internal links valid/llms.txtand/llms-full.txtgeneratenpm run lintexits 0 at--max-warnings=0after the alt-text fix/specification/Two pre-existing build warnings, both benign
[starlight-i18n-loader] No files found matching ... in "src/content/i18n". That directory holds only a.keepmefile. No i18n is configured.Could not render /404 from route /[...slug] as it conflicts with higher priority route /404.dist/404.htmlis still produced.Refs: DOCSDEV-75