Coder Social home page Coder Social logo

ydcjeff / chlog Goto Github PK

View Code? Open in Web Editor NEW
5.0 1.0 0.0 276 KB

Universal changelog generator using conventional commit+ with monorepo support. Written in Rust.

License: MIT License

Rust 99.52% Shell 0.48%
rust conventional-commits conventional-changelog changelog changelog-generator git

chlog's Introduction

chlog

CI status crate version crate total download

Universal changelog generator using conventional commit+ with monorepo support.

demo

chlog can generate the changelog from the conventional commits with a few extra commit types. The supported commit types are:

  • fix -> Bug Fixes
  • deps -> Dependency Updates
  • deprecate -> Deprecations (Deprecations are important for users as putting under refactor is hard to find)
  • dx -> Developer Experience
  • docs -> Documentation
  • feat -> Features
  • perf -> Performance Improvements
  • refactor -> Refactoring

If there is ! after the commit types or commit scope, those commits will be under BREAKING CHANGES section.

Installation

Binary releases can be downloaded at GitHub release page or if you want to install with cargo:

cargo install chlog

Usage

chlog has command line options for generating and prepending changelogs.

For the first release, you can run with:

chlog -o CHANGELOG.md -r 0 -t v0.1.0

For the subsequent release,

chlog -o CHANGELOG.md -t v0.2.0

For the packages with monorepo, you can use commit-path option. It will generate the changelog scoped to that package.

chlog -o CHANGELOG.md -t v0.3.0 -r 2 --commit-path crates/scope-crate

CLI:

  chlog

  Description:
    Universal changelog generator using conventional commit+
    with monorepo support

  Usage:
    $ chlog [options]

  Example:
    $ chlog -o CHANGELOG.md -t v1.0.0
    $ chlog -o CHANGELOG.md -t v1.0.0
    $ chlog -o CHANGELOG.md -t v1.0.0 -r 2
    $ chlog -o CHANGELOG.md -t v1.0.0 -r 2 --commit-path crates/scope-crate

  Options:
    -t  <string>          Tag name for the next release
    -r  <number>          Number of releases to generate the changelog
                          If 0, the whole changelog will be generated
                          (i.e. first release) (default: 1)
    -o  <file>            File to write the generated changelog
                          It will prepend the changelogs if the file exists
                          otherwise, will create a new one
    --commit-path <path>  Generate a changelog scoped to a specific directory

  Flags:
    -h, --help            Show this message
    -V, --version         Show version number

  Source: https://github.com/ydcjeff/chlog

Contribution

  • Make sure you have installed Rust.

  • Setup git hook

    git config core.hookspath .githooks

LICENSE

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.