Skip to main content

GitHub Pull Request changelog generator

Project description

github-changelog

This is a small utility that generates a changelog between two git tags based on GitHub pull request titles as either plaintext or markdown.

An example might look like:

  • Improve test coverage for mygreatpackage.subpackage #1234
  • Add support for Python 3 #1233

Installing

pip install github-changelog

Using

changelog [-h] [-m] OWNER REPO [PREVIOUS] [CURRENT]

The changelog command takes a GitHub repository owner (user or organization), repository name and zero, one, or two tags to limit the set of changes to consider. If no tags are provided, the changelog will be computed between the latest tag and HEAD. One tag may be provided to set the base tag to compare against HEAD. Two tags may be provided to specify both base tag and ending tag. The generated changelog will list all GitHub pull requests that have been merged between the specified or inferred tags. If -m is specified the output will be formatted in markdown and include links to the pull requests.

Pull request merges are identified by their commit message, usually taking the form of Merge pull request #123…. Squash-and-merged pull requests are identified by having the PR number in parentheses at the end of first line of the commit message.

Examples

changelog cfpb github-changelog

Will generate a text changelog between the latest tag and HEAD.

changelog cfpb github-changelog 1.0.0

Will generate a text changelog between 1.0.0 and HEAD.

changelog -m cfpb github-changelog 1.0.0 1.0.1

Will generate a markdown changelog between 1.0.0 and 1.0.1.

Overriding the Default Branch

The default branch is set to main. To override this, use the optional --branch argument to specify a different branch. For example:

changelog owner some-repo \
--branch "production"

GitHub Enterprise Support

Use the optional --github-base-url, --github-api-url, and --github-token arguments to connect to a GitHub Enterprise instance. For example:

changelog owner some-repo \
--github-base-url "https://github.company.com" \
--github-api-url "https://github.company.com/api/v3" \
--github-token secret-value

Getting help

Please add issues to the issue tracker.

Getting involved

General instructions on how to contribute can be found in CONTRIBUTING.

Open source licensing info

  1. TERMS
  2. LICENSE
  3. CFPB Source Code Policy

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

github-changelog-1.5.0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

github_changelog-1.5.0-py2.py3-none-any.whl (10.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file github-changelog-1.5.0.tar.gz.

File metadata

  • Download URL: github-changelog-1.5.0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.8.13

File hashes

Hashes for github-changelog-1.5.0.tar.gz
Algorithm Hash digest
SHA256 c099c73c7e5eb60569ff236873bb2ea8669cef9aaff5b8cddcebba328188550c
MD5 1fb435f0a17fd608d7f0ea91bee270d6
BLAKE2b-256 85f54e1e08c7fbb1f001b0f13c4cd71250b88bdbe94140cb58b17e5b826048aa

See more details on using hashes here.

File details

Details for the file github_changelog-1.5.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for github_changelog-1.5.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 85b7c873dd23c216dc6431f0848fe5e4357932a15ea39d5d06038441cc0fb40f
MD5 d7e47f06957f0237efdb7a061fedccb9
BLAKE2b-256 922859b57f4980edfbee95264e94239f2c7949451e24ef14b8c76faca1ad4642

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