S3.2 — Python bindings: PyO3 0.29, maturin 1.15, Python 3.11+

Intent

PyO3 removed with_gil / PyObject in 0.28 and maturin deprecated upload/publish in 1.11. Bring oxmpl-py current. Drops Python 3.8–3.10 (3.10 EOL 2026-10-01; PyO3 0.29 supports PyPy ≥ 3.11 only; pytest 9 needs ≥ 3.10).

Acceptance criteria

Tasks

Completion (2026-10-09)

Commit 2946808 on toolchain-refresh, pushed: build(deps)!: upgrade oxmpl-py to PyO3 0.29 and maturin 1.15, raising the Python floor to 3.11.

Evidence (run on HEAD in the worktree via direnv):

Folded in (same files, small; scope-change rule):

Notes: