Skip to content

Merge v4-beta to v4 (2026-10-27) - #227

Merged
PaulNewling merged 5 commits into
v4from
merge-2026-10-27
Oct 29, 2026
Merged

PaulNewling merged 5 commits into
v4from
merge-2026-10-27

Conversation

@PaulNewling

@PaulNewling PaulNewling commented Oct 27, 2026 •

Copy link
Copy Markdown
Contributor

Merge v4-beta into v4. The only change is #225: a block PR labelled mark-unstable publishes the block without adding it to the stable channel. PRs without the label release as before.

What changes on v4

node-simple-pnpm.yaml, job build-test-publish:

  1. Run on the PR's merge commit ("Commit changed files to main"): looks up the merged PR for GITHUB_SHA. If it has mark-unstable, the "Auto-generated changes" commit gets a Publish-Unstable: true trailer.
  2. Publish run on that commit (new step before "Pack unpublished npm packages"): if the trailer is present, sets PL_PUBLISH_UNSTABLE=true and adds an "Unstable release" notice to the run. block-tools publish reads that variable as --unstable.

If the PR lookup fails, the version commit is not pushed and nothing is published. Repos that don't publish blocks are unaffected apart from one extra API call on runs that push a version commit.

Canary

Ran on platforma-open/xsv-import#9 with the workflow pinned to the feature branch:

  • The "Auto-generated changes" commit 8faa7f3 carries Publish-Unstable: true.
  • The publish run showed the "Unstable release" notice.
  • Registry: 2.0.2 was published with channels: [], and stable is still 2.0.1.

Registry check (anyone can re-run it):

curl -s https://blocks.pl-open.science/v2/milaboratories/xsv-import/overview.json \
  | jq -c '.versions[] | {version: .description.id.version, channels}'
{"version":"2.0.2","channels":[]}
{"version":"2.0.1","channels":["stable"]}

Publish jobs:

The commit→PR lookup was also checked against 6 merge-queue merges in 3 repos; all 6 found their PR.

Not covered

  • Merge-queue batches: the merge queue in 46 block repos can merge up to 5 PRs in one push (max_entries_to_merge: 5). Only the last PR in such a batch is checked.

In either case, block-tools mark-stable --unmark takes the released version back out of the stable channel.

Rollout

The mark-unstable label exists in 77 of 78 block repos. import-bulk-count-matrix still needs it, from someone with write access.

PaulNewling and others added 5 commits October 26, 2026 15:37
build-ready, build-failed, publish and tests pasted the raw head commit
message into a JSON string. A message with quotes, braces or backticks
(a squashed PR body) broke the payload: slack-github-action failed with
'missed comma between flow collection entries', and in docker-ecr-argocd
that failed build-app and skipped the ArgoCD values update (mistat2 #5).

The message now goes through nunjucks 'dump' (JSON.stringify) and is cut
to 2900 characters, under Slack's 3000-character limit for a text field.
node-simple-pnpm: publish without the stable channel when the merged PR is labelled mark-unstable
@PaulNewling
PaulNewling merged commit 670dbd7 into v4 Oct 29, 2026
1 check passed
@PaulNewling
PaulNewling deleted the merge-2026-10-27 branch October 29, 2026 09:30
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