Skip to content

Let a release be cut from the Actions tab, tag included - #160

Merged
guilyx merged 1 commit into
mainfrom
claude/library-demo-plots-webpage-8r8uz4
Aug 4, 2026
Merged

Let a release be cut from the Actions tab, tag included#160
guilyx merged 1 commit into
mainfrom
claude/library-demo-plots-webpage-8r8uz4

Conversation

@guilyx

@guilyx guilyx commented Aug 4, 2026

Copy link
Copy Markdown
Member

Follow-up to #158. The release workflow could only be started by pushing a tag from a working copy, which makes releasing depend on whoever happens to have a clone and the right credentials.

What changes

Actions → release → Run workflow → target: pypi now cuts the whole release, creating the tag itself through the releases API.

Creating the tag after the build is the better order regardless of who starts it: the tag lands on a commit that has already had its version guards checked, its metadata strict-checked, and its wheel installed clean and made to solve an instance. A tag pushed first is a promise the build has not been asked to keep yet.

Pushing a tag still works and runs the identical pipeline. A TestPyPI dry run deliberately creates neither tag nor release — it is there to rehearse, not to leave traces.

Why now

I tried to push v2.3.0 and could not: this sandbox's git proxy returns HTTP 403 on git-receive-pack for tag refs while allowing branch pushes, and the GitHub MCP tooling here exposes only read operations for tags and releases. So the tag was unreachable from my side entirely.

That is my constraint, not yours — but it surfaced a real gap. "Release directly from GitHub Actions" should not have required a local git push --tags in the first place.

Still blocked on you

The pypi job cannot succeed until a trusted publisher exists on PyPI. From #158:

Field Value
Owner APLA-Toolbox
Repository name PythonPDDL
Workflow name release.yml
Environment name pypi

https://pypi.org/manage/project/jupyddl/settings/publishing/

Once that exists, one click on Run workflow → pypi publishes 2.3.0, tags it, and cuts the release. I would suggest a testpypi run first — configure the same publisher on https://test.pypi.org with environment testpypi — because a first publish is the one you least want to fumble.


Generated by Claude Code

The workflow could only be started by pushing a tag from a working copy,
which makes releasing depend on whoever has a clone and the right
credentials. Running it from the Actions tab now cuts the whole release,
creating the tag itself via the releases API.

Creating the tag *after* the build is the better order regardless of who
starts it: the tag lands on a commit that has already had its version
guards checked, its metadata strict-checked, and its wheel installed
clean and made to solve an instance. A tag pushed first is a promise the
build has not been asked to keep yet.

A TestPyPI dry run still creates neither tag nor release -- it is there
to rehearse, not to leave traces.

Practical note for anyone working in a sandbox: this environment's git
proxy returns 403 on `git-receive-pack` for tag refs while allowing
branch pushes, so a tag cannot be pushed from here at all. The Actions
path is not a workaround bolted on for that -- it is what "release
directly from GitHub Actions" should have meant in the first place -- but
it is what makes the release reachable without a laptop.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Meb35zHKsyBkH2sbWoyKMT
@cursor

cursor Bot commented Aug 4, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@mergify
mergify Bot requested a review from sampreets3 August 4, 2026 07:32
@mergify

mergify Bot commented Aug 4, 2026

Copy link
Copy Markdown
Contributor

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@guilyx
guilyx merged commit 03ce33d into main Aug 4, 2026
11 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