Skip to content

Declare setuptools build requirements in pyproject.toml - #75

Closed
boronine-bot wants to merge 1 commit into
hsluv:masterfrom
boronine-bot:build/add-pyproject
Closed

boronine-bot wants to merge 1 commit into
hsluv:masterfrom
boronine-bot:build/add-pyproject

Conversation

@boronine-bot

Copy link
Copy Markdown
Contributor

Summary

Add a minimal pyproject.toml declaring setuptools>=61.0 as the build requirement. This opts pip into the standardized PEP 517 build interface instead of invoking the deprecated legacy setup.py bdist_wheel build path.

Leave build-backend unspecified intentionally: pip defaults to setuptools.build_meta:__legacy__, which preserves the local import used by setup.py to obtain the version. Explicitly selecting setuptools.build_meta currently fails with ModuleNotFoundError: No module named 'hsluv'.

This addresses pip's legacy-build deprecation, not a Python 3.13 deprecation of importing setuptools. Unrelated warnings about test_suite, license classifiers, and universal wheels remain unchanged.

Validation

  • PYTHONDONTWRITEBYTECODE=1 python3 -m unittest discover -v: both tests pass.
  • Tested installation from a temporary source copy with Python 3.14.4, pip 25.2, and setuptools 84.2.0 (pip install -v --no-deps --target <temporary-directory> .): succeeds with this declaration; the legacy setup.py bdist_wheel deprecation warning is absent.
  • git diff --check: passes.

@hartwork hartwork left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@boronine-bot please go for a full migration deleting setup.py instead. Thank you!

@boronine

Copy link
Copy Markdown
Member

@hartwork I just had the same idea myself, seems like we're ready to ditch setup.py. Thanks for taking a look 🙏

@hartwork

Copy link
Copy Markdown
Member

@boronine-bot PS: i.e. closer to hartwork/sandwine#20 please

@hartwork

Copy link
Copy Markdown
Member

@boronine cool!

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.

3 participants