Skip to content

Release v0.8.0

Latest

Choose a tag to compare

@github-actions github-actions released this 19 Oct 03:12
Immutable release. Only release title and notes can be modified.
72f0294

✨ Highlights

This release brings powerful new features for creating smarter, more organized release notes!

  • πŸ”— Issue-Linked PRs: Track complete feature stories by linking issues to multiple PRs
  • πŸš€ Manual Release Notes: Embed custom content using Jinja2 templates
  • πŸ“Š Enhanced Data: PR additions/deletions stats and improved JSON output
  • 🎯 Smart Categorization: Issues prioritized over PRs to reduce duplication

What's Changed

🎯 Key Features in This Release

πŸ”— Issue-Linked Pull Requests Support

The game-changing feature from issue #114 allows tracking complete feature stories across multiple PRs:

  • #114: Support getting All Issues Linked to Pull Requests in #129, #131, #133 by @haya14busa ($\textsf{\color{ #3fb950}{\textsf{+1023}}\color{ #f85149}{\textsf{ -16}}}$)

What this enables:

  • Smart Grouping: When an issue is linked to multiple PRs, show the complete feature story
  • Reduced Duplication: Issues take priority over individual PRs to avoid clutter
  • Unified View: See the full scope of work including linked PRs and combined statistics
  • Template Examples: New github-ext-with-issues.md.jinja and label-with-issues.md.jinja templates demonstrate this feature

πŸ“ Manual Release Notes Support

With PR #118, you can now create rich, customized release notes by placing markdown files in .changelog/ directories:

  • Global templates in .changelog/templates/
  • Version-specific content in .changelog/from-v0.7.0/
  • Include them with {% include ['header.md'] ignore missing %}

πŸ“Š Enhanced JSON Output

  • PR Statistics: Now includes additions and deletions for each pull request (#111)
  • Timing Data: Added latestMergedAt timestamp for better time tracking (#113)

This release includes 19 merged pull requests.

Enhancements πŸŽ‰

# Title :octocat: Author Changes
#111 add PR additions/deletions data haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+23}}\color{ #f85149}{\textsf{ -10}}}$
#113 add latestMergedAt to JSON output haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+47}}\color{ #f85149}{\textsf{ -5}}}$
#118 feat: support embedding manual release notes haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+192}}\color{ #f85149}{\textsf{ -3}}}$
#119 feat: add --version flag support to CLI haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+2}}\color{ #f85149}{\textsf{ -1}}}$
#129 feat: Add comprehensive closing issues support with issue prioritization haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+708}}\color{ #f85149}{\textsf{ -4}}}$
#132 Add extract filter and fix duplicate authors in label-with-issues template haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+83}}\color{ #f85149}{\textsf{ -6}}}$
#161 Fix the npm library entry point for direct release-note consumers haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+293}}\color{ #f85149}{\textsf{ -22}}}$

Templates ⛩️

# Title :octocat: Author Changes
#107 fix label template haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+2}}\color{ #f85149}{\textsf{ -2}}}$
#111 add PR additions/deletions data haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+23}}\color{ #f85149}{\textsf{ -10}}}$
#131 Add label-with-issues template for mixed issue/PR display haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+176}}\color{ #f85149}{\textsf{ -0}}}$
#132 Add extract filter and fix duplicate authors in label-with-issues template haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+83}}\color{ #f85149}{\textsf{ -6}}}$
#133 feat: Add github-ext-with-issues template combining categorized PRs with issue support haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+139}}\color{ #f85149}{\textsf{ -12}}}$

Bug Fixes πŸ›

# Title :octocat: Author Changes
#107 fix label template haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+2}}\color{ #f85149}{\textsf{ -2}}}$

Other Changes

# Title :octocat: Author Changes
#115 Revert "chore(deps): bump sigstore/cosign-installer from 3.9.2 to 4.0.0" haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$
#120 feat: add manual release notes example and template cleanup haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+26}}\color{ #f85149}{\textsf{ -20}}}$
#121 use {% raw %} to avoid including file unexpectedly haya14busa @haya14busa $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$

Dependencies

Show all 6 items
# Title :octocat: Author Changes
#92 chore(deps): bump anchore/sbom-action from 0.20.7 to 0.20.8 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$
#93 chore(deps): bump sigstore/cosign-installer from 3.9.2 to 4.0.0 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$
#128 chore(deps): bump github/codeql-action from 4.30.8 to 4.31.2 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$
#127 chore(deps-dev): bump oxlint-tsgolint from 0.2.1 to 0.4.0 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$
#125 chore(deps): bump actions/upload-artifact from 4 to 5 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+2}}\color{ #f85149}{\textsf{ -2}}}$
#122 chore(deps): bump anchore/sbom-action from 0.20.8 to 0.20.9 dependabot @dependabot[bot] $\textsf{\color{ #3fb950}{\textsf{+1}}\color{ #f85149}{\textsf{ -1}}}$

Contributors

haya14busa
@haya14busa

dependabot
@dependabot[bot]

Full Changelog: v0.7.0...v0.8.0 | Pull Requests


This manual release note was created using the new manual release notes feature! πŸŽ‰

πŸ“‹ Release Verification Instructions

Verifying Release Artifacts

Using Cosign

All release artifacts are signed using Sigstore and can be verified using cosign:

# Download the release assets
gh release download v0.8.0 --repo actionutils/gh-release-notes

# Verify the checksum file signature
cosign verify-blob \
  --certificate-identity-regexp '^https://github.com/actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml@.*$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  --cert "checksums.txt.pem" \
  --signature "checksums.txt.sig" \
  "checksums.txt"

# Verify checksums of all binaries
sha256sum --ignore-missing -c "checksums.txt"

Using GitHub Attestations

All artifacts have GitHub Attestations that can be verified:

# Verify attestations for the checksum file
gh attestation verify "checksums.txt" --repo actionutils/gh-release-notes --signer-workflow='actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml'
πŸ“¦ Installation Scripts

This release includes installation scripts generated by binstaller:

  • install.sh - Downloads and installs the binary
  • run.sh - Downloads and runs the binary directly

Verifying Installation Scripts

Before using the installation scripts, you can verify their authenticity using cosign (signatures) or GitHub Attestations.

# Download the scripts and their signatures
gh release download v0.8.0 --pattern "*.sh*" --repo actionutils/gh-release-notes

# Verify with cosign (recommended)
cosign verify-blob \
  --certificate-identity-regexp '^https://github.com/actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml@.*$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  --cert install.sh.pem \
  --signature install.sh.sig \
  install.sh

cosign verify-blob \
  --certificate-identity-regexp '^https://github.com/actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml@.*$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  --cert run.sh.pem \
  --signature run.sh.sig \
  run.sh

# Or verify with GitHub Attestations
# Verify the install script
gh attestation verify install.sh --repo actionutils/gh-release-notes --signer-workflow='actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml'

# Verify the run script
gh attestation verify run.sh --repo actionutils/gh-release-notes --signer-workflow='actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml'

Using Installation Scripts

# Install the binary
curl -sSfL https://github.com/actionutils/gh-release-notes/releases/download/v0.8.0/install.sh | sh

# Or run directly without installation
curl -sSfL https://github.com/actionutils/gh-release-notes/releases/download/v0.8.0/run.sh | sh

One-liner Installation with Verification

Using Cosign (recommended)

# Set the desired version and script type
VERSION="v0.8.0"
SCRIPT="install.sh"  # or "run.sh"
DOWNLOAD_URL="https://github.com/actionutils/gh-release-notes/releases/download/${VERSION}"

# Download and verify with cosign, then execute
curl -sL "${DOWNLOAD_URL}/${SCRIPT}" | \
    (tmpfile=$(mktemp); cat > "$tmpfile"; \
     cosign verify-blob \
       --certificate-identity-regexp '^https://github.com/actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml@.*$' \
       --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
       --certificate "${DOWNLOAD_URL}/${SCRIPT}.pem" \
       --signature "${DOWNLOAD_URL}/${SCRIPT}.sig" \
       "$tmpfile" && \
     sh "$tmpfile"; rm -f "$tmpfile")

Using GitHub Attestations

# Set the desired version
VERSION="v0.8.0"

# Install with attestation verification
curl -sL "https://github.com/actionutils/gh-release-notes/releases/download/${VERSION}/install.sh" | \
    (tmpfile=$(mktemp); cat > "$tmpfile"; \
     gh attestation verify --repo=actionutils/gh-release-notes --signer-workflow='actionutils/trusted-go-releaser/.github/workflows/trusted-release-workflow.yml' "$tmpfile" && \
     sh "$tmpfile"; rm -f "$tmpfile")