Check Python upgrade wheel readiness
check_python_upgradeCheck a project's dependencies for installable wheels on a target Python version and platforms, listing blocked packages and the version bump that fixes each.
Instructions
Before moving a project to a new Python (e.g. 3.15 or free-threaded 3.15t), list every dependency that has no installable wheel for it on the target platforms, and the smallest version bump that fixes each one. Reads uv.lock / pylock.toml / poetry.lock / Pipfile.lock / requirements.txt / pyproject.toml from path, or checks explicit requirements specs. Statuses: ready, bump (newer release has a wheel), blocked (no release has one: waiting on upstream), excluded (requires-python), build (sdist only), skip (marker), missing. Blocked packages carry tracking: the upstream issue/PR to watch.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | Lockfile, requirements file, pyproject.toml or project directory. Default: server working dir. | |
| glibc | No | Oldest glibc for linux-* targets, default 2.34 | |
| macos | No | Oldest macOS for macos-* targets, default 14 | |
| python | No | Target CPython, e.g. '3.15' or '3.15t' (free-threaded). | 3.15 |
| tracking | No | For each blocked package, link the upstream GitHub issue/PR about wheels for the target Python (packages[].tracking). One GitHub search per repo; uses GITHUB_TOKEN from the server environment if set. Never changes a verdict. | |
| index_url | No | Simple-API index (PEP 691/503) to use instead of PyPI, e.g. 'https://download.pytorch.org/whl/cpu'. Like pip --index-url. Default: -i from requirements files, PIP_INDEX_URL, then PyPI. | |
| platforms | No | Target platforms. Default: linux-x86_64, macos-arm64, windows-amd64 | |
| requirements | No | Requirement specs such as 'numpy==1.26.4' (instead of path). | |
| extra_index_urls | No | More simple-API indexes; files from all indexes are pooled, like pip --extra-index-url. |