| name | release |
| description | How to release a new pgdbm library version to PyPI |
Releasing pgdbm
Overview
This skill guides you through releasing a new version of the pgdbm library.
Prerequisites
- All tests passing
- Changes committed to main branch
- CHANGELOG.md updated with changes
Release Checklist
1. Run Tests
uv run pytest
All tests must pass before releasing.
2. Update Version Numbers
Three files need version updates:
grep "^version" pyproject.toml
Update these files to the new version:
| File | Location |
|---|
pyproject.toml | version = "X.Y.Z" |
src/pgdbm/__version__.py | __version__ = "X.Y.Z" |
.claude-plugin/plugin.json | "version": "X.Y.Z" |
Important: The plugin.json version controls Claude Code skill caching. Always bump it when releasing.
3. Update CHANGELOG.md
Add entry at the top:
## [X.Y.Z] - YYYY-MM-DD
### Added
- New features
### Changed
- Changes to existing features
### Fixed
- Bug fixes
4. Commit the Release
git add pyproject.toml src/pgdbm/__version__.py .claude-plugin/plugin.json CHANGELOG.md uv.lock
git commit -m "chore: bump version to X.Y.Z
- Summary of changes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>"
5. Create Git Tag
git tag -a vX.Y.Z -m "Release X.Y.Z"
6. Push to GitHub
git push origin main
git push origin vX.Y.Z
7. Publish to PyPI
Important: Clean the dist/ directory first to avoid uploading old versions.
rm -rf dist/
uv build
uv publish
Or if using twine:
rm -rf dist/
uv build
twine upload dist/*
8. Verify Release
pip index versions pgdbm
claude plugin update pgdbm@juanre-ai-tools
Version Numbering
Follow semver:
- MAJOR (X.0.0): Breaking API changes
- MINOR (0.X.0): New features, backward compatible
- PATCH (0.0.X): Bug fixes, documentation
Related Skills
- For skill updates: See
publish-skills skill