Jupyter Releaser contains a set of helper scripts and GitHub Actions to aid in automated releases of Python and npm packages. We are currently evaluating it against jupyter_server and notebook.
Motivation
This project should help maintainers reduce toil and save time in the release process by enforcing best practices to:
- Automate a changelog for every release
- Pre-publish to test server and verify the install and import of dist asset(s)
- Commit a message with hashes of dist file(s)
- Annotate the git tag in standard format
- Create a GitHub release with changelog entry
- Verify url links in markdown and reStructuredText files
- Verify integrity of Python manifest
- Forward port changelog entries into default branch
- Dry run publish on CI
- Revert to Dev version after release (optional)