v0 → 1.0 升级
Aiao 目前处于 0.x 阶段(当前发布版本 0.0.21)。按 semver,0.x 期间次版本即可包含破坏性变更。本页说明 1.0 将稳定哪些内容,以及破坏性变更如何被追踪和公布。
版本策略、公开 API 范围与废弃周期见版本与 API 稳定性策略。
1.0 将稳定的范围
1.0 发布后,以下对外表面进入 semver 维护,破坏性变更只能随主版本发布:
- 核心:
@aiao/rxdb的实体装饰器、Repository/查询接口、RxDB生命周期 API - 适配器契约:
@aiao/rxdb-adapter-*的公开构造与选项类型 - 框架绑定:
@aiao/rxdb-{angular,react,vue}的 hooks / provider 公开 API(三端对称) - 插件契约:
@aiao/rxdb-plugin-*的注册入口与选项类型
不在稳定范围内的内容(内部实现、@internal 标注符号、未文档化导出)见稳定性策略。
破坏性变更如何追踪
- 每个公开包维护 API 基线快照(
requirements/api-baseline/<pkg>.json),记录导出符号表面。 - CI 在每次变更时对比基线:未声明的破坏性变更会导致检查失败。
- 确属破坏性的变更必须:更新基线、在 PR 中标注 breaking、并在本页补充升级说明。
0.x 期间的升级建议
在 1.0 之前:
- 锁定次版本:升级前查阅 CHANGELOG。
- 同步升级
@aiao/*:所有包共用同一发布版本号,避免混用不同版本。 - 对照兼容矩阵:确认 Node / 框架 / 适配器版本,见兼容矩阵。
- 跑通类型检查:本项目对公开类型做编译期契约测试;升级后先
tsc验证消费端。
升级步骤(通用)
# 1. 同步升级所有 @aiao/* 到目标版本
pnpm up "@aiao/*@latest"
# 2. 重新安装并构建
pnpm install
pnpm build
# 3. 运行类型检查与测试,确认无破坏
pnpm tsc --noEmit
若升级涉及数据结构变化,配合 Schema 迁移 编写一次性迁移脚本。
版本专属破坏性变更
1.0 正式发布时,本节将逐版本列出破坏性变更与对应迁移步骤。当前 0.x 阶段的变更记录见 CHANGELOG。