Zolyn / changelogithub

Generate changelog for GitHub

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

changelogithub

NPM version

Generate changelog for GitHub releases from Conventional Commits, powered by changelogen.

👉 Changelog example

Features

  • 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

  • Generate changelog file

Usage

In GitHub Actions:

# .github/workflows/release.yml

name: Release

on:
  push:
    tags:
      - 'v*'

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - uses: actions/setup-node@v3
        with:
          node-version: 16.x

      - run: npx changelogithub # or changelogithub@0.12 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.

Generate changelog file:

changelogithub -o CHANGELOG.md --contributors false --emoji false

Configuration

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.

Preview Locally

npx changelogithub --dry

Why?

I used to use conventional-github-releaser for almost all my projects. Until I found that it does NOT support using exclamation mark for breaking changes - hiding those important breaking changes in the changelog without the awareness from maintainers.

License

MIT License 2022 Anthony Fu

About

Generate changelog for GitHub

License:MIT License


Languages

Language:TypeScript 88.5%Language:JavaScript 11.5%