Files
semantica/RELEASE.md
T

1.6 KiB

Release Process for Semantica

This document outlines the steps to release a new version of the Semantica framework.

1. Versioning Policy

Semantica follows Semantic Versioning (SemVer).

  • MAJOR version for incompatible API changes.
  • MINOR version for functionality added in a backwards compatible manner.
  • PATCH version for backwards compatible bug fixes.

2. Pre-release Checklist

Before releasing, ensure:

  • All tests pass: pytest
  • Documentation is up to date in docs/ and MkDocs config.
  • CHANGELOG.md is updated with the latest changes.
  • Version is updated in:
    • semantica/__init__.py
    • pyproject.toml
    • docs/citation.md (BibTeX entry)

3. Release Steps

The project uses GitHub Actions for automated releases to PyPI.

1.29. Tag the commit: Create a new git tag for the version (e.g., v0.2.3).

git tag -a v0.2.3 -m "Release v0.2.3"
git push origin v0.2.3
  1. GitHub Action: The Release workflow will automatically trigger, build the package, create a GitHub Release, and publish to PyPI using Trusted Publishing.

Manual Release

If you need to release manually:

  1. Build the package:
    python -m build
    
  2. Verify the build:
    twine check dist/*
    
  3. Upload to PyPI:
    twine upload dist/*
    

4. Post-release

  • Verify the new version is available on PyPI.
  • Check the GitHub Releases page for the new release notes.