Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

grunt-conventional-changelog

btford22.5kMIT6.1.0

Generate a changelog using conventional-changelog

grunt, gruntplugin, conventional-changelog, conventional, changelog, log

readme

NPM version Build Status Dependency Status Coverage Status

Generate a changelog using conventional-changelog

Issues with the output should be reported on the conventional-changelog issue tracker.

Install

$ npm install --save-dev grunt-conventional-changelog

Usage

grunt.loadNpmTasks('grunt-conventional-changelog');

grunt.initConfig({
  conventionalChangelog: {
    options: {
      changelogOpts: {
        // conventional-changelog options go here
        preset: 'angular'
      },
      context: {
        // context goes here
      },
      gitRawCommitsOpts: {
        // git-raw-commits options go here
      },
      parserOpts: {
        // conventional-commits-parser options go here
      },
      writerOpts: {
        // conventional-changelog-writer options go here
      }
    },
    release: {
      src: 'CHANGELOG.md'
    }
  }
});

grunt.registerTask('default', ['conventionalChangelog']);

API

See the conventional-changelog docs.

There are some changes:

changelogOpts

warn

It is grunt.verbose.writeln.

Edit your changelog manually

Sometimes after auto-generating the changelog you want to be able to review the generated changes or add some notes to the current release, you can polish your changelog manually without changing your workflow (you might use grunt-release in the workflow but need grunt to wait until you have finished polishing your changelog).

Here are some examples of how to achieve this.

grunt.initConfig({

  // grunt-shell
  shell: {
    changelog: {
      options: {
        stdinRawMode: true
      },
      command: 'subl -w CHANGELOG.md',
    }
  },

  // or grunt-spawn
  spawn: {
    changelog: {
      command: 'vim',
      pattern: 'CHANGELOG.md',
      commandArgs: ['{0}'],
      opts: {
        stdio: 'inherit'
      }
    }
  },

});

...

grunt.registerTask('publish', ['conventionalChangelog', 'shell:changelog', 'release']);

// or

grunt.registerTask('publish', ['conventionalChangelog', 'spawn:changelog', 'release']);

License

MIT

changelog

6.1.0 (2016-02-13)

Features

  • debug: use conventional-changelog 1.1.0 and enable debug (ecbaf63)

6.0.1 (2016-02-11)

Bug Fixes

  • log: should say "Modified" how many files (15f7955)

6.0.0 (2016-02-11)

Bug Fixes

  • concat: make sure the encoding is always buffer (75fc4ee)
  • error: attach handler to the stream (a54a194)

Chores

BREAKING CHANGES

  • deps: Using conventional-changelog v1.

5.0.0 (2015-09-30)

Features

BREAKING CHANGES

  • deps: Use conventional-changelog^0.5.0

4.1.0 (2015-08-15)

deps: use conventional-changelog@0.4.0

4.0.0 (2015-08-09)

Features

3.0.0 (2015-07-24)

Features

  • deps: bump conventional-changelog to ^0.2.1 and use new api (88212f8)

2.0.2 (2015-07-22)

2.0.1 (2015-07-20)

Bug Fixes

2.0.0 (2015-07-20)

Features

BREAKING CHANGES

<a name"1.2.2">

1.2.2 (2015-05-02)

Bug Fixes

  • dest: do not ignore options.dest (1dbf0a8c, closes #55)
  • grunt: bump task should work properly (488bb2eb)

<a name"1.2.1">

1.2.1 (2015-04-03)

Bump conventional-changelog to v0.0.17

<a name"1.2.0">

1.2.0 (2015-03-31)

Bug Fixes

  • task: fix that all editors can be started in config (35a92b1d, closes #35)

Breaking Changes

  • This module no longer reads your package.json to find version and repository. This logic is moved to conventional-changelog. We want to make this one a pure grunt wrapper.

    (0f9562ff)

1.1.0 (2014-02-11)

Bug Fixes

  • make changelog work if no githubRepo specified (890aac96)
  • append if prepend set to false (bdc56349)
  • Write whether file exists or not (a2f663c0)
  • changelog: cannot generate changelog for first tag () (706a284b, closes #27)

Features

  • parse multiple "Closes" definitions (57e93d77)
  • parse Closes/Fixes from subject (8bcd7a39)
  • replace with the changelog task from karma (25a01c7c)
  • validator:
    • allow 100 characters in commit message () (9982d897, closes #28)
    • show list of available types on error (4aee5b8e)

Breaking Changes

  • options.github no longer supported. Use the repository option instead.

To migrate, change the following:

options: {
  github: 'me/project'
}

To:

options: {
  repository: 'https://github.com/me/project'
}

(caa14d69)

v1.0.0 (2013-07-17)

Bug Fixes

  • append if prepend set to false (bdc56349)
  • Write whether file exists or not (a2f663c0)

Features

  • parse multiple "Closes" definitions (57e93d77)
  • parse Closes/Fixes from subject (8bcd7a39)
  • replace with the changelog task from karma (25a01c7c)

v0.1.2 (2013-06-23)

Bug Fixes

  • log: correctly generate links to GitHub commits (de15bde5)

v0.1.1 (2013-06-11)

Bug Fixes

  • task: Fix shelljs dependency problem (2db8cf96)

v0.1.0 (2013-05-30)

Bug Fixes

  • gruntfile: load package.json (8c4cb685)
  • task:
    • fix issue when no changelog exist yet (c1a31f56)
    • version regex now matches the commit messages created by npm version by defaul (db3985d2)

Features

  • changelog:
    • Allow 'enforce' option: Adds a git hook for commit conventions (1cbe92cf)
    • allow 'version' option, to use instead of 'pkg.version' (4a06569a)
  • log:
    • Add smart 'github' option for commit links (6ac1083a)
    • Add breaking changes section (04ecfceb)
    • dogfooding - this task uses itself to generate its own changelogs (746e9ffc)

v0.0.12 (2013-04-06)

Features

  • log: automatically split notes based on release version (5545fe45)
  • readme: improve the readme (0aeec479)

v0.0.11 (2013-04-05)

Bug Fixes

  • grunt: add .jshintrc (fd79b784)
  • readme: rename project, add license (7320c25f)
  • release: push to github and npm (c794c502)