SuperAPI AI 工具集

update-project-version

部署与运维

查看项目

更新于 10-16 07:24

技能介绍

用途:在修改 NeMo Fabric 版本(含打包用的预发布或构建元数据变体)时,统一更新各语言与包管理器的版本元数据。

主要能力:以 Cargo.toml 的 [workspace.package].version 为唯一事实来源,同步 Rust 工作区版本、Python 与 TypeScript 包元数据、内部 Python 依赖固定版本、适配器元数据及锁文件。

使用方式:先读取当前版本并确定 Cargo、Python、TypeScript 目标版本字符串,然后运行 just set-version <cargo-version>。该配方会保留 Cargo 与 TypeScript 的规范化 SemVer,转换为 PEP 440 供 Python 使用,并更新 Cargo.toml、各 setuptools 项目的 project.version、内部 nemo-fabric-* 精确版本要求、TypeScript 的 package.json 与 package-lock.json,以及通过 just lock-python 更新各 uv.lock。

验证:用 rg 检查 Cargo 版本字段、Python 显式版本与内部固定版本、runtime 是否仍为 dynamic、TypeScript 包与锁文件根版本;运行 cargo check --workspace --locked、just build-python、just test-python、just wheels、just pack-typescript 和 git diff --check。

限制与避免:不要只改 Cargo.toml 而遗漏 setuptools 包;不要给 sdk/python/nemo-fabric-runtime/pyproject.toml 添加字面版本(由 Maturin 管理);不要漏掉内部依赖固定版本、Cargo.lock、根 uv.lock 或各项目 uv.lock;不要只改 TypeScript 清单而漏掉 npm 锁文件根条目;避免全仓库盲目替换版本字符串。