Releases: web-infra-dev/rspress
Releases Β· web-infra-dev/rspress
v2.0.3
What's Changed
New Features π
- feat(SEO/custom-head): Make
og:descriptionset automatically by @Karibash in #3115 - feat(theme/tag): support updated tag and turn "new" tag from blue to green by @SoonIter in #3128
Bug Fixes π
- fix(theme/outline): prevent sidebar menu text and icons from overflowing on narrow screens and upgrade @rslib/core by @SoonIter in #3108
- fix(ssg-md): assign useEffect and useLayoutEffect noop value when renderToMarkdownString to match real SSR behavior (renderToString) by @SoonIter in #3121
- fix(ssg-md): should support MF by @SoonIter in #3123
- fix(theme/OverviewGroup): limit max columns from 4 to 3 by @SoonIter in #3127
Document π
- docs: sync Steps, Head, and NoSSR content from zh to en by @SoonIter in #3103
- docs: update quick start to use @rspress/core instead of rspress by @SoonIter in #3106
- docs: expand brand color presets in CSS variables editor by @SoonIter in #3107
- docs(migration): add tip to fix broken links instead of disabling checkDeadLinks by @SoonIter in #3119
- docs: align text layout of live code editor with highlight code block by @KazariEX in #3116
- docs: some docs tag from new to updated by @SoonIter in #3120
- docs: add rendering flow image to SSG-MD guide by @SoonIter in #3122
- docs: add Node.js version requirements to getting started guide by @SoonIter in #3126
- docs: fix example error in plugin-client-redirects by @ruibaby in #3124
Other Changes
- chore(deps): update actions/checkout digest to de0fac2 by @renovate[bot] in #3112
- chore(deps): update all patch dependencies by @renovate[bot] in #3113
- Release v2.0.3 by @SoonIter in #3129
New Contributors
Full Changelog: v2.0.2...v2.0.3
v2.0.2
What's Changed
Bug Fixes π
- fix(theme): Fixed overviewgroup item text wrapping by @elliotcourant in #3085
- fix(plugin-preview): support QR code scanning on mobile devices and first screen SSR by @SoonIter in #3098
Document π
- docs: translate Chinese labels to English by @junyeokk in #3100
- docs: add Tailwind CSS v4 & shadcn/ui guides with e2e tests by @SoonIter in #3099
- docs: add removed packages to migration guide by @SoonIter in #3101
Other Changes
- Release v2.0.1 by @SoonIter in #3083
- chore(deps): update all patch dependencies by @renovate[bot] in #3086
- chore(deps): update dependency @babel/types to ^7.29.0 by @renovate[bot] in #3087
- chore(infra): update Node for development to 24.13.0 by @tats-u in #3084
- chore(deps): update dependency @rstest/core to ^0.8.1 by @renovate[bot] in #3090
- chore(deps): update dependency @microsoft/api-extractor to ^7.56.0 by @renovate[bot] in #3089
- chore(deps): update dependency tm-themes to v1.11.0 by @renovate[bot] in #3093
- chore(deps): update playwright monorepo to v1.58.1 by @renovate[bot] in #3094
- chore(deps): update rspress-plugin-file-tree to ^1.0.4 by @SoonIter in #3096
- chore(deps): update all patch dependencies by @renovate[bot] in #3091
- chore(deps): update dependency react-router-dom to ^7.13.0 by @renovate[bot] in #3092
- Release v2.0.2 by @SoonIter in #3102
New Contributors β€
hugely thanks β€
Full Changelog: v2.0.1...v2.0.2
v2.0.1
What's Changed
New Features π
Bug Fixes π
- fix(create-rspress): add
type: moduleto template package.json - fix(plugin-api-docgen): support HMR by using rsbuild-plugin-virtual-module by @SoonIter in #3080
- fix(theme): add margin-bottom to homefeature and use clsx for homebackground by @SoonIter in #3081
- fix(llms): support multi-version + multi-language in SSG-MD and plugin-llms by @SoonIter in #3076
Other Changes
Full Changelog: v2.0.0...v2.0.1
v2.0.0
Rspress 2.0 π
π¦ Rspress 2.0 is officially released, featuring a brand new theme, AI-native SSG-MD and llms.txt generation, Shiki code highlighting, lazyCompilation, an improved documentation development experience.
Read more π https://rspress.rs/blog/rspress-v2
What's Changed
New Features π
- feat(plugin-algolia): init plugin-algolia by @SoonIter in #1905
- feat(nav): improve dropdown menu interaction by @chenjiahan in #1910
- feat(theme)!: use named export instead of default export, for circular imports by @SoonIter in #1873
- feat!(plugin-shiki): bump shiki to v3, migrate to official transformers by @JounQin in #1672
- feat: expose builder preview result for programming usage by @JounQin in #1944
- feat(plugin-algolia): add plugin-algolia and optimize some DX on customizing Search by @SoonIter in #1909
- feat!: enable
search.codeBlocksby default by @chenjiahan in #1952 - feat(style): add link icon for external links by @chenjiahan in #1964
- feat(cleanUrl)!: shorter link, "/index" -> "/" when
cleanUrls: trueby @SoonIter in #1976 - feat(theme)!: add prefix for isolating tailwind css by @SoonIter in #1990
- feat(config)!: force successful SSG generation, remove
ssg.strictand addssg.fallbackby @SoonIter in #2015 - feat(plugin-shiki): improve line diff colors by @chenjiahan in #2042
- feat(theme-default): add beforeHeroActions and afterHeroActions by @SoonIter in #2057
- feat(ssg)!: remove ssg fallback and add
ssg: falsehint by @SoonIter in #2055 - feat: plugin preview add custom entry option by @LonelySnowman in #2043
- feat(ssg): add printFileSize to SSG, and refactor renderPages to a rsbuildPluginSSG by @SoonIter in #2065
- feat(deps)!: bump to react@19 and react-dom@19 by default by @SoonIter in #2073
- feat: migrate all the packages to "type: module" and pure esm with publint by @SoonIter in #2084
- feat!: drop support for Node 16 by @chenjiahan in #2085
- feat(plugin-llms): init @rspress/plugin-llms by @SoonIter in #2034
- feat(plugin-llms): add include option and only generate for default lang by @SoonIter in #2093
- feat(theme/toc)!: use dynamic toc generation by @ktiays in #2018
- feat: add
localeRedirect: 'only-default-lang'support by @JounQin in #2125 - feat!: enable
dev.lazyCompilation: trueby default by @SoonIter in #2123 - feat: upgrade create-rspress to support
npm create rspress@betaby @SoonIter in #2128 - feat!: support shiki by default, drop prism support by @SoonIter in #2122
- feat: add
_meta.jsonjson schema inrspress/meta-json-schema.jsonby @SoonIter in #2079 - feat(theme/dynamic-toc): add .rspress-toc-exclude escape hatch by @SoonIter in #2136
- feat: update Rsbuild 1.3.18 and set caller name by @chenjiahan in #2139
- feat(theme): expose classname for crawler by @SoonIter in #2161
- feat(core): support md definition syntax url by @SoonIter in #2164
- feat: support
file://protocol andURLfor icon by @JounQin in #2167 - feat(plugin-shiki): upgrade to shiki@^3.4.2 to support langAlias option by @SoonIter in #2177
- feat: add new
CodeBlockRuntimecomponent by @JounQin in #2190 - feat: enable
rehype-rawplugin by default by @JounQin in #2199 - feat(CodeBlockRuntime): add shikiOptions prop by @SoonIter in #2208
- feat(plugin-shiki): add @rspress/plugin-shiki/transformers exports and transformerCompatibleMetaHighlight by @SoonIter in #2209
- feat(CodeBlockRuntime): add onRendered prop by @SoonIter in #2211
- feat: enable
rehype-rawplugin by default by @JounQin in #2213 - feat(mdx): add
markdown.crossCompilerCachefor speed up build process by @SoonIter in #2256 - feat: support async entry by @2heal1 in #2267
- feat(auto-nav-sidebar)!: rename the top level
_meta.jsonto_nav.jsonin order to support single Nav Mode by @SoonIter in #2314 - feat(theme-default): support binary execution commands in
PackageManagerTabscomponent by @artus9033 in #2343 - feat(plugin-llms): multiple configuration for multiple llms.txt by @SoonIter in #2347
- feat(rsbuild)!: enable persistent cache by default via
performance.buildCacheby @SoonIter in #2349 - feat: change
pnpm install packageNametopnpm add packageNameon PackageManagerTabs by @Marukome0743 in #2364 - feat(mdx)!: support File Code Block of ```tsx file="./filename" to write demo code in another file by @SoonIter in #2361
- feat!: expose type
RspressPluginfrom "rspress/core", "@rspress/shared" which is a private package should not be installed by users by @SoonIter in #2360 - feat(auto-nav-sidebar): support custom-link group by @SoonIter in #2379
- feat(ssg): add
ssg.experimentalExcludeRoutePathsby @SoonIter in #2405 - feat(plugin-sitemap): init @rspress/plugin-sitemap by @SoonIter in #2416
- feat!: enable
checkDeadLinksby default and addmarkdown.link.autoPrefixby @SoonIter in #2415 - feat(core)!: routeService ignore "_" prefix files by default by @SoonIter in #2149
- feat(plugin-llms): add LlmsCopyButton by @SoonIter in #2426
- feat(plugin-llms/runtime): add markdownLink for copy by @SoonIter in #2439
- feat: add npm icon to social links by @saseungmin in #2441
- feat(plugin-llms)!: default value for i18n by @SoonIter in #2448
- feat(theme)!: add layer for base.css to support tailwind v4 by @SoonIter in #2477
- feat: generate Open Graph title and type tags by default by @chenjiahan in #2490
- feat(link): support asset link by @SoonIter in #2498
- style(theme): update primary text color for better contrast by @chenjiahan in #2499
- feat(create-rspress): update tsconfig.json by @Timeless0911 in #2509
- feat(theme): Make it possible to mark elements to be excluded when copying by @Karibash in #2512
- feat(plugin-llms): support
mdFiles.remarkPluginsby @SoonIter in #2516 - feat: Add a twoslash plugin by @Karibash in #2527
- feat: enable rspack native watcher by default by @GiveMe-A-Name in #2472
- feat(plugin-twoslash): Improve error handling with enhanced logging by @Karibash in #2544
- feat(auto-nav-sidebar): support _meta.json and _nav.json hmr by @SoonIter in #2549
- feat(twoslash): improve underline styling and adjust popup docs font-size by @chenjiahan in #2554
- feat: export star from react-router-dom by @zoolsher in #2577
- feat(plugin-twoslash): Make the popup that is always displayed not flip its display position by @Karibash in #2580
- feat(theme-default): Make the tab component usable in layouts other than DocLayout by @Karibash in #2589
- feat(them...
v2.0.0-rc.8
What's Changed
New Features π
- feat(theme/HomeHero): add new hero image slot and add interactive to document by @SoonIter in #3051
- feat(plugin-playground)!: change defaultRenderMode to 'pure' and support combined usage with plugin-preview by @SoonIter in #3059
Document π
- docs(css-vars): improve generateThemeCssVariables scope matching for better theme color extraction by @SoonIter in #3058
Other Changes
- chore(deps): update dependency @docsearch/css to ^4.5.3 by @renovate[bot] in #3055
- chore(deps): update dependency @docsearch/react to ^4.5.3 (#3055) by @SoonIter in #3056
- chore(theme/nav): fix hover menu exit transition in nav dropdowns by @Copilot in #3043
- refactor(theme): remove navbar compatibility class names and update Algolia docs by @SoonIter in #3057
- Release v2.0.0-rc.8 by @SoonIter in #3061
Full Changelog: v2.0.0-rc.7...v2.0.0-rc.8
v1.47.1
What's Changed
Bug Fixes π
- fix(plugin-preview): fix React 19 compatibility in preview plugin by @Copilot in #3042
Document π
- docs(v1): add V2 banner to guide users to new documentation by @SoonIter in #3004
- docs(1.x): update create rspress command to use version 1.x
npm create rspress@1.xby @SoonIter in #3044
Other Changes
- chore(create-rspress): update rspress version in template by @SoonIter in #2990
- Release v1.47.1 by @SoonIter in #3060
Full Changelog: v1.47.0...v1.47.1
v2.0.0-rc.7
What's Changed
New Features π
- feat(theme/SvgWrapper): icon field support svg and img icon in HomeLayout by @SoonIter in #3036
- feat(theme/icon): extract IconLink use in LlmsViewOptions by @jaworek in #3046
Bug Fixes π
Document π
- docs: fix custom theme examples and update documentation by @SoonIter in #3035
- docs: improve Overview page and custom-theme related pages by @SoonIter in #3037
- docs: improve documentation and sync zh/en by @SoonIter in #3040
- docs(ssg-md): improve document structure for better usability by @SoonIter in #3047
Other Changes
- chore(deps): update dependency lodash-es to v4.17.23 [security] by @renovate[bot] in #3038
- chore(theme): remove unused icons and update docs by @SoonIter in #3048
- chore(theme): standardize link icon SVG attributes format by @SoonIter in #3049
- chore(deps): upgrade rsbuild to 2.0.0-alpha.2 by @Copilot in #3050
- Release v2.0.0-rc.7 by @SoonIter in #3052
New Contributors
Full Changelog: v2.0.0-rc.6...v2.0.0-rc.7
v2.0.0-rc.6
What's Changed
New Features π
- feat(core): auto-extract description from first contentful line in extractPageData by @SoonIter in #3006
- feat(theme/nav): Added fancy transition to nav background by @elliotcourant in #3017
- feat(theme): make NavTitle component ejectable by @SoonIter in #3022
- feat(core): add
markdown.extractDescriptionconfig by @SoonIter in #3023 - feat(core): move Llms runtime components from plugin-llms to core/theme by @SoonIter in #3026
- feat(core): add logoHref config option by @SoonIter in #3012
- feat(ssg-md)!: add llmsUI config option to automatically show LlmsCopyButton and LlmsViewOptions when set
llms: trueby @SoonIter in #3029
Performance π
Bug Fixes π
- fix(theme): fix inline code style in Callout when code is direct child of content by @SoonIter in #2997
- fix(config/types): defineConfig should support asyncFn by @SoonIter in #3000
- fix(core): improve i18n missing keys warning with configuration hints by @SoonIter in #3030
- fix(ssg): collapse experimentalExcludeRoutePaths log when too many routes are ignored by @SoonIter in #3032
Document π
- docs: add troubleshooting tip for @rspress/core/theme-original export errors in migration guide by @SoonIter in #2984
- docs(guide): rewrite SSG documentation with comprehensive explanations by @SoonIter in #2985
- docs(ssg): add 404.html to output structure and troubleshooting for page refresh 404 by @SoonIter in #2987
- docs: improve conventional route documentation with better examples and best practices by @SoonIter in #2995
- docs: add Callout component documentation by @SoonIter in #2998
- docs: add tip for pageType: doc-wide usage with outline: false by @SoonIter in #3005
- docs: add frontmatter description to guide docs (zh & en) by @SoonIter in #3007
- docs: Update documentation and improve frontmatter references by @SoonIter in #3009
- docs: improve static assets documentation structure and clarifiy public folder usage by @SoonIter in #3011
- docs: simplify CSS modification state management by @SoonIter in #3014
- docs(zh): rename "ι’θ§ι‘΅" to "Overview ι‘΅" for terminology consistency by @SoonIter in #3016
- docs(theme): refactor home page and component documentation by @SoonIter in #3015
- docs: remove URL parameters as switches section from custom page docs by @SoonIter in #3024
- docs(description): add description frontmatter to ui documentation files by @SoonIter in #3008
Other Changes
- chore(deps): update all patch dependencies by @renovate[bot] in #2991
- chore(deps): update dependency react-router-dom to ^7.12.0 by @renovate[bot] in #2992
- chore(deps): update pnpm to v10.28.0 by @renovate[bot] in #2993
- chore(deps): update shiki monorepo to ^3.21.0 by @renovate[bot] in #2994
- chore(deps): upgrade @rslib/core 0.19.2 by @SoonIter in #3002
- refactor(plugin-rss)!: requires the
ssgconfig, and remove_htmlfield by @SoonIter in #3003 - refactor(core): replace @rspress/mdx-rs and html-to-text with @mdx-js/mdx createProcessor for toc and searchIndex generation by @SoonIter in #3001
- chore(deps): update all patch dependencies by @renovate[bot] in #3018
- chore(deps): update actions/setup-node action to v6.2.0 by @renovate[bot] in #3019
- chore(deps): update dependency cspell to ^9.6.0 by @renovate[bot] in #3021
- chore(deps): update dependency @rsdoctor/rspack-plugin to v1.5.0 by @renovate[bot] in #3020
- chore(ssg):
experimentalExcludeRoutePathswarning level to info by @SoonIter in #3025 - Release v2.0.0-rc.6 by @SoonIter in #3033
Full Changelog: v2.0.0-rc.5...v2.0.0-rc.6
v2.0.0-rc.5
What's Changed
New Features π
- feat(theme): support clickable badge in HomeHero by @SoonIter in #2969
- feat(ssg-md): add SSG-MD support to OverviewGroup and FallbackHeading components (Vibe Kanban) by @SoonIter in #2966
Bug Fixes π
- fix: use layout effect for theme sync by @SoonIter in #2961
- fix(theme): use modern sidebar CSS to respect system scrollbar settings by @SoonIter in #2973
- fix(theme/nav): Fixed small layout shift on scroll by @elliotcourant in #2980
- fix(theme): Fixed step counter text alignment by @elliotcourant in #2981
Document π
- docs: update links from rspack-contrib to rstackjs by @chenjiahan in #2953
- docs: add migrate from V1 by @SoonIter in #2954
- docs: add missing Layout slots (beforeNavMenu, afterNav) and add Layout Slots heading (Vibe Kanban) by @SoonIter in #2964
- docs: remove work-in-progress warning from CSS variables documentation (Vibe Kanban) by @SoonIter in #2972
- docs: add prettier-ignore to wrapCode examples in code-blocks documentation by @SoonIter in #2974
- docs: improve plugin-llms warning about implementation limitations and SSR compatibility by @SoonIter in #2975
- docs: add rspress-plugin-file-tree and use tree syntax for file tree code blocks by @SoonIter in #2976
- docs: update auto-nav-sidebar to recommend index.mdx for dir, index convention by @SoonIter in #2978
- docs: Update introduction and index for Rspress V2 by @SoonIter in #2971
- docs: add documentation for markdown.crossCompilerCache option by @SoonIter in #2979
Other Changes
- chore(deps): update all patch dependencies by @renovate[bot] in #2957
- chore(deps): update dependency @rslib/core to v0.19.1 by @renovate[bot] in #2959
- chore(deps): update dependency @unhead/react to ^2.1.1 by @renovate[bot] in #2960
- chore(deps): update dependency @rsbuild/core to ~1.7.1 by @renovate[bot] in #2958
- refactor(theme/dark): simplify useThemeState hook and avoid dark mode flash by @SoonIter in #2955
- refactor!: merge @rspress/runtime into @rspress/core package and remove @rspress/runtime package by @SoonIter in #2935
- chore(core): expose routePathToMdPath utility in runtime by @SoonIter in #2967
- chore(deps): update rspress-plugin-file-tree to ^1.0.3 by @SoonIter in #2977
- Release v2.0.0-rc.5 by @SoonIter in #2982
Full Changelog: v2.0.0-rc.4...v2.0.0-rc.5
v2.0.0-rc.4
What's Changed
New Features π
- feat(ssg-md): support Overview and HomeLayout by @SoonIter in #2933
- feat(core): add import.meta.env.SSR and import.meta.env.SSG_MD by @SoonIter in #2948
- feat(theme/nav): support multiple level nested navigation items by @SoonIter in #2943
- feat(nodejs)!: drop support of node 18, upgrade engines to
node >= 20.9.0by @SoonIter in #2924
Bug Fixes π
- fix(core):
Iterator#mapis only available on Node 22+ by @JounQin in #2923 - fix(theme/Sidebar): sidebar should also listen location changes by @JounQin in #2922
- fix(theme): improve SSR compatibility by @SoonIter in #2934
- fix: hover group links should also calc active with matchNavbar by default by @JounQin in #2930
- fix(theme/Nav): render empty nav items correctly not link by @JounQin in #2929
- fix(theme/Layout): render
beforeNavMenucorrectly by @JounQin in #2822 - fix(ssg-md): use .md links instead of .html in Overview SSG-MD mode by @SoonIter in #2944
- fix(plugin-algolia): upgrade docsearch and fix the css regression by @SoonIter in #2946
- fix(theme/Codeblock): revert the code shadow and enhance the separator line by @SoonIter in #2931
- fix(plugin-algolia): should remove base by @SoonIter in #2949
Document π
- docs: Add wrap vs eject guides for customizing Rspress theme by @Copilot in #2906
- docs: upgrade custom-theme and add wrap and eject by @SoonIter in #2925
- docs: upgrade llms.txt and ssg-md by @SoonIter in #2927
- docs: fix og-image cjk wrong font and title slice logic by @SoonIter in #2919
- docs: typo translate by @SoonIter in #2932
- docs: fix the shiki highlighter ansi "/" by @SoonIter in #2947
- docs: add SSG vs SSG-MD comparison table by @SoonIter in #2950
Other Changes
- chore(deps): update all patch dependencies by @renovate[bot] in #2938
- chore(deps): update dependency @docsearch/css to ^4.4.0 by @renovate[bot] in #2939
- chore(deps): update dependency @docsearch/react to ^4.4.0 by @renovate[bot] in #2941
- chore(deps): update dependency @rsdoctor/rspack-plugin to v1.4.0 by @renovate[bot] in #2942
- Release v2.0.0-rc.4 by @SoonIter in #2936
Full Changelog: v2.0.0-rc.3...v2.0.0-rc.4