Skip to content

feat: automatic dev pre-releases on merge to main - #20

Merged
Abas-Tim merged 2 commits into
mainfrom
feat/dev-pre-release
Aug 28, 2026
Merged

Abas-Tim merged 2 commits into
mainfrom
feat/dev-pre-release

Conversation

@Abas-Tim

Copy link
Copy Markdown
Owner

Automatic dev pre-releases on every merge to main.

  • New dev-publish workflow: on each push to main it derives a dev
    version (<next patch of the latest stable tag>.dev<commits since tag>,
    e.g. 0.2.1.dev3), rewrites the version in pyproject + __init__ at
    build time, builds, and publishes to PyPI as a pre-release.
  • scripts/dev_version.py implements the derivation (skips when HEAD is a
    tagged commit or no stable tags exist).
  • Release-prep commits (chore(release): ...) are skipped so stable tag
    flows stay unchanged.
  • PEP 440: dev releases are excluded by installers unless requested, so
    pip install urag-cli still resolves to the latest stable; testers use
    pip install --pre urag-cli.
  • docs/releasing.md updated.

Verification

  • dev_version.py derives 0.2.1.dev1 for the current main (1 commit since
    v0.2.0) and rewrites both version locations; restored after the test.
  • 158 tests / 1 skipped; ruff clean (scripts included).

- dev-publish.yml: publishes X.Y.Z.devN pre-releases to PyPI on every main push (release-prep commits skipped)
- scripts/dev_version.py derives the version from the latest stable tag + commit count and rewrites pyproject/__init__ at build time
- docs/releasing.md updated
@Abas-Tim
Abas-Tim merged commit 1af7d9a into main Aug 28, 2026
4 checks passed
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