Move to using pyproject.toml to ensure compatibility after pip 25.3
- Dominant language
- Python
- Stars
- 452
- Forks
- 76
- PR merge metrics
- No merged PRs in 30d
Description
pip is going to disallow editable installs for projects that use setup.py from pip 25.3. See discussion in https://github.com/pypa/pip/issues/11457
Currently, installing graphstorm from source with `pip install -e ./graphstorm` gives the warning:
> DEPRECATION: Legacy editable install of graphstorm==0.5.0 from file:///home/ec2-user/SageMaker/graphstorm (setup.py develop) is deprecated. pip 25.3 will enforce this behaviour change. A possible replacement is to add a pyproject.toml or enable --use-pep517, and use setuptools >= 64. If the resulting installation is not behaving as expected, try using --config-settings editable_mode=compat. Please consult the setuptools documentation for more information. Discussion can be found at https://github.com/pypa/pip/issues/11457
setup.py has been on the path of deprecation for a while, we should adopt the modern pyproject.toml to ensure forward compatibility of the library.
Contributor guide
Research direction
Start by reading setup.py and the pip issue linked in the report, then run pip install -e ./graphstorm to reproduce the deprecation warning. Add the modern pyproject.toml configuration while preserving source installation behavior, and verify that editable installation no longer relies on the deprecated setup.py develop path.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Refactor
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100