conda-forge / conda-forge/conda-forge.github.io
dropping `setuptools` and `wheel` deps from `pip`
- Dominant language
- JavaScript
- Stars
- 170
- Forks
- 320
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 5
Description
In the new packaging scheme for python, `pip` no longer has `setuptools` and `wheel` as dependencies. Many of conda-forge's recipes rely on this transitive dependence (roughly ~20% according to this [comment](https://github.com/conda-forge/pip-feedstock/issues/124#issuecomment-2261164047)). Further, external users of pip also rely on this currently (see, e.g., [pytorch](https://github.com/pytorch/pytorch/issues/132295)). We'd like to move away from this in order to treat `setuptools` and `wheel` more consistently with respect to other build backends like `flit`, `hatchling`, etc.
To do this, we have arrived at the following transition plan, pulled from the [original issue](https://github.com/conda-forge/pip-feedstock/issues/124):
- [x] add the deps back for now (https://github.com/conda-forge/pip-feedstock/pull/125)
- [x] make an announcement that these deps will be dropped as follows (per @isuruf's comment below, https://github.com/conda-forge/conda-forge.github.io/pull/2268)
- dropped from pip on python 3.13 with the release of python (2024-10-01)
- dropped from pip on python < 3.13 at the completion of the python 3.13 migration
- [x] have the linter hint for missing build backends (https://github.com/conda-forge/conda-smithy/pull/2039)
- [x] add allow list in the linter for backends themselves (https://github.com/conda-forge/conda-smithy/pull/2046)
- [ ] possibly create a mini-migrator in the bot to add these deps as needed (see https://github.com/regro/cf-scripts/issues/2888, though this task may have some subtle issues associated with it)
- [x] upon the release of python 3.13, remove the deps from pip for python 3.13 (https://github.com/conda-forge/pip-feedstock/pull/126)
- [ ] once python 3.13 migrator is done, remove the deps for pip on python < 3.13 (we will only do this for new releases of pip and leave older ones alone)
cc @conda-forge/pip @conda-forge/core for comments
closes https://github.com/conda-forge/pip-feedstock/issues/124
Contributor guide
Assessment
This issue has not been assessed yet.