Skip to content

fix(release): an empty code block in the notes, and a check for the next one - #24

Merged
youhide merged 1 commit into
mainfrom
fix/release-notes
Aug 11, 2026
Merged

fix(release): an empty code block in the notes, and a check for the next one#24
youhide merged 1 commit into
mainfrom
fix/release-notes

Conversation

@youhide

@youhide youhide commented Aug 11, 2026

Copy link
Copy Markdown
Owner

Reported by the first person to read the v0.1.0 notes.

`ghcr.io/youhide/oxinit:demo` tracks `main` if you would rather have the
latest.

```bash
```          <- this

### Install

It came from editing the heredoc that writes the notes by string
substitution: my insertion ended with an opening fence directly above a
closing fence that was already there, so the two paired up around
nothing. The diff looked fine.

Markdown has no compiler, so CI is one now

.github/scripts/check-release-notes.py renders the header exactly as
the workflow does and fails on unbalanced fences or empty code blocks —
the two mistakes that survive review by looking correct in a diff.

The published v0.1.0 notes were edited in place.

The release itself

Worked on its first run, and is verified against what was published
rather than what was built:

  • Both tarballs downloaded; both sha256 match.
  • oxinit, oxctl and oxlogd out of the x86_64 tarball report 0.1.0.
  • The same out of the aarch64 tarball, under emulation.
  • ghcr.io/youhide/oxinit:v0.1.0 pulls anonymously.

A pattern, not three slips

This is the third time in this project the failure was editing text
without looking at the output
, and the second time it reached somebody.
Named as such in ROADMAP.

…ext one

Reported by the first person to read the v0.1.0 release notes.

It came from editing the heredoc that writes them by string
substitution: the insertion ended with an opening fence directly above a
closing fence that was already there, so the two paired up around
nothing. The diff looked fine. Nothing rendered the result, and Markdown
has no compiler to complain.

So CI has one. check-release-notes.py renders the header the way the
workflow does and fails on unbalanced fences or empty blocks — the two
mistakes that survive review by looking correct in a diff.

The published v0.1.0 notes were edited in place.

The release itself worked on its first run, and is verified against what
was published rather than what was built: both tarballs' checksums
match, and the binaries out of both report 0.1.0 — the aarch64 half
under emulation. The versioned image pulls anonymously.

Third time in this project that the failure was editing text without
looking at the output, and the second time it reached somebody. Named as
a pattern in ROADMAP rather than left as three separate slips.
@youhide
youhide merged commit 2cf5d02 into main Aug 11, 2026
8 checks passed
@youhide
youhide deleted the fix/release-notes branch August 11, 2026 20:43
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