Update: dependency updates (katex, lodash, ava 7, jsdom 29) - #55
Merged
Conversation
Aetf
force-pushed
the
chore/dependency-updates
branch
from
August 6, 2026 04:01
83571f0 to
0c33524
Compare
`npm update` within the existing semver ranges: hexo-cli 4.3.1 -> 4.3.2 hexo-excerpt 1.3.0 -> 1.3.1 hexo-fs 4.1.1 -> 4.1.3 hexo-renderer-markdown-it 7.1.0 -> 7.1.1 hexo-renderer-stylus 3.0.0 -> 3.0.1 katex 0.16.8 -> 0.16.47 lodash 4.17.21 -> 4.18.1 Snapshots regenerated for the KaTeX bump. The only content change is numeric precision in inline styles (KaTeX now rounds to 4 decimals, e.g. `margin-right:0.03588em` -> `0.0359em`) plus one accent-placement fix (`left:-0.1944em` -> `-0.25em`). No structural markup change. `post.js.snap` churns only its ava version stamp — the human-readable `post.js.md` companion is byte-identical. 43/43 tests pass; headless render of /, /blog, /about, /projects, /research and a post is clean. Co-Authored-By: Claude <noreply@anthropic.com>
Both are devDependencies only (test harness). ava 6 renamed the `ignoredByWatcher` config key to `watchMode.ignoreChanges`, which ava 7 now hard-errors on, so ava.config.mjs is updated accordingly. Node engine floors (ava ^20.19, jsdom ^20.19) are satisfied by .nvmrc's 20 and by CI's `node-version: latest`. 43/43 tests pass with no snapshot changes. Co-Authored-By: Claude <noreply@anthropic.com>
Aetf
force-pushed
the
chore/dependency-updates
branch
from
August 6, 2026 05:07
0c33524 to
6bdaaba
Compare
Aetf
added a commit
that referenced
this pull request
Aug 6, 2026
All three are Hexo 8-era releases (hexo-generator-feed 4 depends on hexo-util 4, hexo-generator-index 4 on hexo-pagination 3), so they sit on top of the Hexo 8 bump rather than in the earlier dependency batch. Diffed a clean build against a clean pre-bump build. Every HTML page is identical once the random prism code-block ids are normalised. Only two outputs change, both from hexo-generator-feed 4's rewritten generator: * `atom.xml` — reordered elements, and it now emits a feed-level `<rights>` plus a per-entry `<author>`. Parsed both with ElementTree: same 21 entries, same ids, same titles, all still carrying `<content>`. Strictly richer, nothing dropped. * `search.xml` — same 21 entries in a different order. Compared per-URL content hashes: identical set, identical content, order only. It is a search corpus, so order carries no meaning. Post listing order and pagination are unchanged. 43/43 tests pass and a headless render of /, /blog, /about, /projects, /research and a post is clean. katex stays on ^0.16 — see #55 for why 0.18 can't move until NexT's vendored KaTeX CSS does. Co-Authored-By: Claude <noreply@anthropic.com>
Aetf
added a commit
that referenced
this pull request
Aug 6, 2026
All three are Hexo 8-era releases (hexo-generator-feed 4 depends on hexo-util 4, hexo-generator-index 4 on hexo-pagination 3), so they sit on top of the Hexo 8 bump rather than in the earlier dependency batch. Diffed a clean build against a clean pre-bump build. Every HTML page is identical once the random prism code-block ids are normalised. Only two outputs change, both from hexo-generator-feed 4's rewritten generator: * `atom.xml` — reordered elements, and it now emits a feed-level `<rights>` plus a per-entry `<author>`. Parsed both with ElementTree: same 21 entries, same ids, same titles, all still carrying `<content>`. Strictly richer, nothing dropped. * `search.xml` — same 21 entries in a different order. Compared per-URL content hashes: identical set, identical content, order only. It is a search corpus, so order carries no meaning. Post listing order and pagination are unchanged. 43/43 tests pass and a headless render of /, /blog, /about, /projects, /research and a post is clean. katex stays on ^0.16 — see #55 for why 0.18 can't move until NexT's vendored KaTeX CSS does. Co-Authored-By: Claude <noreply@anthropic.com>
Aetf
added a commit
that referenced
this pull request
Aug 6, 2026
All three are Hexo 8-era releases (hexo-generator-feed 4 depends on hexo-util 4, hexo-generator-index 4 on hexo-pagination 3), so they sit on top of the Hexo 8 bump rather than in the earlier dependency batch. Diffed a clean build against a clean pre-bump build. Every HTML page is identical once the random prism code-block ids are normalised. Only two outputs change, both from hexo-generator-feed 4's rewritten generator: * `atom.xml` — reordered elements, and it now emits a feed-level `<rights>` plus a per-entry `<author>`. Parsed both with ElementTree: same 21 entries, same ids, same titles, all still carrying `<content>`. Strictly richer, nothing dropped. * `search.xml` — same 21 entries in a different order. Compared per-URL content hashes: identical set, identical content, order only. It is a search corpus, so order carries no meaning. Post listing order and pagination are unchanged. 43/43 tests pass and a headless render of /, /blog, /about, /projects, /research and a post is clean. katex stays on ^0.16 — see #55 for why 0.18 can't move until NexT's vendored KaTeX CSS does. Co-Authored-By: Claude <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.
The safe half of the dependency sweep. Everything here is verified and mergeable on its own; the Hexo 8 work is split out into a separate branch because it is blocked on an upstream release.
In-range updates (
npm update)Snapshots were regenerated for the KaTeX bump. The complete set of content changes is numeric precision in inline styles — KaTeX now rounds to four decimals — plus one accent-placement fix:
No structural markup change.
post.js.snapchurns only its ava version stamp — the human-readablepost.js.mdcompanion is byte-identical.Major bumps
ignoredByWatchertowatchMode.ignoreChangesand ava 7 hard-errors on the old key, soava.config.mjsis updated. Node floors (^20.19) are satisfied by.nvmrc's 20 and by CI'snode-version: latest.43/43 tests pass; headless render of
/,/blog,/about,/projects,/researchand a post is clean with zero console errors.Deliberately not updated
katex stays on
^0.16. 0.18.0's breaking change is "prefix css classes". The npm package only does the server-side render here — the matching stylesheet comes from cdnjs at whatever version NexT's_vendors.ymlpins, currently 0.16.9. Bumping the package alone would emit prefixed class names against unprefixed CSS and render every equation as unstyled text, andcustom/styles/math.styl's.katexselector would stop matching too. This can only move once NexT's vendored KaTeX does.Split out of this PR
chore/hexo-8. It works and is verified, but it is blocked on ahexo-next-publistrelease (Fix: support Hexo 7/8, and pin @primer/css back to ^17 hexo-next-publist#197) — the published 2.2.1 fails to load on Hexo 8, so CI would fail here.muse.jsentry intools/link_check_skip.txtsays "remove after next-theme/hexo-theme-next@0708dc7e is included in a release". We are now well past 8.24.0 and I could find nomuse.jsreference in the build, so it is plausibly dead — but I did not want to remove a link-check skip in a PR about dependency versions.🤖 Generated with Claude Code