mirror of
https://github.com/mwisnowski/mtg_python_deckbuilder.git
synced 2025-09-22 04:50:46 +02:00
2.6 KiB
2.6 KiB
GitHub Release Checklist
Pre-Release Preparation
1. Version Management
- Update version in
pyproject.toml
(currently 1.0.0) - Update version in
__init__.py
if applicable - Update any hardcoded version references
2. Documentation Updates
- Update README.md with latest features
- Update DOCKER.md if needed
- Create/update CHANGELOG.md
- Verify all documentation is current
3. Code Quality
- Run tests:
python -m pytest
- Check type hints:
mypy code/
- Lint code if configured
- Verify Docker builds:
docker build -t mtg-deckbuilder .
4. Final Testing
- Test Docker container functionality
- Test from fresh clone
- Verify all major features work
- Check file persistence in Docker
Release Process
1. GitHub Release Creation
- Go to: https://github.com/mwisnowski/mtg_python_deckbuilder/releases
- Click "Create a new release"
- Configure release:
- Tag version:
v1.0.0
(create new tag) - Target:
main
branch - Release title:
MTG Python Deckbuilder v1.0.0
- Description: Use content from RELEASE_NOTES.md
- Tag version:
2. Release Assets (Optional)
Consider including:
- Source code (automatic)
- Docker image reference
- Windows executable (if using PyInstaller)
- Requirements file
3. Docker Image Release (Optional)
# Build and tag for GitHub Container Registry
docker build -t ghcr.io/mwisnowski/mtg-deckbuilder:1.0.0 .
docker build -t ghcr.io/mwisnowski/mtg-deckbuilder:latest .
# Login to GitHub Container Registry
echo $GITHUB_TOKEN | docker login ghcr.io -u mwisnowski --password-stdin
# Push images
docker push ghcr.io/mwisnowski/mtg-deckbuilder:1.0.0
docker push ghcr.io/mwisnowski/mtg-deckbuilder:latest
4. PyPI Release (Optional)
# Build package
python -m build
# Upload to PyPI
python -m twine upload dist/*
Post-Release
1. Documentation Updates
- Update README.md with release badge
- Add installation instructions
- Update Docker Hub description if applicable
2. Communication
- Announce on relevant platforms
- Update project status
- Create next milestone/version
3. Cleanup
- Merge any release branches
- Update development branch
- Plan next version features
Quick Commands
# Check current version
grep version pyproject.toml
# Test Docker build
docker build -t mtg-deckbuilder-test .
# Run final tests
python -m pytest
mypy code/
# Create GitHub release (using gh CLI)
gh release create v1.0.0 --title "MTG Python Deckbuilder v1.0.0" --notes-file RELEASE_NOTES.md