fastlmm / fastlmmclib

C extensions for FaST-LMM Python Project
Apache License 2.0
0 stars 0 forks source link

Please make releases and tag commit #2

Open ccoulombe opened 1 week ago

ccoulombe commented 1 week ago

Hello,

Please tag relevant commit and make Github releases for each PyPI version. For packages maintainers, this is crucial, when building from source, in order to have reproducible builds.

Thanks,

CarlKCarlK commented 1 week ago

Charles,

Thanks for using fastlmmclib and your suggestion for improving our processes.

I've added a tag for the most recent release to fastlmmclib. https://github.com/fastlmm/fastlmmclib/tags I will add them to future versions.

Is it important to also add tags for previous versions?

Is it important/useful to add similar tags to the related projects (FaST-LMM, PySnpTools, bed-reader)?

I'd prefer to release only to PyPi and not also to GitHub releases. Does that make things harder for reproducibility?

If you can recommend any document or blog or video that outlines best practices in this area, I'd appreciate your recommendation.

Yours, Carl

p.s. I see you are in Quebec. I just returned from the Rust conference in Montreal and from a lovely visit to Quebec City.

Carl Kadie, Ph.D. FaST-LMM & PySnpTools Team (Microsoft Research, retired) https://www.linkedin.com/in/carlk/ Join the FaST-LMM user discussion and announcement list via email (or use web sign up)

ccoulombe commented 1 week ago

Hello @CarlKCarlK

Great! :) Yes, tags are also important for other related projects. It is the base for any stable version of a project, tagged in time, that allow users to refer to a specific version when needed.

There's actions (Github Action) that can publish on PyPI when a Github release is released. But having only tags of versions on the repository, which would match the ones on PyPI obviously, is great and enough. It allows maintainers (like me) to maintain builds for the different versions of a software.

The best practices I know are the ones I've seen implemented in all sort of other projects (torch, numpy, scipy, etc.). But I'd recommend reading : https://packaging.python.org/en/latest/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/

You can also inspire yourself from Reddit and SO, eg :


Nice, happy to know that you had a nice visit in Qc city! The weather was warm and nice for this period of the month.


Cheers,

CarlKCarlK commented 1 week ago

I've added tags to the other parts of the FaST-LMM project.

I'll leave this issue open and look at modernizing our releases more when I move the projects to Python 3.13, likely next month.

--- Carl


The weather was warm and nice for this period of the month

What do you mean? I just assumed that Quebec is always sunny and 78F/26C all year around. :-)