Skip to content

Migrate packaging to a pyproject.toml file and add wheel deployment #20

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

rndubs
Copy link

@rndubs rndubs commented Jun 25, 2025

Closes #19 #17 .

Key Changes:

  • Migrated from setup.py to pyproject.toml - Moved all package configuration to the modern pyproject.toml standard
  • Switched to setuptools-scm versioning - Replaced versioneer with setuptools-scm for automatic version management from git tags
  • Added wheel deployment - Updated PyPI GitHub Action to build and test both sdist and wheel distributions
  • Bumped minimum Python version to 3.9 - Dropped support for Python 3.7/3.8
  • Updated CI/CD workflows - Modified GitHub Actions to use Python 3.9+ and check for pyproject.toml changes
  • updated MANIFEST.in - Exclusion of development files from source distributions to account for setuptools-scm adoption
  • Updated pre-commit hooks - Upgraded dependency versions and fixed compatibility issues

Distribution

Checking contents of the sdist:

% tar -xzvf dist/cons-0.4.7.dev12+dirty.tar.gz
x cons-0.4.7.dev12+dirty/
x cons-0.4.7.dev12+dirty/LICENSE.txt
x cons-0.4.7.dev12+dirty/MANIFEST.in
x cons-0.4.7.dev12+dirty/PKG-INFO
x cons-0.4.7.dev12+dirty/README.md
x cons-0.4.7.dev12+dirty/cons/
x cons-0.4.7.dev12+dirty/cons/__init__.py
x cons-0.4.7.dev12+dirty/cons/core.py
x cons-0.4.7.dev12+dirty/cons/unify.py
x cons-0.4.7.dev12+dirty/cons.egg-info/
x cons-0.4.7.dev12+dirty/cons.egg-info/PKG-INFO
x cons-0.4.7.dev12+dirty/cons.egg-info/SOURCES.txt
x cons-0.4.7.dev12+dirty/cons.egg-info/dependency_links.txt
x cons-0.4.7.dev12+dirty/cons.egg-info/requires.txt
x cons-0.4.7.dev12+dirty/cons.egg-info/top_level.txt
x cons-0.4.7.dev12+dirty/pyproject.toml
x cons-0.4.7.dev12+dirty/setup.cfg

@rndubs
Copy link
Author

rndubs commented Jul 9, 2025

@brandonwillard , this should be ready for a review.

@brandonwillard brandonwillard merged commit 9189904 into pythological:main Jul 11, 2025
11 checks passed
@brandonwillard
Copy link
Member

brandonwillard commented Jul 11, 2025

@rndubs, much appreciated!

@rndubs
Copy link
Author

rndubs commented Jul 11, 2025

you're welcome! I think this now just needs a git tag for the version bump and for the pypi deployment action to kick off.

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.

Migrate the setup.py packaging file to a PEP517 compliant pyproject.toml file
2 participants