@streamdown/code@2.0.0

vercel/streamdown@streamdown/code@2.0.0Sep 30, 2026by github-actions[bot]

Upgrading?

AI Summary

Major upgrade to Shiki v4 with Node.js 20+ requirement. Performance optimizations include streaming-only tokenization and a bounded LRU cache for code highlight results.

Key Highlights

  • Upgrade Shiki to v4
  • Node.js 20 or newer required
  • Tokenize only new lines while streaming instead of re-tokenizing entire blocks
  • Bounded code highlight cache: streaming blocks not cached, finished blocks in LRU cache

Breaking Changes

  • Requires Node.js 20 or newer when using @streamdown/code

New Features

  • Streaming code highlighting with incremental tokenization
  • Least-recently-used cache for finished code blocks (bounded by size and 5,000 result limit)

Full Release Notes

### Major Changes

- db6fefc: Upgrade Shiki to v4. Node.js 20 or newer is now required when using `@streamdown/code`.

### Patch Changes

- 0ea9e64: Tokenize only the new lines of a code block while it streams instead of re-tokenizing the whole block on every update.
- 4ec5639: Bound the code highlight cache. Results of streaming code blocks are no longer cached (each is superseded by the next update), and finished code blocks are kept in a least-recently-used cache bounded by their size (tokens, lines and characters) and by a limit of 5,000 results. Lookups compare the full code, so blocks that differ only in the middle no longer share tokens. A code block also ignores highlight results for code it has already moved past.

Related Repositories