Skip to main content

Generate changelog from Git commits.

Project description

Generate changelog from Git commits.

PyPI Version Supported Python versions Build Status GPL-2.0-only OR LGPL-2.1-or-later Coverage

Prerequisites

  • Python 3.6, 3.7 and 3.8

Documentation

Documentation is available on Read the Docs.

Installation

Latest stable version on PyPI:

pip install matyan

Usage

See Basic concepts section to get impression on possible commit methodology and assumptions taken.

Generate changelog:

generate-changelog

Generate changelog skipping orphaned commits:

In some cases you only want to show what has been done with tickets and skip all non-ticket related commits.

generate-changelog --no-other

Generate changelog between two releases:

In some cases you only want to show what has been done since last release. The following example would generate changelog since version 0.0.1 to version 0.0.3.

generate-changelog 0.0.1..0.0.3

Generate changelog between two branches:

In some cases you only want to show what has been done since last release. The following example would generate changelog since version 0.0.1 to version 0.0.3.

generate-changelog master..dev

Generate changelog with releases info shown

generate-changelog --show-releases

Generate changelog between releases with releases info shown

generate-changelog 0.0.1..0.0.3 --show-releases

Generate changelog between branches with releases info shown

generate-changelog master..dev --show-releases

Generate changelog for the latest release with releases info shown

generate-changelog --latest-release --show-releases

Configuration

In order to customize names and texts, add a .matyan.ini in your project directory, form which you will be running the generate-changelog command.

Sample configuration:

[BranchTypes]
feature: Feature
bugfix: Bugfix
hotfix: Hotfix
deprecation: Deprecation

[OtherBranchType]
other: Other

[Unreleased]
unreleased: Unreleased

[IgnoreCommits]
exact: more
       clean up
       code comments
       more on docs
       repo
       working
       more on
       wip
       commit
prefix: more on
        continue on

Tips and tricks

Write to file

generate-changelog --show-releases 2>&1 | tee changelog.md

Create initial config file

matyan-create-config

Testing

Simply type:

./runtests.py

Or use tox:

tox

Or use tox to check specific env:

tox -e py36

Writing documentation

Keep the following hierarchy.

=====
title
=====

header
======

sub-header
----------

sub-sub-header
~~~~~~~~~~~~~~

sub-sub-sub-header
^^^^^^^^^^^^^^^^^^

sub-sub-sub-sub-header
++++++++++++++++++++++

sub-sub-sub-sub-sub-header
**************************

License

GPL-2.0-only OR LGPL-2.1-or-later

Support

For any issues contact me at the e-mail given in the Author section.

Author

Artur Barseghyan <artur.barseghyan@gmail.com>

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

matyan-0.2.tar.gz (143.3 kB view details)

Uploaded Source

Built Distribution

matyan-0.2-py2.py3-none-any.whl (162.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file matyan-0.2.tar.gz.

File metadata

  • Download URL: matyan-0.2.tar.gz
  • Upload date:
  • Size: 143.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.9

File hashes

Hashes for matyan-0.2.tar.gz
Algorithm Hash digest
SHA256 b9959d5db5e0cb8cd5a54cf0ec1596dc7da27ddeed86ea4a75cfe59b48abe5a5
MD5 ea4828b78cdfe23d07e758772ffaaecf
BLAKE2b-256 d1fbd55a1e283db2bbcec488029ea8e07bb648ff39a01e90aecba4cfac724326

See more details on using hashes here.

File details

Details for the file matyan-0.2-py2.py3-none-any.whl.

File metadata

  • Download URL: matyan-0.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 162.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.38.0 CPython/3.6.9

File hashes

Hashes for matyan-0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 19efbd3f60ef1f90469e5fd9ab2bff4770e0bd6d22bf1faeed056cef82bb8a98
MD5 1fcdb3e1ce2dea6b57b30c479e64f370
BLAKE2b-256 4d0f4c6f12f486cd55c29200312c37c6b531ee64adbcca3f54b5657622f55a41

See more details on using hashes here.

Supported by

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