docs/blog/v4.md
Shiki v4.0.0 drops support for Node.js 18 and remove deprecated APIs.
In Shiki, new features are shipped in minor releases progressively, while the major releases are for cleaning up and removing deprecated APIs.
Shiki v4 requires Node.js ≥ 20. Node.js 18 reached End-of-Life in April 2025 and is no longer supported.
If you are running Node.js 18, please upgrade to Node.js 20 LTS or later before upgrading to Shiki v4.
CreatedBundledHighlighterOptions RemovedThe CreatedBundledHighlighterOptions interface (a typo, with "Created" instead of "Create") has been removed. Use CreateBundledHighlighterOptions instead:
import type { CreatedBundledHighlighterOptions } from 'shiki' // [!code --]
import type { CreateBundledHighlighterOptions } from 'shiki' // [!code ++]
createdBundledHighlighter RemovedThe createdBundledHighlighter function (a typo, with "created" instead of "create") has been removed. Use createBundledHighlighter instead:
import { createdBundledHighlighter } from 'shiki' // [!code --]
import { createBundledHighlighter } from 'shiki' // [!code ++]
theme Option Removed in TwoslashFloatingVueThe singular theme option passed to TwoslashFloatingVue (from @shikijs/vitepress-twoslash) has been removed. Use themes instead:
app.use(TwoslashFloatingVue, {
theme: { /* ... */ }, // [!code --]
themes: { /* ... */ }, // [!code ++]
})
twoslash-query-presisted RemovedThe misspelled CSS class twoslash-query-presisted (note the typo — missing the second s) has been removed. Use the correct twoslash-query-persisted instead.