Generate changelog for GitHub releases from Conventional Commits, powered by changelogen.
- Support exclamation mark as breaking change, e.g.
chore!: drop node v10
- Grouped scope in changelog
- Create the release note, or update the existing one
- List contributors
In GitHub Actions:
# .github/workflows/release.yml
name: Release
permissions:
contents: write
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set node
uses: actions/setup-node@v4
with:
registry-url: https://registry.npmjs.org/
node-version: lts/*
- run: npx changelogithub # or [email protected] if ensure the stable result
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
It will be trigged whenever you push a tag to GitHub that starts with v
.
You can put a configuration file in the project root, named as changelogithub.config.{json,ts,js,mjs,cjs}
, .changelogithubrc
or use the changelogithub
field in package.json
.
npx changelogithub --dry
I used to use conventional-github-releaser
for almost all my projects. Until I found that it does NOT support using exclamation marks for breaking changes - hiding those important breaking changes in the changelog without the awareness from maintainers.
MIT License © 2022 Anthony Fu