Skip to content

Automate release notes and document the release process - #78

Merged
galjos merged 2 commits into
mainfrom
release-automation
Jul 6, 2026
Merged

Automate release notes and document the release process#78
galjos merged 2 commits into
mainfrom
release-automation

Conversation

@galjos

@galjos galjos commented Jul 6, 2026

Copy link
Copy Markdown
Member

Follow-up to the PyPI setup (#77): keep the release trigger manual (deliberate cadence + version control) but remove the note-writing toil.

  • .github/release.yml — configures GitHub's auto-generated release notes: merged PRs are grouped by label (Features / Fixes / Documentation / Dependencies), unlabelled PRs fall under Other Changes (catch-all is last, as GitHub requires), and bot PRs are excluded. So gh release create vX.Y.Z --generate-notes produces clean categorised notes.
  • RELEASING.md — the one-command release flow (tag a GitHub Release → publish.yml builds + publishes to PyPI via Trusted Publishing), setuptools_scm versioning (dev versions are PyPI-rejected — a safety net), the trusted-publisher config values, and a pointer to the conda-forge prerequisite.

Deliberately not adopting semantic-release/release-please — that would impose conventional commits and remove control over version/timing, which isn't the right default for an alpha scientific package.

- .github/release.yml: group auto-generated release notes (from
  `gh release create --generate-notes`) by PR label; unlabelled PRs fall under
  "Other Changes"; exclude bots.
- RELEASING.md: document the one-command release flow (tag a GitHub Release ->
  publish.yml builds + publishes to PyPI via Trusted Publishing), the
  setuptools_scm versioning, and the trusted-publisher config.

Keeps the release trigger manual (deliberate cadence + version control) while
removing the note-writing toil.
@codecov

codecov Bot commented Jul 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 96.80%. Comparing base (7b0db50) to head (3710215).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #78   +/-   ##
=======================================
  Coverage   96.80%   96.80%           
=======================================
  Files          25       25           
  Lines        1629     1629           
=======================================
  Hits         1577     1577           
  Misses         52       52           
Flag Coverage Δ
unittests 96.80% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

- .github/release.yml: exclude dependabot[bot]/github-actions[bot] (the real bot
  logins carry the [bot] suffix; without it the exclusion is inert).
- RELEASING.md: setuptools_scm guess-next-dev bumps the patch, so the between-
  releases example is 0.2.1.dev5+g<sha> (after v0.2.0), not 0.2.0.dev5.
@galjos
galjos merged commit f725da9 into main Jul 6, 2026
4 checks passed
@galjos
galjos deleted the release-automation branch July 6, 2026 14:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant