Releases: yanxulang/yanju
Releases · yanxulang/yanju
Release list
言据 1.2.0
言据 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 的安全十进制范围。