Skip to content

Version Change Checklist

This checklist helps ensure all necessary steps are completed when making version changes, adding features, or fixing issues.

Pre-Release Checklist

Code Changes

  • [ ] Implement new feature or fix
  • [ ] Add/update tests
  • [ ] Run test suite locally
  • [ ] Update type hints if applicable
  • [ ] Check for deprecated code that can be removed
  • [ ] Review error messages and logging

Documentation Updates

  • [ ] Update relevant documentation files in docs/
  • [ ] Add/update docstrings for new/modified functions
  • [ ] Update CLI documentation if commands changed
  • [ ] Add new examples if applicable
  • [ ] Check all documentation links are working
  • [ ] Review and update README.md if needed

Changelog Updates

  • [ ] Add entry to CHANGELOG.md in project root
  • [ ] Use correct version number
  • [ ] Add under correct section (Added/Changed/Fixed)
  • [ ] Include PR/Issue numbers if applicable
  • [ ] Update docs/changelog/index.md to match
  • [ ] Ensure changelog formatting is consistent

Version Updates

  • [ ] Update version number in __init__.py
  • [ ] Update version in setup.py/pyproject.toml
  • [ ] Update any version-dependent documentation
  • [ ] Check requirements.txt for any version updates

Release Process

  • [ ] Create and push version tag
  • [ ] Create GitHub release
  • [ ] Include changelog entries
  • [ ] Add any additional release notes
  • [ ] Check Read the Docs build succeeds
  • [ ] Verify documentation is updated on Read the Docs

Post-Release Checklist

Verification

  • [ ] Install package from PyPI in clean environment
  • [ ] Test basic functionality
  • [ ] Verify documentation is accessible
  • [ ] Check all new features/fixes work as expected

Communication

  • [ ] Update release notes if needed
  • [ ] Notify users of breaking changes
  • [ ] Update issue/PR status if applicable

Cleanup

  • [ ] Close related issues
  • [ ] Update project board
  • [ ] Archive completed project tasks
  • [ ] Remove any temporary files/branches

Notes

  • Always create a new branch for version changes
  • Follow semantic versioning (MAJOR.MINOR.PATCH)
  • Test documentation builds locally before pushing
  • Keep changelog entries clear and concise
  • Include migration guides for breaking changes