-
Notifications
You must be signed in to change notification settings - Fork 8
Modernise the build system #237
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
Modernise the build system #237
Conversation
@james-d-mitchell, this feels like a good point to specify authors and maintainers in the |
I have some questions, which we can discuss next week, but this looks really good |
b06e932
to
e80a576
Compare
This has now been rebased on top of the latest v1 changes. Other than updating the list of authors, which could be deferred to a different PR, I think this is good to go. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good and happy to merge apart from the one (possible?) issue in the make-lint script.
This PR modernises the build system, and makes the package adhere some Python good practices. Specifically, this PR does the following:
setup.py
intopyproject.toml
as possible (see the Python Packaging Guide and PEP 518).libsemigroups_pybind11
into their own module to prevent circular includes.setuptools-scm
to use git information to define the version of the module (see setuptools-scm).environment.yml
andrequirements.txt
files.libsemigroups_pybind11/
intosrc/
(see src layout vs flat layout).