-
Notifications
You must be signed in to change notification settings - Fork 56
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 declarative package management #257
Conversation
Mainly from here: https://scikit-hep.org/developer/packaging * packaging instructions are now contained in pyproject.toml, setup.cfg and setup.py * move package source below src/, ase recommended * deleted unused pytest.ini * new version management system with setuptools, computes version string automatically * export only pygama version as LH5 object
update CI workflow and contributing guide
I'm done with this PR – let me know what you think @jasondet @iguinn and feel free to merge, if no objections. legend-exp/pyfcutils#2 should be merged too to make fcutils install seamlessly. |
Wow! I'm impressed at the work here. I support any change that makes pygama more aligned with best practices in ScikitHEP. Eventually it would be great to publish this package with them. The only thing I note here is that we would move the "pygama" dir one level down, to "src/pygama". As long as Luigi feels that's necessary, I'll support his decision. |
I guess it would be nice to contact them at some point, yes: https://scikit-hep.org/affiliated. But ultimately it will depend on pygama's ability to be not-so-much LEGEND-specific.
Yes, it's generally highly recommended as most tools assume this structure by default (and therefore no extra configuration is needed): https://scikit-hep.org/developer/pep621#package-structure |
ok. I'm going to merge this... |
I've been mainly following recommendations from here: https://scikit-hep.org/developer/packaging
pyproject.toml
,setup.cfg
(and few lines insetup.py
to be backward-compatible)src/
as recommended: simplifies packaging by a lotgit-describe
-like version string automatically. I didn't know about this before and I consider it robust enough (requires just a couple of extra configs inpyproject.toml
and no extra custom logic). We will not need to manually advance the version string anymore.Still to do:
@jasondet: are you OK with moving the source below
src/
? Do you have any particular development requirement/need?To be merged after #255