diff --git a/AGENTS.md b/AGENTS.md index 4f55726..f9aad55 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -69,7 +69,8 @@ ## 发版本流程 - 发版本时,先把 `CHANGELOG.md` 的 `Unreleased` 变更整理成新的版本记录,并保留空的 `Unreleased` 标题。 -- **只在发版提交时提升版本号**:`metadata.yaml` 的 `version` 与 `pyproject.toml` 的 `version` 一起改(bumpversion);普通提交不动版本号。 +- **只在发版提交时提升版本号**:`metadata.yaml`、`pyproject.toml`、`uv.lock` 三处 `version` 一起改(bumpversion 已配置这三处);普通提交不动版本号。 +- 发版提交前跑一次 `uv lock`,确认 `uv.lock` 里的依赖与 `study-tool` 版本跟 `pyproject.toml` 一致;有变化就一起提交。 - 提交范围:只提交本次任务的文件(`git add <具体路径>`)。提交前 `git status` 必须只剩本次任务的文件;出现别人的或无关的改动 → 停下问,不顺手提交。 - 提交完成后,给当前提交打最新版本号对应的 tag(如 `v0.0.8`)。打之前 `git tag -l` 查重、`git rev-parse HEAD` 确认,不覆盖已有 tag。 - 发版本流程中不要执行编译、测试或构建,除非用户明确要求;前端改动仍需 `pnpm build` 并把 `static/` 一起提交。 diff --git a/pyproject.toml b/pyproject.toml index b5857a6..4745c7e 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -46,7 +46,7 @@ extend-exclude = ["static", "web"] select = ["E4", "E7", "E9", "F"] ignore = ["F403", "F405"] -# 发版:uv tool run bump-my-version bump patch(工作区需干净),自动改 metadata.yaml、提交并打 tag +# 发版:uv tool run bump-my-version bump patch(工作区需干净),自动改 metadata.yaml / pyproject.toml / uv.lock 三处版本、提交并打 tag [tool.bumpversion] current_version = "0.0.8" commit = true @@ -61,5 +61,12 @@ replace = "version: {new_version}" [[tool.bumpversion.files]] filename = "pyproject.toml" -search = '(?m)^version = "{current_version}"$' +regex = true +search = '(?m)^version = "{current_version}"' replace = 'version = "{new_version}"' + +[[tool.bumpversion.files]] +filename = "uv.lock" +regex = true +search = '(?m)(name = "study-tool"\r?\n)version = "{current_version}"' +replace = '\g<1>version = "{new_version}"'