@streamdown/cjk@1.0.4 @streamdown/code@2.0.0
asheshgoplani/agent-deckSep 30, 2026 → Sep 30, 20260 days between releases
What's New
@streamdown/code 2.0.0 is a major bump to Shiki v4 with Node 20+ required; the older note covers a different package (@streamdown/cjk).
Breaking Changes
- Shiki is upgraded to v4, which may change tokenization output and theme/plugin APIs for consumers.
- Node.js 20 or newer is now required when using @streamdown/code.
New Features
- Code blocks are tokenized incrementally, processing only newly streamed lines instead of the whole block.
- Finished highlights are stored in a size-bounded LRU cache capped at 5,000 results.
- Cache lookups now compare the full code string to prevent token reuse across blocks that differ mid-content.
Improvements
- Streaming highlight work is reduced by avoiding full re-tokenization on each update.
- Cache memory is bounded by tokens, lines, and characters as well as entry count.
- Transient streaming results are no longer cached, since each is immediately superseded.
- Stale highlight results for code the block has already moved past are ignored.
Bug Fixes
- Blocks differing only in their middle content no longer incorrectly share cached tokens.
Upgrade Notes
These are two distinct packages in the same monorepo, so this is not a direct version-to-version upgrade of @streamdown/cjk; apply the changes only if you consume @streamdown/code. Before moving to 2.0.0, ensure your runtime is Node 20+ and validate Shiki v4 compatibility in your highlighting setup. Expect different cache behavior and verify any code relying on prior token reuse.
The Two Releases
@streamdown/cjk@1.0.4
Sep 30, 2026· 22 days ago
Minimal release notes: "### Patch Changes - 8cb3bc7: Re-linkify bare URLs that follow CJK punctuation when splitting GFM autolink literals (e.g"
Full release notes@streamdown/code@2.0.0
Sep 30, 2026· 22 days ago
@streamdown/code 2.0.0 is a major release that upgrades Shiki to v4 and requires Node.js 20 or newer. It improves streaming code-block highlighting by tokenizing only new lines and bounding the highlight cache. Cache lookups now compare full code and avoid caching transient streaming results.
Full release notes