Repository navigation
build(deps): update dependencies to latest - #87
Conversation
Bring every dependency to its latest release, including the majors: shiki 4 with @streamdown/code 2, motion 14, vitest 5, jsdom 30, vite-plugin-pwa 2, @composio/core 0.25, @tanstack/react-hotkeys 0.14, @convex-dev/rate-limiter 0.4, katex 0.19 and the newer nitro beta. Moving shiki and @streamdown/code together keeps a single Shiki copy. @streamdown/code 2 ships its own types, so the local module shim that masked them is removed. Three packages stay on their current major: - stripe 22: @convex-dev/stripe 0.1.7 still depends on stripe ^22 and receives the app's client and events, so v23 would mean two SDKs on different API versions. - @babel/core 7: workbox-build 7.4.1 (used by vite-plugin-pwa 2) still requires Babel 7; Babel 8 breaks service worker generation. - @types/node 24: the runtime is Node 24.x.
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
All reported issues were addressed across 3 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
The app imports katex/dist/katex.css from its own katex dependency, but @streamdown/math renders math through rehype-katex with katex 0.16. KaTeX 0.17 renamed its CSS classes (base -> katex-base, strut -> katex-strut, sizing...), so since the 0.17 bump in #55 the stylesheet has not matched the markup: overlines and underlines vanish and superscripts and limits render at full size. Keep katex on the renderer's 0.16 line, which also dedupes it to one copy. A test checks both resolve to the same copy, and Dependabot ignores katex >= 0.17 so the weekly group does not re-split it.
There was a problem hiding this comment.
All reported issues were addressed across 4 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
The previous commit aligned the stylesheet by keeping katex on 0.16, but every 0.16 release is affected by GHSA-238p-pmpm-9mq7 (fixed in 0.18.2), and the app's .katex-tag rule (updated in #65) targets the prefixed classes that only 0.18+ emits. rehype-katex, @streamdown/math and micromark-extension-math still declare katex ^0.16 (upstream: remarkjs/remark-math#121, #122), so an override pins every katex to the app's own version. They only call katex.renderToString with standard options, which 0.17-0.19 keep. The stylesheet, the renderer and the app's KaTeX rules now share one patched copy, and the Dependabot ignore is no longer needed: bumping katex moves every copy together.
Summary
Several dependencies were a major version or more behind, and Dependabot's open PRs had gone stale. Shiki couldn't move on its own because
@streamdown/codehad to move with it. This updates everything to its latest version except three packages that are held on purpose.shiki(exact pin) +@streamdown/codekatex(every copy, see below)motionvitest/jsdomvite-plugin-pwa@composio/core@tanstack/react-hotkeys@convex-dev/rate-limiternitroMinor and patch updates cover Radix, the AI SDK, TanStack,
convex1.47, PostHog and oxlint/oxfmt. The Convex components also move to auth 0.0.96, r2, resend and stripe 0.1.7.Held:
stripe@convex-dev/stripe0.1.7 still depends on^22and receives the app's client and events. v23 would install two SDKs pinned to different API versions. Upstream: convex/stripe#74@babel/coreworkbox-build7.4.1, used byvite-plugin-pwa2, requires Babel 7. Babel 8 breaks service worker generation (see #60).@types/nodeKaTeX fix
The app imports
katex/dist/katex.cssfrom its ownkatexdependency, but@streamdown/mathrenders math throughrehype-katexwith a nested KaTeX 0.16.47. Since #55 moved the app's copy to 0.17+, the two haven't matched:base→katex-base,strut→katex-strut, the sizing classes and others). As a result, overlines and underlines disappear, and superscripts and limits render at full size..katex-tagrule from build(deps): bump the non-major group with 53 updates #65 never matched the 0.16 markup.rehype-katexand@streamdown/mathstill declarekatex ^0.16(upstream: remarkjs/remark-math#121, #122). So an override points everykatexat the app's version, and one patched copy does both styling and rendering:rehype-katexand mermaid only callkatex.renderToStringwith standard options (displayMode,throwOnError,strict,output). Bumpingkatexlater moves every copy together, and the test fails if they ever split again.Supersedes #80.
Evidence
bun auditlists GHSA-238p-pmpm-9mq7.After:
bun auditall pass from a clean frozen install. The KaTeX advisory is gone.node_modules/katexvsrehype-katex/node_modules/katex) and passes with the override.\overlineand\underlineare missing and script sizes are wrong.\tag{1}is right-aligned by.katex-tag. Invalid input still falls back to the error span.pendingUpdatestable and a nested batch-worker component, used only by its opt-in async mode).authTablesis unchanged.Merge Danger
Door: two-way
Reverting
package.jsonandbun.lockrestores the old versions. The new rate-limiter table and batch worker stay empty unless async mode is turned on, so rolling back leaves no stranded data.Blast Radius: app-wide
These are the behavior changes that tests don't cover. Worth a quick pass after deploy:
\overline, superscripts,\tag), plus a mermaid diagram with math labels. Both now render with KaTeX 0.19.x/y/scaleanimations on HTML elements moved to the compositor.

Confidence Score: 5/5
The reviewed changes appear safe to merge, with no actionable new issues found.Summary
Updates application and development dependencies, including paired upgrades to
shikiand@streamdown/code.No actionable new issues were established. Dependencies were not installed, and tests, builds, and browser checks were not run during this review.
Reviews (3) · Last reviewed commit: "fix(markdown): render math with patched ..." · Reviewed by Greptile