Skip to content

Releases: yanxulang/yanxu-html

Release list

1.0.0

Choose a tag to compare

@LiuXiu233 LiuXiu233 released this 17 Jul 21:00
5d1481c

言页 1.0.0 发布说明

发布日期:2026-07-18

言页 1.0.0 建立服务端安全 HTML 构造与增量渲染的首个稳定契约。稳定版保留 0.1 的文字、属性、元素、组件、文档和显式原始内容模型,并补齐默认拒绝策略、片段、受控扩展、资源预算、流式写出、结构化错误、文档和发布门禁。

破坏性变化

  • 包名从yanxu-html改为言页;导入改为包:言页
  • 稳定依赖范围为^1.0,固定发布标签v1.0.0
  • 最低言序版本从 1.1.5 提高到 1.1.12。
  • 普通元素拒绝脚本、样式、嵌入、SVG/Math 子语言标签。
  • 普通属性拒绝事件、样式、srcdoc、刷新、响应图和ping等高风险上下文。
  • 元素拒绝大小写不敏感的重复属性。
  • 更多 URL 属性进入统一协议和控制字符检查。

迁移步骤见 MIGRATION.md

新能力

  • HTML片段片段添子和快照式各子节点
  • HTML扩展节点与只能经受控回调写出的可信生成器;
  • 默认限制规范限制
  • 渲染受限与五维资源预算;
  • 真正逐片回调的流式渲染及节点/字符/片段统计;
  • 错误详情稳定代码协议;
  • 尝试渲染成功/失败结果信封;
  • 构造输入列、属性快照和子节点快照隔离;
  • 完整 HTML5 页面快照与可校验性能负载。

安全默认值

普通文字和文字属性始终转义。URL 显式协议只允许http:https:mailto:tel:。默认限制为:

最大深度       64
最大节点       10000
最大属性       256
最大输出字符   4194304
最大输出片段   100000

原始继续作为兼容的显式信任入口;扩展适合多片可信生成器。两者不清洗内容,但都受字符与片段预算约束。

验证结果

发布版本使用言序 1.1.12 验证:

  • 7/7 规格文件通过;
  • 根源码、测试、示例和基准静态检查通过;
  • 组件示例和增量页面示例运行通过;
  • 根包、示例和基准 Release YXB 构建通过;
  • 示例、基准和根锁可离线验证;
  • 机器 API 清单包含 30 个顶层声明和 32 个公开类成员;
  • 文档名称覆盖门禁通过;
  • 包清单保持零文件、零网络、零监听、零环境、零进程和零原生扩展权限。

50 轮基准的确定性结果:

路径 字符数 片段数
完整渲染 145600 不适用
增量渲染 145600 19050

毫秒数只用于同环境回归,不作为跨平台承诺。

兼容性

  • 言序:>=1.1.12
  • 清单格式:2;
  • 第三方依赖:无;
  • 核心实现:纯言序;
  • 已验证本地环境:macOS ARM64;
  • CI 环境:Linux x86-64。

详见 COMPATIBILITY.md

已知限制

  • 不解析或清洗已有 HTML;
  • 不支持脚本、样式、SVG/MathML 子语言构造;
  • URL 策略不替代主机与业务授权;
  • 流式回调同步执行,不提供异步背压或中途回滚;
  • 字符预算不是编码后的字节预算;
  • Windows 是纯语言兼容目标,本发布不声称独立运行验收。

本版本按 MIT 许可证发布。