Skip to content

fix(ci): generate release notes for the tagged range - #88

Merged
roziscoding merged 1 commit into
mainfrom
fix/release-notes-changelog
Aug 19, 2026
Merged

fix(ci): generate release notes for the tagged range#88
roziscoding merged 1 commit into
mainfrom
fix/release-notes-changelog

Conversation

@roziscoding

Copy link
Copy Markdown
Owner

The v0.4.0 release came out with an empty version header and no commits:

## [](https://github.com/roziscoding/jack/compare/v0.4.0...v) (2026-08-19)

conventional-changelog -r 1 on its own emits the unreleased section, which is
empty when HEAD is the tag being released. The header it does emit carries no
version, because the root package.json has none, so the sed that was meant
to strip it never matched and the fallback to GitHub's generated notes never
ran.

Changes

  • Pass the range explicitly (previous tag .. this tag) via --from/--to,
    with git describe finding the previous tag. Without a previous tag the
    first release still works, since --from is omitted.
  • Add --stdout. v8 writes to CHANGELOG.md by default.
  • Move conventional-changelog and conventional-changelog-conventionalcommits
    into devDependencies and install them in the job. v8 no longer bundles
    presets, so -p conventionalcommits fails on a clean checkout.
  • Add .github/changelog.config.mjs, which clears the hidden effect on the
    preset's commit types so docs, chore, refactor, test, build,
    style and ci show up under their own sections.
  • Strip every ## heading rather than matching a version pattern. Section
    headings are ###, so nothing else is caught.

Verification

Ran the step extracted from the workflow YAML against real tags, with gh
stubbed:

  • v0.4.0 -> 1 feature + 3 docs entries
  • v0.2.0 -> 3 features, 3 bug fixes, 1 chore
  • v0.1.0 -> first release, no --from, works

The v0.4.0 release body has already been regenerated with gh release edit.

The v0.4.0 release came out with an empty version header and no commits.
`conventional-changelog -r 1` on its own emits the unreleased section,
which is empty when HEAD is the tag being released, and the header it
does emit carries no version because the root package.json has none, so
the `sed` that was meant to strip it never matched and the fallback to
GitHub's generated notes never ran.

Pass the range explicitly (previous tag .. this tag) and add `--stdout`,
which v8 needs to print instead of writing CHANGELOG.md.

Presets are no longer bundled with the CLI, so `conventional-changelog`
and `conventional-changelog-conventionalcommits` move into
devDependencies and the job installs them. That also lets the changelog
read its config from .github/changelog.config.mjs, which unhides docs,
chore, refactor, test, build, style and ci so the notes list every
commit.
@greptile-apps

greptile-apps Bot commented Aug 19, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR repairs tagged-release note generation by explicitly selecting the previous-tag-to-current-tag range and installing a pinned changelog toolchain.

  • Adds a Conventional Commits preset configuration that includes normally hidden commit types.
  • Installs release-note dependencies with Bun’s frozen lockfile and disabled lifecycle scripts.
  • Sends changelog output to stdout, removes generated version headings, and retains GitHub-generated notes as the empty-output fallback.
  • Updates the root manifest and Bun lockfile with the required changelog packages.

Confidence Score: 5/5

The PR appears safe to merge, with no concrete blocking or independently actionable non-blocking issue identified.

The release workflow fetches complete tag history, installs exact locked dependencies without lifecycle scripts, invokes the locally declared changelog binary for an explicit tag range, and preserves a valid generated-notes fallback.

Reviews (1): Last reviewed commit: "fix(ci): generate release notes for the ..." | Re-trigger Greptile

@roziscoding
roziscoding merged commit 34fa49d into main Aug 19, 2026
10 checks passed
@roziscoding
roziscoding deleted the fix/release-notes-changelog branch August 19, 2026 22:01
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