v0.9.3
修复
-
--version与 MCP 的 serverInfo.version 报的是旧版本号(装着 0.9.2 却显示 0.9.1)。
根因是包里还有第四份硬编码版本号:python/src/gitea_toolkit_mcp/__init__.py里写着
__version__ = "0.9.1",注释还注明「由scripts/bump-version.mjs保持同步」——
而那个脚本只改 package.json / npm 包 / pyproject.toml,根本不碰这个文件。
现在改为从已安装分发包的元数据里读(importlib.metadata),这份副本直接删掉:
少一份副本,就少一处「能忘记同步」的地方。抓到它的方式值得记下来:从 PyPI 真实装一遍再跑(
uvx gitea-toolkit-mcp@0.9.2 --version),
而不是只看构建产物的元数据 —— 元数据是对的,跑起来才是错的。
工程
scripts/bump-version.mjs补上python/pyproject.toml的同步。 该文件里本就写着
「版本由本脚本同步」,实际并没有 —— 于是 PyPI 包会悄悄停在旧版本号上,而发布时
没有任何机制会报错。npm run check:changelog新增「三个发布物(扩展 / npm 包 / PyPI 包)版本号必须一致」。
已反向验证:把pyproject.toml改回旧版本会立刻被拦下,并给出「跑npm run version:patch
会一起改」的提示。- 补记一处首次发 PyPI 才暴露的坑:
python/pyproject.toml里的Repository原写成
git+https://…/….git—— 那是 npm 的写法(npm 那边反而要求带git+前缀),
而 PyPI 的 core metadata 只认普通 URL,首次上传被 400 直接拒收。
同一份仓库地址在两个生态里写法相反,已在文件里注明。
完整变更对比:v0.9.2...v0.9.3
发布通道
| 通道 | 本次结果 |
|---|---|
| Open VSX | 已发布 ✅ |
| VS Code Marketplace | 已发布 ✅ |
npm · npx @echo-note/gitea-toolkit-mcp |
已发布 ✅ |