Skip to content

Releases: yanxulang/yanju

Release list

言据 1.2.0

Choose a tag to compare

@LiuXiu233 LiuXiu233 released this 16 Jul 05:16
8d5c206

言据 1.2.0

摘要

1.2.0 在保持 .yj 格式 v1 和 1.1 公共 API 兼容的前提下,补齐不可信输入资源门禁、安全补丁重放以及 HTTP/数据库集成边界。

新功能

  • 解析受限校验受限读取受限:限制 Unicode 字符数、容器深度和全树容器项数。
  • 流式解析器.限制:对每个换行帧使用相同资源策略,并在未结束帧持续增长时及时拒绝。
  • 应用差异 / 应用补丁:重放可序列化差异,校验路径与旧值,冲突返回 YJ_PATCH_CONFLICT
  • 媒体类型版本媒体类型是言据媒体类型:明确言据 v1 HTTP 内容协商。
  • 数据库文本自数据库文本自规范数据库文本:统一 TEXT/CLOB 规范存储边界。

修复与强化

  • 未知或无效资源限制配置不再静默忽略。
  • 规范文本和普通等价格式可以显式区分。
  • 源码统一经过言序格式化器,并由 CI 检查格式与生成 API 漂移。

兼容性与迁移

  • 无破坏性变化;现有 1.0/1.1 调用无需修改。
  • 推荐把依赖修订从可变分支改为 v1.2.0,版本范围使用 ^1.2
  • 解析不可信输入时建议从 解析 迁移到带业务上限的 解析受限
  • 数据库中已有等价但非规范文本仍可由 自数据库文本 读取;需要审计时使用 自规范数据库文本

工具链、依赖与权限

  • 最低言序:1.1.6。
  • 第三方包依赖:无。
  • 内存、HTTP 媒体类型和数据库文本转换不申请权限。
  • 读取写入读取受限 等文件接口需要顶层应用授予相应文件路径;依赖本身不向顶层传递额外授权。

验证

  • 9 个规格文卷全部通过,覆盖解析、往返、转换、Schema、路径、Patch、资源限制、流、HTTP 与数据库边界。
  • 所有规格文卷通过字节码 VM 执行。
  • 全部源码、测试、示例和基准通过静态检查与格式检查。
  • 包示例锁图已由言序 1.1.8 重建并通过包运行。
  • Release YXB 构建通过。

已知限制

  • 媒体类型尚未向 IANA 注册。
  • TOML 转换只覆盖不会静默丢失的配置子集。
  • 换行流每行一个值,不支持把美化多行文档直接作为单帧。
  • 数值继续遵守格式 v1 的安全十进制范围。