状态与兼容性
版本状态
安装步骤见快速开始。
运行时兼容
npm 包只包含 dist/、NOTICE 与 THIRD_PARTY_LICENSES;从源码构建与本地调试流程见贡献指南。
固定的上游
升级解析器会改变 AST、源码范围与渲染基线,需要重新审查渲染与安全测试。
快照版本
版本变化意味着快照结构不兼容。缓存与跨进程传输时应把版本写入键;恢复函数会拒绝不匹配的数据。
样式与安全基线
- 样式在
react-wikitext/styles.css,需要显式引入;库不设置全局元素样式。 - 内联样式只保留白名单内的排版与外观声明,
url()、expression()、!important等值整条丢弃并产生诊断;不依赖eval,严格 CSP 下如需这些声明生效,按需放行style-src。 - 不使用
dangerouslySetInnerHTML;最终 HAST 由清洗器与 wiki 策略生成。 - 图片默认不加载;只有解析函数授权的地址(或显式开启的插件图片策略)才会成为
<img>。 - 渲染入口依赖 React Context,只能在客户端组件中运行;根入口与
/view的产物顶部已带"use client"指令,宿主侧不需要重复标记。
验证兼容性
仓库提供分层检查:
升级 React、解析器或打包配置后,至少运行 test:consumer 与 test。
许可
- 库以 GPL-3.0-or-later 发布。
wikiparser-node@1.48.1使用同一许可。- 第三方依赖与署名见仓库根目录的
NOTICE与THIRD_PARTY_LICENSES。
在分发包含本库的产物前,请确认你的项目与 GPL-3.0-or-later 的兼容性。