Repository navigation
chore(deps): update deps, move to pnpm 12 and eslint 10 - #144
Merged
Merged
Conversation
Take everything the dependency dashboard offered that clears the 7 day minimumReleaseAge gate, plus the major bumps we want. Runtime and build: - vitepress 2.0.0-alpha.17 to 2.0.0-alpha.19, vite override 8.0.16 to 8.2.2 - vue and friends 3.5.35 to 3.5.42, @vitejs/plugin-vue 6.0.7 to 6.0.8 - vitepress-plugin-llms 1.13.5, vitepress-plugin-tabs 0.9.1 - markdown-it 14.2.0 to 14.3.1, held on 14 so the MarkdownIt type import in markdown-fit-media.ts matches the @types/markdown-it ^14 vitepress pulls - oxc-minify 0.148.0, papaparse 5.7.0, @types/node 24.13.3, lint-staged 17.4.1 Toolchain: - pnpm 11.5.1 to 12.1.0, engines widened to the 12.x range - eslint 9.39.4 to 10.9.1 (10.10.0 is still inside the age gate) - @rotki/eslint-config 5.0.1 to 8.3.0, @rotki/eslint-plugin 1.3.2 to 1.8.0, exempted from minimumReleaseAge since they are first party - eslint-plugin-tsdoc added explicitly: config 8 turns tsdoc on by default and otherwise prompts for it interactively, which would hang CI Actions, all repinned by digest: - checkout v6.0.3 to v7.0.1, setup-node v6.4.0 to v7.0.0, cache v5.0.5 to v6.1.0 - pnpm/action-setup v6.0.10, typos v1.50.0, codeql v4.37.9, deploy-pages v5.0.1 Fallout from the new lint rules: - heading levels no longer skip in the accounting, general and interface settings pages; anchors are unchanged, so no links move - README gets a single H1 - the redirects @example block is fenced so TSDoc stops reading its braces as inline tags - the ui-library linking snippet is valid JSON again, with the note in prose - markdown/no-missing-link-fragments is off: it slugs headings the GitHub way and disagrees with vitepress on 'type/subtype' and 'Traefik + basic auth'. check:anchors already gates this against vitepress' own slugger.
This branch was previously deployed
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.
Clears out the dependency dashboard for
main. Everything here either cleared the 7 dayminimumReleaseAgegate on its own or is a first party package we control.Runtime and build
markdown-it deliberately stays on 14. Our only use is the
MarkdownIttype import in.vitepress/plugins/markdown-fit-media.ts, and vitepress alpha.19 depends on@types/markdown-it ^14. Going to 15 would leave our types describing a different instance than the one vitepress passes in.Toolchain
engines.pnpmwidened to the 12.x range.pnpm@12.1.0has npm provenance, and the workflows read the version frompackageManager, so no CI pin to touch.@rotkipackages were published on 2026-09-09, sominimumReleaseAgeExclude: ['@rotki/*']exempts them. The cooling off period is there for third party supply chain risk and buys us nothing on packages we publish ourselves. Everything else still goes through the gate.eslint-plugin-tsdocis now an explicit devDependency. Config 8 enables tsdoc by default and callsensurePackages, which drops into an interactive "do you want to install them?" prompt when the plugin is missing. That would hang CI.Actions
All repinned by digest:
checkoutv6.0.3 to v7.0.1,setup-nodev6.4.0 to v7.0.0,cachev5.0.5 to v6.1.0,pnpm/action-setupv6.0.10,crate-ci/typosv1.50.0,codeql-actionv4.37.9,deploy-pagesv5.0.1.Lint fallout
The jump from config 5 to 8 brought new rules. 23 errors, all addressed:
Heading levels no longer skip in
usage-guides/settings/{accounting,general,interface}.md. Slugs derive from heading text, not depth, so every anchor is unchanged and no link moves.check:anchorsandcheck:app-linksboth still pass.README gets a single H1 instead of four.
redirects.ts: the@exampleblock is fenced so TSDoc stops reading its object braces as malformed inline tags.vue-typescript.md: the ui-library linking snippet is valid JSON again, with the "adjust the path" note moved into the prose above it.jsoncdid not help, the processor parses it strictly either way.scripts/check-*.mjs: autofixed toArray.from(x, fn)instead of[...x].map(fn).markdown/no-missing-link-fragmentsis off. It slugs headings the GitHub way and disagrees with vitepress on punctuation, flagging#all-valid-type-subtype-combinationsand#public-network-with-traefik-basic-authas broken. Both resolve correctly. I confirmed against the built HTML:pnpm check:anchorsgates the same thing against vitepress' own slugger and runs in CI, so we are not losing coverage.Verification
pnpm lint,pnpm build,check:images(221 images),check:anchors(69 pages),check:app-links(15 links) all pass.pnpm install --frozen-lockfileis clean and the lockfile passes pnpm's supply chain policies.Once this is in, the other branches need the same sync.