Skip to content
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

Switch to pyproject and hatch build #240

Merged
merged 2 commits into from
Dec 23, 2023
Merged

Switch to pyproject and hatch build #240

merged 2 commits into from
Dec 23, 2023

Conversation

iancze
Copy link
Collaborator

@iancze iancze commented Dec 23, 2023

  • Fully leaned into the pyproject.toml setup to modernize build via hatch. This centralizes the project dependencies and derives package versioning directly from git tags. Intermediate packages built from commits after the latest tag (e.g., 0.2.0) will have an extra long string, e.g., 0.2.1.dev178+g16cfc3e.d20231223 where the version is a guess at the next version and the hash gives reference to the commit. This means that developers bump versions entirely by tagging a new version with git (or more likely by drafting a new release on the GitHub release page).
  • Removed setup.py.
  • TOML does not support adding keyed entries, so creating layered build environments of default, docs, test, and dev as we used to with setup.py is laborious and repetitive with pyproject.toml. We have simplified the list to be default (key dependencies), test (minimal necessary for test-suite), and dev (covering everything needed to build the docs and actively develop the package).

@iancze iancze merged commit bd43100 into main Dec 23, 2023
4 checks passed
@iancze iancze deleted the pyproject branch December 23, 2023 23:17
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.

1 participant