Skip to content
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

Versioning, releasing, DOI, Zenodo #94

Open
egpbos opened this issue May 18, 2021 · 7 comments
Open

Versioning, releasing, DOI, Zenodo #94

egpbos opened this issue May 18, 2021 · 7 comments

Comments

@egpbos
Copy link
Collaborator

egpbos commented May 18, 2021

Following #41 (comment), we should:

  • Set up Zenodo, which will also automatically give us a DOI for the project and one for each release.
  • Determine a releasing schedule/procedure.

Releasing on GitHub with a (semantic) version number is probably a good start for the latter point. Then we just need to think about when we release things. Usually, this would be done after bug fixes (patch version bump), added features (minor version bump) or complete, backwards incompatible rewrites (major version bump).

Let's try to keep these things in mind when we do PRs. One thing we could do for that is make a PR template so that we are automatically reminded every time we do a PR to at least think about whether the PR should bump one of the version numbers.

@egpbos
Copy link
Collaborator Author

egpbos commented May 18, 2021

Ah, I see we already have Zenodo set up, great!

Shall we add a comment to the PR template to think about versioning then to finish this off?

@egpbos
Copy link
Collaborator Author

egpbos commented May 19, 2021

Checklist for PRs:

  • Does this PR warrant a version bump? If so, make sure you add a git tag and GitHub release.
  • If you bumped the version, did you update the changelog with a user-readable summary?
  • Did you include references to relevant issues or PRs for fixed bugs in the changelog? See CII [release_notes] criterion.

@egpbos
Copy link
Collaborator Author

egpbos commented May 19, 2021

I added a changelog file, accidentally pushed it to master, hope you all agree, if not, feel free to edit.

@cwmeijer
Copy link
Contributor

Nice that you added the PR checklist to the PR template.

@egpbos
Copy link
Collaborator Author

egpbos commented May 27, 2021

Following #107, @cwmeijer suggested it may be nice to make a pip package on release.

@bhigy
Copy link
Contributor

bhigy commented May 27, 2021

Do you have experience with that? What does it involve?

@egpbos
Copy link
Collaborator Author

egpbos commented May 27, 2021

It's actually quite easy, because we already have pip installing properly setup :)

Just tried it out (for the first time actually) following this guide, and building a package is just a matter of installing the build package (with conda or pip) and running python -m build. Then you have a wheel and a tar.gz file in the dist directory.

Then, uploading to PyPI is described here: https://packaging.python.org/tutorials/packaging-projects/#uploading-the-distribution-archives

I think that part can be automated with GitHub Actions as well, since it's done using an API key which can be put in GitHub secrets.

... yep: https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants