Automatic Changelog generator using Jinja2 templates.
Project description
# gitolog
Automatic changelog generator. From git logs to change logs.
- Installation: `sudo pip3 install gitolog`
- Features:
- [Jinja2][jinja2] templates!
You get full control over the rendering.
Built-in [Keep a Changelog][keep-a-changelog] and [Angular][angular] templates
(also see [Conventional Changelog][conventional-changelog]).
- Commit styles/conventions parsing.
Built-in [Angular][angular-style], [Atom][atom-style] and basic styles.
- Git service/provider agnostic,
plus references parsing (issues, commits, etc.).
Built-in [GitHub][github-refs] and [Gitlab][gitlab-refs] support.
- Understands [Semantic Versioning][semantic-versioning]:
major/minor/patch for versions and commits.
Guesses next version based on last commits.
- Todo:
- [Plugin architecture][issue-7],
to support more commit styles and git services.
- [Template context injection][issue-4],
to furthermore customize how your changelog will be rendered.
- [Easy access to "Breaking Changes"][issue-1] in the templates.
- [Update changelog in-place][issue-2], paired with
[commits/dates/versions range limitation ability][issue-3].
## Command-line
```console
$ gitolog --help
usage: gitolog [-h] [-o OUTPUT] [-s {angular,atom,basic}]
[-t {angular,keepachangelog}] [-v]
REPOSITORY
Command line tool for gitolog Python package.
positional arguments:
REPOSITORY The repository path, relative or absolute.
optional arguments:
-h, --help Show this help message and exit.
-o OUTPUT, --output OUTPUT
Output to given file. Default: stdout.
-s {angular,atom,basic}, --style {angular,atom,basic}
The commit style to match against.
-t {angular,keepachangelog}, --template {angular,keepachangelog}
The Jinja2 template to use. Prefix with "path:" to
specify the path to a directory containing a file
named "changelog.md".
-v, --version Show the current version of the program and exit.
```
[jinja2]: http://jinja.pocoo.org/
[keep-a-changelog]: http://keepachangelog.com/en/1.0.0/
[angular]: https://github.com/angular/angular/blob/master/CHANGELOG.md
[conventional-changelog]: https://github.com/conventional-changelog/conventional-changelog
[semantic-versioning]: http://semver.org/spec/v2.0.0.html
[atom-style]: https://github.com/atom/atom/blob/master/CONTRIBUTING.md#git-commit-messages
[angular-style]: https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit
[github-refs]: https://help.github.com/articles/autolinked-references-and-urls/
[gitlab-refs]: https://docs.gitlab.com/ce/user/markdown.html#special-gitlab-references
[issue-1]: https://gitlab.com/pawamoy/gitolog/issues/1
[issue-2]: https://gitlab.com/pawamoy/gitolog/issues/2
[issue-3]: https://gitlab.com/pawamoy/gitolog/issues/3
[issue-4]: https://gitlab.com/pawamoy/gitolog/issues/4
[issue-5]: https://gitlab.com/pawamoy/gitolog/issues/5
[issue-6]: https://gitlab.com/pawamoy/gitolog/issues/6
[issue-7]: https://gitlab.com/pawamoy/gitolog/issues/7
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [0.1.1](https://gitlab.com/pawamoy/gitolog/tags/0.1.1) ([compare](https://gitlab.com/pawamoy/gitolog/compare/0.1.0...0.1.1)) - 2018-06-27
### Fixed
- Fix build with MANIFEST.in, add license file ([013fb69](https://gitlab.com/pawamoy/gitolog/commit/013fb691826924d6f71b4159a8fa650e40324db3)).
### Misc
- Improve readability ([5e590f6](https://gitlab.com/pawamoy/gitolog/commit/5e590f6ac62b23e608a507e08123efba3b0f7e0d)).
- Prepare release 0.1.1 ([7e2baf8](https://gitlab.com/pawamoy/gitolog/commit/7e2baf87987962ba28a7e3d958bb4328e9dd8914)).
## [0.1.0](https://gitlab.com/pawamoy/gitolog/tags/0.1.0) ([compare](https://gitlab.com/pawamoy/gitolog/compare/83845fe8d7deb85a2e093fe68a4b6a48b6d8e446...0.1.0)) - 2018-06-27
### Added
- Add github/gitlab regexes ([584fd73](https://gitlab.com/pawamoy/gitolog/commit/584fd73ec88ac51abbf8555d8f78b7144529e6b3)).
### Fixed
- Fix patch bump ([8470e69](https://gitlab.com/pawamoy/gitolog/commit/8470e695128d9892296acdd31c404d85add68983)).
- Fix refs parsing ([8c77cb7](https://gitlab.com/pawamoy/gitolog/commit/8c77cb736971473837384a8238c3c53886d77c75)).
### Misc
- Continue packaging (#6) ([a29af2c](https://gitlab.com/pawamoy/gitolog/commit/a29af2cf990edf950b55a46ebea164ab068c9aec)).
- Finish packaging (#6) ([e92b492](https://gitlab.com/pawamoy/gitolog/commit/e92b4923a60d561c38150331dac9cd2e3ba6c130)).
- Implement reference parsing ([a9b4a89](https://gitlab.com/pawamoy/gitolog/commit/a9b4a89cd2737056166feb7a46da971549f1ffed)).
- Improve angular template, improve style/refs system ([5b87d48](https://gitlab.com/pawamoy/gitolog/commit/5b87d48acdf3aa0f5cc2731f48e372c4065d9f9b)).
- Initial commit ([83845fe](https://gitlab.com/pawamoy/gitolog/commit/83845fe8d7deb85a2e093fe68a4b6a48b6d8e446)).
- Package code (#6) ([1219eaf](https://gitlab.com/pawamoy/gitolog/commit/1219eafd02521f6f6ab942a02b7a7aee3d664143)).
- Update changelog for version 0.1.0 ([14edcaf](https://gitlab.com/pawamoy/gitolog/commit/14edcaf078d02c42abf1692664c620c509df88a0)).
- Update changelog for version 0.1.0 ([610633d](https://gitlab.com/pawamoy/gitolog/commit/610633da8a569e7f2966f1675a30aca651563e0b)).
- Update changelog for version 0.1.0 ([2eaaa2e](https://gitlab.com/pawamoy/gitolog/commit/2eaaa2e76fc35d111517ecd0a15daf65e705723c)).
- Work in progress ([27a60e8](https://gitlab.com/pawamoy/gitolog/commit/27a60e80e9a8308b88942311184346b1bfa4b0a8)).
Automatic changelog generator. From git logs to change logs.
- Installation: `sudo pip3 install gitolog`
- Features:
- [Jinja2][jinja2] templates!
You get full control over the rendering.
Built-in [Keep a Changelog][keep-a-changelog] and [Angular][angular] templates
(also see [Conventional Changelog][conventional-changelog]).
- Commit styles/conventions parsing.
Built-in [Angular][angular-style], [Atom][atom-style] and basic styles.
- Git service/provider agnostic,
plus references parsing (issues, commits, etc.).
Built-in [GitHub][github-refs] and [Gitlab][gitlab-refs] support.
- Understands [Semantic Versioning][semantic-versioning]:
major/minor/patch for versions and commits.
Guesses next version based on last commits.
- Todo:
- [Plugin architecture][issue-7],
to support more commit styles and git services.
- [Template context injection][issue-4],
to furthermore customize how your changelog will be rendered.
- [Easy access to "Breaking Changes"][issue-1] in the templates.
- [Update changelog in-place][issue-2], paired with
[commits/dates/versions range limitation ability][issue-3].
## Command-line
```console
$ gitolog --help
usage: gitolog [-h] [-o OUTPUT] [-s {angular,atom,basic}]
[-t {angular,keepachangelog}] [-v]
REPOSITORY
Command line tool for gitolog Python package.
positional arguments:
REPOSITORY The repository path, relative or absolute.
optional arguments:
-h, --help Show this help message and exit.
-o OUTPUT, --output OUTPUT
Output to given file. Default: stdout.
-s {angular,atom,basic}, --style {angular,atom,basic}
The commit style to match against.
-t {angular,keepachangelog}, --template {angular,keepachangelog}
The Jinja2 template to use. Prefix with "path:" to
specify the path to a directory containing a file
named "changelog.md".
-v, --version Show the current version of the program and exit.
```
[jinja2]: http://jinja.pocoo.org/
[keep-a-changelog]: http://keepachangelog.com/en/1.0.0/
[angular]: https://github.com/angular/angular/blob/master/CHANGELOG.md
[conventional-changelog]: https://github.com/conventional-changelog/conventional-changelog
[semantic-versioning]: http://semver.org/spec/v2.0.0.html
[atom-style]: https://github.com/atom/atom/blob/master/CONTRIBUTING.md#git-commit-messages
[angular-style]: https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit
[github-refs]: https://help.github.com/articles/autolinked-references-and-urls/
[gitlab-refs]: https://docs.gitlab.com/ce/user/markdown.html#special-gitlab-references
[issue-1]: https://gitlab.com/pawamoy/gitolog/issues/1
[issue-2]: https://gitlab.com/pawamoy/gitolog/issues/2
[issue-3]: https://gitlab.com/pawamoy/gitolog/issues/3
[issue-4]: https://gitlab.com/pawamoy/gitolog/issues/4
[issue-5]: https://gitlab.com/pawamoy/gitolog/issues/5
[issue-6]: https://gitlab.com/pawamoy/gitolog/issues/6
[issue-7]: https://gitlab.com/pawamoy/gitolog/issues/7
# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## [0.1.1](https://gitlab.com/pawamoy/gitolog/tags/0.1.1) ([compare](https://gitlab.com/pawamoy/gitolog/compare/0.1.0...0.1.1)) - 2018-06-27
### Fixed
- Fix build with MANIFEST.in, add license file ([013fb69](https://gitlab.com/pawamoy/gitolog/commit/013fb691826924d6f71b4159a8fa650e40324db3)).
### Misc
- Improve readability ([5e590f6](https://gitlab.com/pawamoy/gitolog/commit/5e590f6ac62b23e608a507e08123efba3b0f7e0d)).
- Prepare release 0.1.1 ([7e2baf8](https://gitlab.com/pawamoy/gitolog/commit/7e2baf87987962ba28a7e3d958bb4328e9dd8914)).
## [0.1.0](https://gitlab.com/pawamoy/gitolog/tags/0.1.0) ([compare](https://gitlab.com/pawamoy/gitolog/compare/83845fe8d7deb85a2e093fe68a4b6a48b6d8e446...0.1.0)) - 2018-06-27
### Added
- Add github/gitlab regexes ([584fd73](https://gitlab.com/pawamoy/gitolog/commit/584fd73ec88ac51abbf8555d8f78b7144529e6b3)).
### Fixed
- Fix patch bump ([8470e69](https://gitlab.com/pawamoy/gitolog/commit/8470e695128d9892296acdd31c404d85add68983)).
- Fix refs parsing ([8c77cb7](https://gitlab.com/pawamoy/gitolog/commit/8c77cb736971473837384a8238c3c53886d77c75)).
### Misc
- Continue packaging (#6) ([a29af2c](https://gitlab.com/pawamoy/gitolog/commit/a29af2cf990edf950b55a46ebea164ab068c9aec)).
- Finish packaging (#6) ([e92b492](https://gitlab.com/pawamoy/gitolog/commit/e92b4923a60d561c38150331dac9cd2e3ba6c130)).
- Implement reference parsing ([a9b4a89](https://gitlab.com/pawamoy/gitolog/commit/a9b4a89cd2737056166feb7a46da971549f1ffed)).
- Improve angular template, improve style/refs system ([5b87d48](https://gitlab.com/pawamoy/gitolog/commit/5b87d48acdf3aa0f5cc2731f48e372c4065d9f9b)).
- Initial commit ([83845fe](https://gitlab.com/pawamoy/gitolog/commit/83845fe8d7deb85a2e093fe68a4b6a48b6d8e446)).
- Package code (#6) ([1219eaf](https://gitlab.com/pawamoy/gitolog/commit/1219eafd02521f6f6ab942a02b7a7aee3d664143)).
- Update changelog for version 0.1.0 ([14edcaf](https://gitlab.com/pawamoy/gitolog/commit/14edcaf078d02c42abf1692664c620c509df88a0)).
- Update changelog for version 0.1.0 ([610633d](https://gitlab.com/pawamoy/gitolog/commit/610633da8a569e7f2966f1675a30aca651563e0b)).
- Update changelog for version 0.1.0 ([2eaaa2e](https://gitlab.com/pawamoy/gitolog/commit/2eaaa2e76fc35d111517ecd0a15daf65e705723c)).
- Work in progress ([27a60e8](https://gitlab.com/pawamoy/gitolog/commit/27a60e80e9a8308b88942311184346b1bfa4b0a8)).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Filename, size | File type | Python version | Upload date | Hashes |
---|---|---|---|---|
Filename, size gitolog-0.1.1-py3-none-any.whl (14.7 kB) | File type Wheel | Python version py3 | Upload date | Hashes View |