Skip to main content

Generate a changelog from git tags.

Project description

changelogfromtags Git Logo pipeline status PEP8 Downloads

Changelog generation has never been so easy

Fully automated changelog generation - This package generates a changelog file based on git tags.

Since you don't have to fill your CHANGELOG.md manually now: just run the script, relax and take a cup of :coffee: before your next release! :tada:

What’s the point of a changelog?

To make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project.

Why should I care?

Because software tools are for people. "Changelogs make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project."

https://keepachangelog.com

Installation

Install the python package like:

$ pip install changelogfromtags

:warning: changelogfromtags have been successuflly tested with git version >= 2.20.0 It doesn't works with git version 2.11.0 and under...

Usage

Assuming you have a message for git tags:

$ git tag -l -n200
0.1.0           First release
    You retrieve the content of `git tag 0.1.0 -n200`
0.1.1           Deploy package changelogfromtags on pypi

Running with CLI:

usage: changelogfromtags [-h] [-p [PREFIX]] [-t [TITLE]] [--tag TAG]
                         [--verbose]

Generate a change log from git tags.

optional arguments:
  -h, --help            show this help message and exit
  -p [PREFIX], --prefix [PREFIX]
                        Append a charachter before each line of the message
                        tag if it is not present.
  -t [TITLE], --title [TITLE]
                        Title in the header
  --tag TAG             Display entry for the given tag
  --verbose, -v

Example

$ changelogfromtags
Changelog
=========

0.1.1 (06/01/2020)
------------------
Deploy package changelogfromtags on pypi

0.1.0 (06/01/2020)
------------------
First release
You retrieve the content of `git tag 0.1.0 -n200`

To add a prefix on entries if not present:

$ changelogfromtags --prefix "- "
Changelog
=========

0.1.1 (06/01/2020)
------------------
- Deploy package changelogfromtags on pypi

0.1.0 (06/01/2020)
------------------
- First release
- You retrieve the content of `git tag 0.1.0 -n200`

To the entry of a specific tag:

$ changelogfromtags --tag 0.1.1
0.1.1 (06/01/2020)
------------------
- Deploy package changelogfromtags on pypi

Running with Docker

docker run -it --rm -v $(pwd):/app r4mb0/changelogfromtags

See changelogfromtags docker image.

Output example

Features and advantages of this project

  • Changelog entries are directly taken from git tags messages
  • No requirements except python and git
  • Generate canonical, neat changelog file, with default sections that follow basic changelog guidelines

Save more time with git flow & auto-git-flow !

Check https://pypi.org/project/auto-git-flow/ !

Alternatives

Here is a wikipage list of alternatives that I found. But none satisfied my requirements.

If you know other projects, feel free to edit this Wiki page!

License

changelogfromtags is released under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

changelogfromtags-0.5.0.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

changelogfromtags-0.5.0-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file changelogfromtags-0.5.0.tar.gz.

File metadata

  • Download URL: changelogfromtags-0.5.0.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.14

File hashes

Hashes for changelogfromtags-0.5.0.tar.gz
Algorithm Hash digest
SHA256 18b8bf34e007b0e5789c4e9397cc1e08ba5fd517b827681d15aac9a67b919684
MD5 51cca1e2bdac24bb8502a2f4c5749d0c
BLAKE2b-256 b9c4f4bced87d4572ab8b833494c84c8ca1e343938c342d9fb6f3d345585483f

See more details on using hashes here.

File details

Details for the file changelogfromtags-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: changelogfromtags-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.6.14

File hashes

Hashes for changelogfromtags-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6fd73ace951249a037665b7d932983c270413b3a1d725ac032e93e8987fe4e94
MD5 52224a8867288f5c0ddd5238d1270fd9
BLAKE2b-256 150056d39922a7ee4d51ffde5808e438da106744d2fa48fb4c59ad3d6c6763cf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page