Skip to content

ci: automate tagged package releases - #14

Merged
Boussetta merged 4 commits into
mainfrom
release/issue-7-automation
Sep 4, 2026
Merged

Boussetta merged 4 commits into
mainfrom
release/issue-7-automation

Conversation

@Boussetta

Copy link
Copy Markdown
Owner

Closes #7

Summary

Prepare AliasingAtlas for repeatable, versioned public releases through GitHub Actions.

Changes

  • Add a tag-triggered release workflow for v*.*.* tags.
  • Verify that the Git tag matches project.version in pyproject.toml.
  • Build wheel and source distributions.
  • Validate distributions with twine check.
  • Publish to PyPI using Trusted Publishing and short-lived OIDC credentials.
  • Create a GitHub Release with generated release notes and attached distributions.
  • Add RELEASING.md with one-time PyPI setup and maintainer checklist.
  • Document release status in the README.
  • Record release automation in the changelog.

Required Repository Setup

Before the first publish:

  • Create or reserve the aliasing-atlas project on PyPI.
  • Configure a PyPI Trusted Publisher for:
    • Owner: Boussetta
    • Repository: NyquistNavigator
    • Workflow: release.yml
    • Environment: pypi
  • Create the pypi environment in GitHub repository settings.

Until this one-time setup is complete, the workflow will build and validate artifacts but publishing will fail at the publish step.

Validation

  • pytest -q: 38 passed
  • Ruff: passed
  • mypy: no code errors
  • Release workflow uses read-only contents access plus OIDC publishing permission.

Commits

This PR intentionally contains focused commits:

  • 787e63b ci: automate tagged package releases
  • 5408164 docs: add release checklist and PyPI setup
  • c13c914 docs: document automated release status
  • 1643d23 docs: record release automation

The generated .coverage file is local and not included.

@Boussetta
Boussetta merged commit 498c566 into main Sep 4, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Prepare and automate public release workflow

1 participant