v16.2.1-canary.45
- Allow overriding outputHashSalt in modifyConfig: #92856
- Turbopack: Use lld again on ARM64 glibc Linux: #92860
- [ci]: add workflow to bump canary after backport: #92801
- turbopack: cache TransformPlugin in narrow-scoped turbo-tasks functions: #92842
Huge thanks to @bgw, @ztanner, @sokra, and @mischnic for helping!
cherry-markdown@0.11.0
- refactor: 升级 CodeMirror 到 v6 @RSS1102(#1586)(
c2b9e9e)- 将 CodeMirror 从 v5 升级到 v6,重构 CM6Adapter 适配器
- 优化特殊字符标记处理性能
- 修复选区映射、正则处理、Bubble 事件等问题
- 支持 vim 模式懒加载(@replit/codemirror-vim)
- refactor: 优化构建配置并增强 stream 模式 @RSS1102(#1653)(
dbddcc0)- feat(editor): 重构
codeMirror模块加载方式为依赖注入,提升架构灵活性,stream 模式下不加载codeMirror - refactor(build): 优化构建配置,仅支持 UMD/ESM 模式
- feat(editor): 重构
- fix: 恢复扩展 PrismJS 支持的语言列表 @RSS1102(#1637)(
253d68f) - fix: 当
toolbar和toolbarRight都为false或空数组时,隐藏顶部工具栏 @RSS1102(#1591)(8216cfb) - fix: #1649 增强 refreshPreviewer 函数,增加 clearEngineCache 接口 @sunsonliu(#1674)(
b8e9459) - fix: #1610 带
~的超链接,引用显示后,点击的超链接变成了~T@sunsonliu(#1611)(c658115) - fix: #1593 首次粘贴 HTML 内容时,cherry 会默认把 HTML 转成 Markdown,但提示的却是 TEXT @sunsonliu(#1612)(
3d4e6bc) - fix: #1331 当使用 katex 渲染公式时,预览区公式操作丢失了 @sunsonliu(#1646)(
9965e48) - fix: 优化清理虚拟光标的逻辑 @sunsonliu(#1667)(
b6d6460) - fix: 修复 addons 构建缺少环境变量替换导致运行时报错的问题 @RSS1102(#1693)(
1bbdab7) - fix(theme): 修复暗黑主题下 TOC 收起功能失效问题 @RSS1102(#1668)(
e51ae4b)- 修复暗黑主题下 TOC(目录)收起功能失效的问题
- 修改深海主题下 TOC 指示器颜色以提升可读性
- 该问题由 PR #1464 引入,从 v0.10.1 开始受影响,影响所有后续版本
- fix: 修复预览区图片编辑的多个问题 @sunsonliu(#1687)(
1648dc0)- 连续修改图片属性时位置偏移
- 清除图片扩展参数后残留多余空格
- 预览区操作图片时左侧编辑器工具栏意外弹出
- 修改图片对齐方式后选择框未跟随图片位置
- fix: 将 mermaid 日志级别(
logLevel)调整为fatal(依然是5) @RSS1102(#1696)(0a3a631) - fix: 优化 mermaid 图的预览区交互效果 @sunsonliu(#1675)(
76f156f) - fix: 从渲染后的公式节点读取源码,避免公式工具条复制时出现正则误匹配 @Seeridia(#1648)(
c1957e3) - fix: 将截图导出格式从 JPEG 改为 PNG @RSS1102(#1609)(
1e8308b) - fix: #1570 修复点击脚注列表里的标号时有 JS 报错的问题 @sunsonliu(#1573)(
f5e01e9) - fix: #1622 表格左右滚动影响到图表的问题 @sunsonliu(#1629)(
033ca64) - fix: 优化拖拽预览区宽度的逻辑,使其更稳定 @sunsonliu(#1580)(
755dd8c) - fix: 修复表格同一个单元格内无法连续输入
|的问题 @sunsonliu(#1588)(5d2d0be) - fix: 移除工具栏高度动态更新逻辑,简化任务栏高度变量管理 @Seeridia(#1585)(
2478d68) - fix: image syntax compatibility, Fixes #1554 @lyngai(#1555)(
a275692) - fix: 1、优化 demo 的菜单配置;2、字数统计增加起始状态 @sunsonliu(#1659)(
ba77f20) - fix(echarts-plugin): support function syntax in echarts codeblock option parsing @ethanflin(#1678)(
d098abd)
- feat: #1549 流式渲染场景,优化代码块自动闭合的时机并优化行内公式在表格里也可以自动闭合 @sunsonliu(#1640)(
98d0f88) - feat: 优化右侧悬浮目录的更新机制 @sunsonliu(#1620)(
b5dbc94) - feat: #1632 表格中也支持段落公式,段落公式按行内公式渲染 @sunsonliu(#1634)(
77815d1) - feat: #1600 提高超大文档的性能 @sunsonliu(#1615)(
e24d7cd) - feat: 优化表格图表刷新机制,更新 demo 文档 @sunsonliu(#1658)(
1c2b4ea) - feat: #1691 增加可视化配置生成器(对应版本:0.10.3) @sunsonliu(#1692)(
827ccf9) - feat(mermaid): 添加 mermaid 代码块源码/预览切换工具栏功能 @RSS1102(#1670)(
c0fbc35)- 新增 mermaid 代码块的源码/预览切换工具栏,支持在渲染图和源码之间快速切换
- 新增
engine.syntax.codeBlock.mermaid.showSourceToolbar配置项,可控制是否显示切换工具栏 - 支持多主题适配(默认/暗黑/深海主题)
- feat(mermaid): 支持 mermaid 图表尺寸编辑和对齐 @Jie-echo(#1641)(
8b190e9)- 新增 mermaid 图表尺寸拖拽调整功能
- 支持 mermaid 图表对齐方式设置(左对齐、居中、右对齐、左浮动、右浮动)
- feat: onPaste 粘贴的回调函数支持异步回调 #1595 @sunsonliu(#1614)(
3110c04) - feat: #1621 增加和丰富统计信息 @sunsonliu(#1628)(
d624871) - feat: 新增 echarts 代码块插件,支持直接渲染 echarts @sunsonliu(#1656)(
233834d) - feat(sidebar): 添加侧边栏列表样式和动态高度支持 @RSS1102(#1587)(
e069033) - feat: 支持
onClickPreview返回false阻止后续处理 @RSS1102(#1625)(6cf9b7d) - feat: 完善 Sublime 风格快捷键 @sunsonliu(#1685)(
8ca33f1)- 新增在上方插入空行、选中括号内容、选中所有相同文本等快捷键
- 补全 Mac 侧绑定,修复多光标滚动异常
- refactor(core): 统一外部依赖获取方式,优化全局类型声明 @RSS1102(#1672)(
52c42da)- 统一 echarts、mermaid、katex、MathJax 等外部依赖的获取逻辑,SSR 环境下安全返回
undefined,不再直接访问window对象 global.d.ts移除对 mermaid/katex 等第三方包的 import,用户引入类型时不再需要安装未使用的可选依赖- 新增
window.Cherry、window.CherryStream、window.CherryEngine、window.CherryCodeBlockMermaidPlugin、window.CherryCodeBlockPlantumlPlugin全局类型声明
- 统一 echarts、mermaid、katex、MathJax 等外部依赖的获取逻辑,SSR 环境下安全返回
- build(types): 重构模块声明文件与构建流程 @RSS1102(#1680)(
8f776a7)- 新增
types/modules.d.ts,为 CSS 样式文件和 addon 插件提供完整的模块类型声明,解决 TypeScriptnoUncheckedSideEffectImports下导入报错的问题 - 构建产物自动注入三斜线引用,消费者无需额外配置即可获得类型支持
- 新增
- chore: node >=
20.x@RSS1102(#1688)(03fa646) - chore:
@types/node升级为@20.10.6@RSS1102(#1579)(68017a4) - chore: 将 release build 的 Node 版本设置为
18.x@RSS1102(#1559)(b559a2a) - chore: 升级 typescript 至 v6.0.2,升级 mermaid 可选依赖至 ^11.14.0 @RSS1102(#1671)(
54d8692)- typescript: 4.7.2 → 6.0.2(构建工具升级,对用户无影响)
- 全项目统一 TS 版本,新增 tsconfig.base.json 公共配置
- 移除 @types/d3-dispatch(typescript 6 原生支持新语法)
- 适配 typescript 6 兼容性:ignoreDeprecations、rootDir、strict 模式优化
- 修复 logLevel 类型、clearTimeout 类型、process/env、closest polyfill 等 TS 错误
- mermaid(optionalDependencies): 9.4.3 → ^11.14.0
- mermaid 是图表渲染可选依赖,用户按需安装即可使用流程图/时序图等代码块功能
- 兼容 v9/v10/v11 多版本 API,自动检测运行环境选择渲染方式
- style: 增加主题和代码块主题的图标 @sunsonliu(#1547)(
c15f54f)
@cherry-markdown/client@0.3.0
- feat: 优化客户端功能,增加图表、公式、拼音等功能的支持 @sunsonliu(#1548)(
bc917e2)
- chore:
@types/node升级为@20.10.6@RSS1102(#1579)(68017a4) - Updated dependencies [
03fa646,253d68f,b8e9459,c2b9e9e,c658115,98d0f88,3d4e6bc,9965e48,b5dbc94,8ca33f1,77815d1,b6d6460,1bbdab7,e51ae4b,1648dc0,0a3a631,8f776a7,76f156f,c1957e3,1e8308b,f5e01e9,e24d7cd,68017a4,1c2b4ea,827ccf9,c0fbc35,8b190e9,3110c04,d624871,233834d,b559a2a,033ca64,52c42da,755dd8c,c15f54f,5d2d0be,2478d68,e069033,a275692,54d8692,ba77f20,6cf9b7d,d098abd,dbddcc0,8216cfb]:- cherry-markdown@0.11.0
cherry-markdown-vscode-plugin@0.2.0
- chore:
@types/node升级为@20.10.6@RSS1102(#1579)(68017a4) - Updated dependencies [
03fa646,253d68f,b8e9459,c2b9e9e,c658115,98d0f88,3d4e6bc,9965e48,b5dbc94,8ca33f1,77815d1,b6d6460,1bbdab7,e51ae4b,1648dc0,0a3a631,8f776a7,76f156f,c1957e3,1e8308b,f5e01e9,e24d7cd,68017a4,1c2b4ea,827ccf9,c0fbc35,8b190e9,3110c04,d624871,233834d,b559a2a,033ca64,52c42da,755dd8c,c15f54f,5d2d0be,2478d68,e069033,a275692,54d8692,ba77f20,6cf9b7d,d098abd,dbddcc0,8216cfb]:- cherry-markdown@0.11.0
2.14.3
- Add webp export format to plugin types Github #8870
- Add minor adjustments to the auth events Github #9027
- Use shared singleton containers for React portals to reduce DOM growth Github #8957
- Fix component "broken" after switch variant Taiga #12984
- Fix variants corner cases with selrect and points Github #8882
- Fix dashboard navigation tabs overlap with projects content when scrolling Taiga #13962
- Fix text editor v1 focus Taiga #13961
- Fix highlight on frames after rename Github #8938
- Fix TypeError in sd-token-uuid when resolving tokens interactively Github #8929
- Fix path drawing preview passing shape instead of content to next-node
- Fix swapped arguments in CLJS PathData
-nthwith default - Normalize PathData coordinates to safe integer bounds on read
- Fix RangeError from re-entrant error handling causing stack overflow Github #8962
- Fix builder bool styles and media validation Github #8963
- Fix "Move to" menu allowing same project as target when multiple files are selected
- Fix crash when index query param is duplicated in URL
- Fix wrong extremity point in path
calculate-extremitiesfor line-to segments - Fix reversed args in DTCG shadow composite token conversion
- Fix
inside-layout?passing shape id instead of shape toframe-shape? - Fix wrong
mapcatcall incollect-main-shapes - Fix stale accumulator in
get-children-in-instancerecursion - Fix typo
:poditionin swap-shapes grid cell
create-rari-app@0.5.0
- 01774ee0 chore(deps): upgrade dependencies and remove deprecated eslint plugin
- b9daaad9 feat(rsc): implement streaming bridge and hexadecimal chunk encoding
- 182a0458 feat(rsc): optimize boundary update streaming with progressive HTML rendering
Full Changelog: https://github.com/rari-build/rari/compare/create-rari-app@0.4.29...create-rari-app@0.5.0
rari@0.12.0
- f4e44142 chore(rari): bump optional dependencies to 0.12.0
- aa3e6818 feat(router): simplify navigation handler and fix response URL handling
- 3adf7948 feat(rsc): improve client reference detection and navigation abort handling
- 16d6769f feat(rsc): add export name tracking to client component loader
- 90e2da5b feat(rsc): improve client component resolution and error handling
- a76c718b feat(rsc): enhance client component registration and reference parsing
- 27965562 feat(rsc): add export name tracking to component registry
- d31c88dd test(rsc): add comprehensive path normalization tests for component registry
- ce1ffd12 fix(rsc): improve component registry cleanup and streaming initialization
- 8363e4f0 revert: back to working state at 55be557f
- 29b1df0c fix(rsc): improve component registry cleanup and streaming initialization
- 55be557f fix(rsc): normalize path separators in component registry operations
- d182b2d7 fix(rsc): normalize path separators in component resolution and improve error handling
- f2255f0d fix(rsc): normalize path separators in server build component ID resolution
- f6a1ec54 fix(rsc): add fallback resolution for non-normalized component IDs
- 507cc9cd fix(rsc): normalize path separators in client component resolution
- 5c0e2bd3 refactor(rsc): extract render generation retrieval and import row parsing
- 7e2d7f5e chore(deps): upgrade dependencies and improve streaming cleanup
- 997bb218 feat(rsc): improve wire format validation and streaming cleanup
- b9daaad9 feat(rsc): implement streaming bridge and hexadecimal chunk encoding
- 71bde254 feat(rsc): refactor wire format encoding and streaming bridge initialization
- bf011cbf feat(rsc): implement hexadecimal row reference parsing and streaming bridge
- ccb0a0b4 feat(rsc): implement hexadecimal row ID encoding for wire format
- 77bc9b83 feat(rsc): refactor streaming and RSC rendering with React Flight client integration
- 182a0458 feat(rsc): optimize boundary update streaming with progressive HTML rendering
Full Changelog: https://github.com/rari-build/rari/compare/rari@0.11.0...rari@0.12.0
v0.12.0
- af94ff84 chore(rari): bump version to 0.12.0
- 3adf7948 feat(rsc): improve client reference detection and navigation abort handling
- 90e2da5b feat(rsc): improve client component resolution and error handling
- a76c718b feat(rsc): enhance client component registration and reference parsing
- d31c88dd test(rsc): add comprehensive path normalization tests for component registry
- dc028f61 fix(rsc): improve component registry cleanup and hex digit validation
- 127343b0 refactor(rsc): extract path normalization into reusable normalize_id method
- c20dd60b fix(rsc): normalize path separators in dependency graph lookups and fix hex digit validation
- ce1ffd12 fix(rsc): improve component registry cleanup and streaming initialization
- 8363e4f0 revert: back to working state at 55be557f
- b3b26cdd fix(rsc): extract path normalization into reusable method
- f1f0b560 fix(rsc): normalize path separators in dependency graph lookups and fix hex digit validation
- 29b1df0c fix(rsc): improve component registry cleanup and streaming initialization
- 55be557f fix(rsc): normalize path separators in component registry operations
- d182b2d7 fix(rsc): normalize path separators in component resolution and improve error handling
- 7f1ed35b fix(rsc): improve render generation error handling and simplify test timeouts
- 167f15a3 fix(rsc): normalize path separators in component registry operations
- 090cce42 fix(rsc): normalize path separators in promise resolver
- 23c70276 fix(rsc): normalize path separators in wire format serializer
- 146d0205 fix(rsc): normalize path separators in component ID generation
- 5c0e2bd3 refactor(rsc): extract render generation retrieval and import row parsing
- 7e2d7f5e chore(deps): upgrade dependencies and improve streaming cleanup
- 997bb218 feat(rsc): improve wire format validation and streaming cleanup
- 01774ee0 chore(deps): upgrade dependencies and remove deprecated eslint plugin
- b9daaad9 feat(rsc): implement streaming bridge and hexadecimal chunk encoding
- 71bde254 feat(rsc): refactor wire format encoding and streaming bridge initialization
- bf011cbf feat(rsc): implement hexadecimal row reference parsing and streaming bridge
- ccb0a0b4 feat(rsc): implement hexadecimal row ID encoding for wire format
- 77bc9b83 feat(rsc): refactor streaming and RSC rendering with React Flight client integration
- 182a0458 feat(rsc): optimize boundary update streaming with progressive HTML rendering
Full Changelog: https://github.com/rari-build/rari/compare/v0.11.0...v0.12.0