Version Packages - #580
Merged
Merged
Conversation
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 13:39
407f94f to
15a8ad3
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 13:48
15a8ad3 to
039cf1c
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 14:20
039cf1c to
f5a3484
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 14:23
f5a3484 to
a7a1767
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 14:40
a7a1767 to
d8a7df9
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 15:18
d8a7df9 to
b34bd1d
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 13, 2026 15:45
b34bd1d to
8fa77ba
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 14, 2026 13:13
8fa77ba to
5bd338a
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 14, 2026 14:01
5bd338a to
9e1c461
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 14, 2026 15:07
9e1c461 to
da27abb
Compare
|
Would love to see the deploy here (for 8d36719) |
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 11:04
da27abb to
3bd6d20
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 11:47
3bd6d20 to
1068c3e
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 15:00
1068c3e to
b22ba74
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 16:07
54ea105 to
342bb03
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 18:01
342bb03 to
d7673a4
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 19, 2026 19:17
d7673a4 to
91d05b9
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 20, 2026 11:03
91d05b9 to
d12c27f
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 20, 2026 14:21
d12c27f to
9c704c6
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 21, 2026 09:54
9c704c6 to
5131371
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 21, 2026 11:15
5131371 to
9e07485
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 21, 2026 13:00
9e07485 to
57076f0
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 21, 2026 13:09
57076f0 to
8c7738b
Compare
Collaborator
|
@willhoney7 New version will be out on Monday. Feel free to try the changes before the release to make sure the upgrade goes 100% smoothly. |
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 21, 2026 14:20
8c7738b to
5f27367
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 24, 2026 08:43
5f27367 to
7709f4a
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 24, 2026 09:14
7709f4a to
579686a
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
August 24, 2026 10:08
579686a to
c187f6d
Compare
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.
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.
Releases
streamdown@2.6.0
Minor Changes
49bd143: fix(animate): serialize streaming animation across blocks
Word stagger now runs on a shared wall-clock timeline so sibling sections no longer fade in on top of each other during streaming. Related cleanup: trailing spaces stay inside animated spans (no early link underlines), animate wrappers drop when streaming ends, already-seen text stays steady under StrictMode, and un-animated streaming is no longer deferred behind a starvable transition.
Inspired by fix(animate): serialize stagger delays across sibling blocks to prevent concurrent animation #493, fix(animate): rework streaming animation into a staged reveal #531, and Fix animate plugin whitespace handling in word splitting (especially inside links) #536.
Fixes Streaming animation reveals multiple markdown sections concurrently instead of serializing section animation #482
Fixes Animated text with links that have
text-decoration: underlineshow underlines before revealed #535Fixes Streaming mode without 'animated': block updates deferred via useTransition are starved by sibling urgent updates - markdown freezes at first parse #550
Fixes Animation spans are never removed from settled text — memoized components discard the span-free reparse #570
b734cbf: - Add custom download filenames for code, table, and mermaid via the
controlspropdownload: { filename: "customName" }while keeping booleantrue/falseto show or hidecodeDownloadprop in favor of the unifiedcontrolsAPI5faa6fa: Add
codeBlockMaxHeightandtableMaxHeightprops with streaming auto-scroll4436b56: - Add
controls.table.csvSeparator("," | ";" | "\t" | "auto") for table copy and download CSVtableDataToCSVseparator handling, including locale-aware"auto"modePatch Changes
6ec3c48: fix(animate): animate inline code during streaming
Skip the animate visitor on
pre(and svg/math/annotation) only — not barecode. Fenced/highlighted blocks stay un-split via theirpreancestor; inline backtick spans now get the same per-word fade-in as surrounding prose.Fixes Animated streaming skips inline code — skip check should key off pre instead of code #594
725e390: Forward rest props through block code. The
codecomponent spread its rest props on the inline branch and dropped them on the block branch, so an attribute a consumer put on a fenced code element never reached the DOM.CodeBlockBodynow takes part in that comparison, so a forwarded attribute updates instead of keeping the value it first rendered with.7e82400: Fix
dir="auto"in static mode to detect text direction per semantic block (instead of once for the whole document), keep code LTR, and use content-majority direction for mixed-script prose.fb5d7b9: Serialize Mermaid SVGs before download so HTML-style tags render as valid SVG markup.
fe38e75: Added accessibility improvements for code block controls by adding aria labels to copy/download buttons and announcing copy success state for screen readers.
b25dbdb: fix(custom-tags): render Markdown inside custom tags with multiline content
Adds a preprocessing step (
preprocessCustomTags) that normalizes multilinecustom tags into a blank-line-sandwiched HTML block so CommonMark interrupts
the raw-HTML block and parses the nested content as Markdown, with
parseMarkdownIntoBlocksre-merging the interrupted open/content/close tokensso streaming still treats the whole custom tag as one block. Previously, when a
custom tag contained multiline content (e.g.
<ai-thinking> **bold**</ai-thinking>), CommonMark treated the block as raw HTML, strippingMarkdown formatting. Tags listed in
literalTagContentare excluded fromre-parsing.
Closes Markdown syntax fails to render inside custom tags #478
26a8440: Fix doubled
user-content-prefix on footnote idsFootnote list items were rendered with
id="user-content-user-content-fn-1"because bothremark-rehypeandrehype-sanitizedefault theirclobberPrefixtouser-content-, so the prefix was applied twice. DisabledclobberPrefixonrehype-sanitizesoremark-rehyperemains the single, consistent prefixer of both footnote ids and backref hrefs — restoring working footnote navigation.f7d1fb5: fix(table): add
data-streamdown="table-wrapper"to fullscreen portal so copy/download dropdowns can find the tablef0a726b: Add
aria-hidden="true"to decorative SVG icon components so screen readers rely on parent button labels instead of unlabeled icons.2ed2faa: Allow remend's
streamdown:incomplete-link sentinel through the default sanitize schema so streamed incomplete links render as pending instead of harden[blocked].8fffa9d: Render the link safety modal through a portal to
document.bodyso it is no longer nested inside the paragraph's<p>element. This fixes the React hydration error "In HTML,<div>cannot be a descendant of<p>" that occurred when a link with link safety enabled appeared inside a paragraph.2733922: fix(mermaid): add aria-hidden to decorative SVG icons in mermaid toolbar buttons
Mermaid toolbar buttons (download, fullscreen, pan/zoom controls) already have
accessible titles/labels, but the inline SVG icons were exposed to the accessibility
tree causing "Content with images must be labeled" warnings. Added aria-hidden={true}
to all decorative icon elements in download-button, fullscreen-button, and pan-zoom
components.
Fixes streamdown-mermaid: toolbar icon button contains unlabeled SVG and triggers accessibility warning #485
8d36719: fix(deps): remove
mermaidas a hard runtime dependencyThis patch replaces the type import with a local structural type for
MermaidConfigso no type-level coupling to themermaidpackage remains in the distributed typings. Users who want fully-typed mermaid config can stillimport type { MermaidConfig } from 'mermaid'themselves; the structural type is compatible.Fixes mermaid remains a hard dependency in 2.5.0, contradicting the plugin docs (adds ~75 MB to every install) #501
ea02609: Fix:
shikiThemeprop priority chain is now fully reachable.Previously,
shikiThemehad a default value in the props destructuring (= defaultShikiTheme), making theplugins?.code?.getThemes()fallback unreachable in both orderings. The fix removes the destructuring default and moves it to the end of the nullish coalescing chain, so all three levels are reachable:shikiThemeprop (highest priority)getThemes()(second priority)defaultShikiTheme(final fallback)9813dd6: Fix type declarations requiring a
shikiinstall.BundledLanguage,BundledTheme, andThemeRegistrationAnyare now defined locally and re-exported fromstreamdown, so consumers can type-check without installingshiki. Runtime highlighting remains in@streamdown/code, which still depends onshiki.d893759: Fix mermaid fullscreen overlay accessibility and add stable selector
data-streamdown="mermaid-fullscreen"to fullscreen overlay for stable CSS targetingrolefrombuttontodialogaria-modal="true"for correct screen reader modal behavior79c8575: fix issue with list markers, task-list checkboxes, images, and hr animations
a1a7142: feat: add image control options (
controls.image) to disable hover overlay and download button on imagesAdd
imageto thecontrolsprop, matching existingcode,table, andmermaidpatterns:controls={{ image: false }}hides the hover overlay and download buttoncontrols={{ image: { download: false } }}keeps the hover overlay but hides the download buttonb250038: Fix accessibility warnings for Mermaid toolbar icon buttons:
aria-hidden="true"to all decorative SVG icons to hide them from screen readersaria-labelattributes to all icon-only buttons for proper screen reader announcementszoomIn,zoomOut,resetView) for zoom controls89c6877: Re-render memoized markdown components when their rendered output changes. The comparators compared source position, so a replacement of the same length — occupying the same lines and columns — was treated as unchanged and the component kept rendering the previous text.
e7bdf57: fix(mermaid): render the download and copy controls inside the Mermaid fullscreen portal so they're reachable when the diagram is expanded
8f02c09: Fix table copy and download actions not working in fullscreen mode.
f46cd3c: - Fixed table copy losing line breaks inside cells containing
<br>elements.<br>handling in table extraction.dc3f1d2: - Fix code block line wrapping when line numbers are disabled.
lineNumberssetting.lineNumbers={false}.Updated dependencies [a99d675]
Updated dependencies [9f96409]
Updated dependencies [8093f2a]
Updated dependencies [57c3089]
remend@1.3.1
Patch Changes
a99d675: Fix crash on iOS 16.0-16.2 / Safari < 16.3 by removing the lookbehind assertion from the single-tilde escape pattern (Streamdown crashes on iOS 16 / Safari < 16.3 due to lookbehind regex in
remendandmdast-util-gfm-autolink-literal#519).JSCore on those versions doesn't support lookbehind (
(?<=...)) and throws aSyntaxErrorwhile the module is being evaluated, before any user code runs, so there is no way to catch it. The preceding word character is now captured and written back in the replacement instead.9f96409: Preserve complete italic emphasis when a closing asterisk is followed by word text.
8093f2a: Treat LaTeX paren and bracket math as protected math contexts during emphasis completion.
57c3089: Fix quadratic code-block scanning.
isInsideCodeBlocknow builds a linear-time position lookup (cached per text) instead of rescanning the whole prefix on every call, so handlers that probe many positions no longer degrade quadratically. Repairing an unclosed, bracket-heavy 58k-character code block drops from ~915ms to ~0.4ms per call.