Repository navigation
⬆️ feat: support Python 3.15 and drop 3.10 - #114
Conversation
| - uses: actions/setup-python@v7 | ||
| with: | ||
| python-version: 3.x | ||
| python-version: '3.11' |
There was a problem hiding this comment.
继续用 3.x 没问题;abi3 的兼容下限不要求构建解释器固定为 3.11。已在 272423a 恢复原来的 3.x,release.yml 现在与 main 完全一致。
| maturin-version: '1.15.0' | ||
| target: ${{ matrix.target }} | ||
| args: --release --out dist --find-interpreter | ||
| args: --release --locked --out dist --interpreter python3.11 |
There was a problem hiding this comment.
不是必要改动,272423a 已全部撤回版本固定、--locked 和指定解释器,保留原来的自动发现。Rust/PyO3/abi3-py310 也恢复原样;停止支持 3.10 由 Requires-Python >=3.11 控制,不需要改 ABI 下限。
| path: dist | ||
| if-no-files-found: error | ||
|
|
||
| wheel-test: |
There was a problem hiding this comment.
是我扩张了范围。272423a 已删除新增的 free-threaded 和 wheel-test jobs、平台矩阵及发布依赖,整个 release.yml 无差异。改为在原有 unit-test 矩阵验证 3.15/3.15t,不增加独立测试流程。
| unit-test: | ||
| runs-on: ubuntu-latest | ||
| strategy: | ||
| fail-fast: false |
There was a problem hiding this comment.
这项策略调整不必要,已在 272423a 撤回。保留原来的 job、architecture、just 和 fail-fast 行为;unit-test.yml 仅改 Python 版本列表,以及把 editable 安装改为普通 wheel 安装,让原有测试验证实际构建产物。
SigureMo
left a comment
There was a problem hiding this comment.
感觉可以直接把 3.15t 支持及 CI 删掉
| - name: Install dependencies | ||
| run: | | ||
| just create-venv | ||
| just ci-install |
There was a problem hiding this comment.
以及,如果不需要支持 3.15t,是不是这里可以不改
There was a problem hiding this comment.
可以不改,已在 3bb8eff 恢复原来的 just ci-install,并删除 3.15t 矩阵、GIL 断言和为它提高的 maturin 下限。这里使用 pip/just,不涉及 UV_PYTHON 的解释器选择;原安装命令在普通 3.15 下已验证通过,独立构建并安装的 native wheel 也通过原测试。现在仅剩 3 个文件 +5/-5,新 head CI 正在运行。
Changes
3 files, +5/-5. No 3.15t support or CI is added. The original
just ci-installpath, tests, maturin requirement, Rust/PyO3/ABI configuration, release workflow, and README are unchanged.Validation
On
3bb8effwith Python 3.15.0rc2:just ci-installandjust ci-test: passed (1 test).cp310-abi3wheel via PEP 517, installed it in a fresh 3.15 environment, verified the installed native extension, and ran the original test: passed.just ci-lint,just ci-fmt-check, actionlint, andgit diff --check: passed.just ci-install/pip install -e ".[dev]"path passes on all five versions, including ordinary Python 3.15.0rc2. No additional CI jobs or tests are introduced.abi3-py310remains the binary compatibility floor;Requires-Python >=3.11controls the supported Python versions. No ABI change is needed for ordinary 3.15.