Repository navigation
chore(release): prepare Python packages - #57
Conversation
3815660 to
b440aeb
Compare
d540e77 to
6ef7b9c
Compare
xiaoland
left a comment
There was a problem hiding this comment.
本次发布审查结论:版本内容没有发现问题,但暂不合并,因为当前必需检查失败。
Registry 0.3.0 → 0.3.1 与两条 fixed 片段及 CHANGELOG 一致,PR 只消费片段并更新 Registry 版本;Toolkit 和两个 Runtime 的版本不变。Registry 生产部署仍由独立的手动入口负责。
阻碍在 PDM 安装环境。当前 PR 检查 https://github.com/InKCre/ext-reg/actions/runs/40350054734 在 Install frozen dependencies 执行 pdm install --frozen-lockfile 时抛出 TypeError:PDMPyPIClient 不是 Client 的子类,尚未执行项目契约或镜像验证。此前同一 head 6ef7b9c 的检查 https://github.com/InKCre/ext-reg/actions/runs/40350042826 曾通过;两次日志分别安装 unearth 0.18.3 和 0.19.0,后者引入 httpx2。
上游源码也能解释该错误:unearth 0.19.0 的 PyPIClient 继承 httpx2.Client,而 PDM 2.28.0 的 PDMPyPIClient 仍直接调用 httpx.Client.init。参考 https://github.com/frostming/unearth/blob/0.19.0/src/unearth/fetchers/sync.py 与 https://github.com/pdm-project/pdm/blob/2.28.0/src/pdm/models/session.py 。
最小修复方向是在 PDM 引导安装处固定已知兼容的 unearth 0.18.3,并同时处理 Dockerfile 的同类安装入口,再重跑必需检查;也可以另行验证兼容的新 PDM。该依赖属于工具环境,不应为此改动产品依赖锁。当前保留失败证据,没有修改源码或绕过分支保护。
ext-reg #57 的必需检查在安装冻结依赖时失败。PDM 2.28.0 自动装入了 unearth 0.19.0,后者的客户端改用 httpx2,与 PDM 仍直接调用的 httpx.Client 不兼容。 新增 `requirements-pdm.txt` 固定 PDM 2.28.0 与已知兼容的 unearth 0.18.3,并让 CI、预览、清理、生产、包发布和 Docker 镜像使用同一安装入口。本地开发说明也使用该入口,避免项目锁文件无法约束工具依赖的问题。 已在全新隔离环境中成功安装工具,并在 Python 3.13.11 中完成 `pdm install --frozen-lockfile`。本地契约、格式、lint、类型、构建和包安装检查全部通过;本地 Node 为 26,最终使用 Python 3.13 / Node 22 的 PR CI 已在一次性 PostgreSQL 上通过完整仓库检查、实际 Docker 镜像构建及 HTTP/数据库验收。Dependency review 也通过。 此 PR 不直接改变 Registry、Toolkit 或 Runtime 的版本及数据模型。由于 Dockerfile 影响服务镜像交付,按既有门禁补充了一条 Registry fixed 发布片段;控制器会把它与 #57 的其他片段一起编入 0.3.1。合并后等待控制器更新 #57,再对其最新提交重新验证并合并。回滚可以撤销本次工具配置;不执行数据库导入、清理或域名切换。
6ef7b9c to
7a00109
Compare
|
本批发布已完成,#57 已合并,Registry 生产服务已恢复。 修复 PR 为 InKCre/impl-ts#180 和 #67,均通过所需 CI 后合并。修复涵盖兼容的 PDM 引导依赖、全部生产扩展的真实 MF 产物校验,以及 WebExt 使用草稿创建响应。生产预检另外发现失效的 Heroku 授权,已用同一现有主体的有效授权更新 production 同名 secret,没有新建 token 或扩大主体权限。
Registry 部署后再次检查,七个 MF descriptor、manifest ETag、CORS、缓存及 Remote entry 全部正常,Python Local Files wheel 哈希保持不变。#57 合并后的独立包控制器也已成功:运行记录。 另有遗留的展示元数据问题:公开 OpenAPI 的 info.version 仍由旧常量显示为 0.2.0。它不是本次用来判断运行制品的版本依据;已直接在生产 release 的镜像中确认安装版本 0.3.1,并核对精确来源。未为临时检查断言改动 API 合同或生成流程,也未声称所有版本标识已经一致。 |
准备 Registry 0.3.1,消费三条 fixed 发布片段并更新版本与 CHANGELOG。内容包括 lint 范围、生产只读预检和兼容的 PDM 下载依赖;Toolkit 与 Runtime 版本不变。
已先合并发布工具修复 #67。当前 head 7a00109 的 PR 必需检查与控制器触发的检查均通过,涵盖冻结安装、真实 PostgreSQL、构建镜像及 HTTP/数据库验收;Dependency review 通过。diff 仅含已消费片段、版本和更新日志,没有行为源码或迁移变化。
按受保护 main 的正常 squash 流程合并。合并后的包发布和独立 Registry 生产交付继续跟踪,直到公开版本与产物核对完成。