Categorygithub.com/wfscheper/stentor
repositorypackage
0.4.0
Repository: https://github.com/wfscheper/stentor.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

stentor

noun

  1. (in the Iliad) a Greek herald with a loud voice.
  2. (lowercase) a person having a very loud or powerful voice.
  3. (lowercase) a trumpet-shaped, ciliate protozoan of the genus Stentor.

stentor is a CLI for generating a change log or release notes from a set of fragment files and templates. It was inspired by towncrier and git-chlog.

Badges

Build codecov License Contributor Covenant

Installation

Binary

Download a pre-built binary for your OS and Architecture from the releases page.

Go

You can also build stentor directly using go install:

go install github.com/wfscheper/stentor/cmd/stentor@latest

Usage

Setup

This example assumes that there is already a v0.1.0 tag.

  1. Create a .stentor.d directory in your git repository.

    mkdir .stentor.d
    

    This is where your fragments, configuration, and templates will go.

  2. Create a minimal stentor config file.

    $ cat >.stentor.d/stentor.toml << EOF
    [stentor]
    repository = "https://github.com/myname/myrepo"
    EOF
    
  3. Create some fragment files.

    $ cat >.stentor.d/1.feature.md << EOF
    Added the foo feature.
    
    The foo feature is full of foos,
    and is awesome.
    EOF
    $ cat >.stentor.d/2.fix.md << EOF
    Fixed parsing foos that contain special characters
    
    `fooer` no longer chokes when parsing a foo with the special characters `!@#$%`.
    EOF
    
  4. Run stentor to see the output it would add to CHANGELOG.md.

    $ stentor v0.2.0 v0.1.0
    ## [v0.2.0] - 2006-01-02
    
    ### Features
    
    - Added the foo feature
    
      The foo feature is full of foos, and is awesome.
      [#1](https://github.com/myname/myrepo/issues/1)
    
    
    ### Bug fixes
    
    - Fixed parsing foos that contain special characters
    
      `fooer` no longer chokes when parsing a foo with the special characters `!@#$%`.
      [#2](https://github.com/myname/myrepo/issues/2)
    
    [v0.2.0]: https://github.com/myname/myrepo/compare/v0.1.0...v0.2.0
    
    
    ---
    
    $ git add .stentor.d/
    $ git commit -m "Setup stentor to generate CHANGELOG.md"
    
  5. Use the -release flag to consume the fragments and update the news file.

    Note: If a CHANGELOG.md does not exist already, one will be created.

    $ stentor -release v0.2.0 v0.1.0
    $ git status
    On branch master
    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git restore <file>..." to discard changes in working directory)
           modified:   CHANGELOG.md
           deleted:    .stentor.d/1.feature.md
           deleted:    .stentor.d/2.fix.md
    
    no changes added to commit (use "git add" and/or "git commit -a")