Skip to content

Build and test cp312 wheels for far-unitree-sdk#13

Merged
clayrosenthal merged 1 commit into
devfrom
clayros/py312-wheels
Jul 1, 2026
Merged

Build and test cp312 wheels for far-unitree-sdk#13
clayrosenthal merged 1 commit into
devfrom
clayros/py312-wheels

Conversation

@clayrosenthal

Copy link
Copy Markdown

What

Add Python 3.12 (cp312) to the wheel build set and the CI import-test matrix, and lift the requires-python cap from <3.12 to <3.13.

Why

The build was previously capped at cp311 during review to make requires-python match the built wheel set. Booster already builds cp312; this brings unitree to parity so pip install far-unitree-sdk works on Python 3.12.

Changes

  • pyproject.toml: [tool.cibuildwheel] build adds cp312-*; requires-python = ">=3.8,<3.13"; comment updated.
  • .github/workflows/release.yml: test_wheels matrix adds "3.12".
  • uv.lock: requires-python synced to <3.13 (one line, no package churn).

Verification

  • No manylinux image bump needed: the image cibuildwheel 2.21.3 pins for manylinux_2_28 (2024.10.07-1) ships a cp312 interpreter (verified via docker run … ls /opt/python — cp38–cp312 all present), so cp38 wheels keep building and cp312 is available.
  • The cibw_before_build.sh hook is interpreter-agnostic (compiles pybind11 against whatever Python cibuildwheel activates), so no script change is required.
  • The python:3.12-slim test image is bookworm (glibc 2.36), which satisfies the manylinux_2_31 floor.
  • TOML + YAML validated.

Note: CI only fires on tag-push / manual dispatch, so no checks will appear on this PR until a v* tag or a manual 'Run workflow'.

The manylinux_2_28 image cibuildwheel 2.21.3 pins (2024.10.07-1) ships a
cp312 interpreter, so building cp312 wheels needs no image bump. Widen the
build set and the CI import-test matrix, lift the requires-python cap to
<3.13 so pip selects the new wheels, and bump the release version.

- pyproject: build add cp312-*; requires-python >=3.8,<3.13; version 0.1.4
- release.yml: test_wheels matrix add "3.12"; refresh stale TestPyPI comments
- uv.lock: synced (version 0.1.4, requires-python <3.13)
- PUBLISHING.md / deploy/test_docker.sh: example tag/wheel names -> 0.1.4,
  drop stale TestPyPI mention
@clayrosenthal clayrosenthal force-pushed the clayros/py312-wheels branch from 22a45da to da58677 Compare July 1, 2026 22:28
@clayrosenthal clayrosenthal merged commit 7a993e4 into dev Jul 1, 2026
15 checks passed
@clayrosenthal clayrosenthal deleted the clayros/py312-wheels branch July 1, 2026 23:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant