Skip to content

ci: fix empty release notes (#289) + remove obsolete native-binary test (#290) - #291

Merged
rahlk merged 2 commits into
mainfrom
fix/issues-289-290
Jul 22, 2026
Merged

ci: fix empty release notes (#289) + remove obsolete native-binary test (#290)#291
rahlk merged 2 commits into
mainfrom
fix/issues-289-290

Conversation

@rahlk

Copy link
Copy Markdown
Collaborator

Fixes#289. Fixes#290.

Two release-workflow follow-ups found while shipping v1.4.4, in one branch as requested.

#289 — release notes came out empty (and crashed the org announcement)

release.yml built the release body from mikepenz/release-changelog-builder-action, whose release_config.json categorizes PRs strictly by label. v1.4.4's PRs were unlabeled, so the action logged Wrote 0 categorized pull requests → empty changelog → blank GitHub release body → blank BODY for the org createDiscussiongh: Body can't be blank (masked by continue-on-error).

Fix: extract the release body from the hand-written CHANGELOG.md section for the tag (deterministic, label-independent — and aligned with the "grounded in CHANGELOG.md" announcement policy), and hard-fail the release if that section is empty so a blank body can never publish again. Removes the label-based scraper, the mis-wired changelog-reader step (it read a non-existent steps.tag_name output), and the now-orphaned release_config.json.

Verified locally: the awk extractor pulls the correct section for v1.4.4/v1.4.3, writes a multiline notes output, and the guard trips on a missing/empty entry.

#290 — obsolete native-binary test

test_get_codeanalyzer_exec asserted _get_codeanalyzer_exec() == [sys.executable, "-m", "codeanalyzer_java"], but there's no codeanalyzer-native build anymore — the backend resolves a cached JDK and runs the bundled jar ([java, -jar, <jar>]). The test failed in CI (masked by continue-on-error). Removed it and its now-unused import sys.

Verified: tests/analysis/java/test_jcodeanalyzer.py42 passed.

rahlk added 2 commits July 22, 2026 12:16
test_get_codeanalyzer_exec asserted the old native invocation
[sys.executable, -m, codeanalyzer_java], but there is no codeanalyzer-native
build anymore — _get_codeanalyzer_exec() resolves a cached JDK and runs the
bundled jar ([java, -jar, <jar>]). The test failed in CI (masked by
continue-on-error). Drop it and its now-unused `sys` import.
The label-based mikepenz changelog scraper emitted nothing for unlabeled release
PRs ("Wrote 0 categorized pull requests"), blanking the GitHub release body and
crashing the org-announcement step with 'Body can't be blank'. Extract the release
body from the hand-written CHANGELOG.md section for the tag instead, and hard-fail
the release if that section is empty. Drop the label-dependent scraper, the
mis-wired changelog-reader step, and the orphaned release_config.json.
@rahlk
rahlk merged commit 7bc1ac5 into mainJul 22, 2026
@rahlk
rahlk deleted the fix/issues-289-290 branch July 22, 2026 21:31
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant

@rahlk