Skip to content

Releases: yanxulang/yanxu-semver

Release list

言版 1.0.0

Choose a tag to compare

@LiuXiu233 LiuXiu233 released this 16 Jul 05:52
8df1be4

言版 1.0.0

摘要

1.0.0 定义言版的首个稳定公共 API:严格 SemVer 2.0.0 版本处理、明确的范围语法、可预期的预发布策略、结构化失败与有界候选选择。

新增能力

  • 错误详情尝试解析尝试满足
  • 等价是预发布递增
  • 满足选项{「包含预发布」:真} 显式选项。
  • 范围是否合法筛选满足筛选满足选项最小满足
  • 部分尖帽范围与完整/部分端点的连字范围。
  • 默认限制 公开资源边界。

修复与强化

  • 纯数字预发布标识不再转为浮点数,避免超过安全整数后的优先级错误。
  • 带预发布或构建标识的完整版本可直接作为精确范围。
  • 范围并集不再因早期匹配而跳过后续无效分支。
  • 排序从二次复杂度插入排序升级为稳定归并排序。
  • 范围上界和版本递增均检查安全整数溢出。

兼容性与迁移

  • 包名和 0.1.0 的现有公开入口均保留。
  • 普通范围默认不选中预发布;需要 0.1.0 的宽松行为时,使用 满足选项并显式包含预发布。
  • 超长输入和超量候选现在使用 YANBAN_LIMIT 明确拒绝。
  • 建议把 Git 修订固定为 v1.0.0,版本范围使用 ^1.0,并提交 言序.lock

工具链、依赖与权限

  • 最低言序:1.1.6。
  • 第三方包依赖:无。
  • 宿主权限:无;不向顶层应用传递额外权限。
  • 实现:纯言序,无原生扩展。

验证

  • 4 个规格文卷通过,覆盖官方优先级、无效输入、错误代码、范围边界、预发布、筛选、排序稳定性和资源上限。
  • 全部规格文卷通过字节码 VM 执行。
  • 两个示例和性能回归工作负载通过字节码 VM 执行。
  • 全部言序文卷通过格式和静态检查,生成 API 无漂移。
  • 锁图重建与 Release YXB 构建通过。

已知限制

  • 主、次和修订段限于 0..9007199254740991
  • 范围语法不支持括号或隐式逗号交集。
  • 范围交集仅使用 ASCII 空格分词。