Skip to content

Let the release workflow create the tag itself - #23

Merged
CodeWithBehnam merged 1 commit into
mainfrom
claude/lucid-franklin-gsu7v4
Oct 1, 2026
Merged

CodeWithBehnam merged 1 commit into
mainfrom
claude/lucid-franklin-gsu7v4

Conversation

@CodeWithBehnam

Copy link
Copy Markdown
Owner

What does this PR do?

Follow-up to #22. The session that prepared 1.1.0 can push branches but not tags (its git access returns HTTP 403 for refs/tags/*), so it couldn't start the tag-triggered release.

  • Adds a workflow_dispatch trigger to release.yml. Run workflow on main tags the current commit as v<version from pyproject.toml>, creates the GitHub release from that version's CHANGELOG section, and publishes to PyPI. A manual run from any other branch fails straight away.
  • Pushing a v* tag still works, and is still checked against the package version.
  • The PyPI job now waits for the GitHub release, so a package is never published without its tag and notes.

How was this tested?

  • Tested with audio file(s)
  • Ran existing tests (pytest): no Python changes; CI runs them anyway
  • Tested CLI (vayu audio.mp3)

I ran the tag-resolution step from the workflow file locally in bash, for four cases:

Trigger Result
manual run on main tag=v1.1.0
manual run on another branch fails with "Run the release from main"
push of tag v1.1.0 tag=v1.1.0
push of tag v9.9.9 fails with a version-mismatch error

The YAML parses.

After merging, I'll start the workflow on main to publish 1.1.0. PyPI still needs the trusted publisher configured (owner CodeWithBehnam, repo vayu, workflow release.yml, environment pypi).

claude-review will fail as on #12 (the repository's CLAUDE_CODE_OAUTH_TOKEN secret, see this comment).

🤖 Generated with Claude Code

https://claude.ai/code/session_01TMXYMqgLAykqRApmbRfpTA


Generated by Claude Code

Add a workflow_dispatch trigger: "Run workflow" on main tags the current
commit as v<version from pyproject.toml> and creates the release, so a
release no longer depends on someone pushing a tag. Tag pushes still work
and are still checked against the package version.

PyPI publishing now waits for the GitHub release, so a package is never
published without its tag and release notes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TMXYMqgLAykqRApmbRfpTA
@CodeWithBehnam
CodeWithBehnam merged commit af08d1a into main Oct 1, 2026
3 of 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.

2 participants