Migrate to pyproject.toml and common workflows, update for numpy 2.0 #35
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Next in the wave of PRs transitioning our packages to using the standard
pyproject.toml
file.Important
The
setup.py
andsetup.cfg
files are gone. Apyproject.toml
file now centralises everything, including metadata conformly to PEP621.I have put down
hatchling
as a build backend, as it is the one developped byPyPA
, the Python Packaging Authority, as they publish the authoritative user guide. This has little impact though, as any PEP518-compliant backend would work there instead.Simple change to have
numpy 2.0
compatibility.Like for all other packages, this moves the minimum supported Python version to
3.9
.Details
I have put Hatch as a packaging tool as it is also the one from PyPA, but it is strictly optional. One does not need Hatch, because standards. The new common workflows (PR upcoming) don't even use it.
I have taken upon me to up minimum required versions (
tfs-pandas
for instance).Additional
This PR also moves
optics_functions
to the common Github Actions workflows, and brings very minor lints.