Migrate fully to pyproject.toml
What does this PR do?
This completes the migration to use pyproject.toml in place of a combination of setup.cfg and setup.py.
While the migration itself is fairly straightforward, this required various back and forth comparisons to determine which files were included, since this was unclear from the previous version.
For this reason, the first commit modifies the way that files to be included are specified, which then translates cleanly when migrating to pyproject.toml.
The choice of MANIFEST.in was also motivated by exploration of setuptools_scm as an alternative/extra backend, which would allow packaging with specific versions, but which uses that file to determine files to be excluded compared to those in git.
Tested?
- [x] Manually
- [ ] Existing tests (adapted, if necessary)
- [ ] New tests added (for any new behavior)
- [x] Passed linting & tests (each commit)
This has been tested to produce good sets of files, and published to testpypi.
Heads up @neiljp, we just merged some commits that conflict with the changes you made in this pull request! You can review this repository's recent commits to see where the conflicts occur. Please rebase your feature branch against the upstream/main branch and resolve your pull request's merge conflicts accordingly.