Skip to main content

A changelog finder and parser.

Project description

https://img.shields.io/pypi/v/changelogs.svg https://img.shields.io/travis/pyupio/changelogs.svg Documentation Status Updates

A changelog finder and parser with command line interface for packages available on pypi, npm and rubygems. Originally developed for pyup.io.

Installation

To install changelogs, run this command in your terminal:

$ pip install changelogs

Usage

To use changelogs in a Python project:

import changelogs

logs = changelogs.get("flask")
logs = changelogs.get("babel", vendor="npm")
logs = changelogs.get("bundler", vendor="npm")

Or, from the command line:

changelogs flask
changelogs babel npm
changelogs bundler gem

If you are on macOS, you can chain the open command:

changelogs babel npm >> babel.log && open babel.log

About

When trying to get a changelog for a given package, there are a bunch of problems:

  • There is no central place to store a changelog. If a project has a changelog, it’s most likely somewhere in the git repo at all kinds of different places. This makes it hard to find.

  • The package index meta data often has no direct link to the git repo. This makes the repo hard to find.

  • There is no changelog standard. Everyone uses a different approach. This makes it hard to parse.

This project is trying to solve this by:

  • first querying the package vendor for package meta data like the homapage or docs URL.

  • if the meta data doesn’t contain a valid URL to a repo, visit all available URLs and scrape them to find one.

  • if there is a valid repo URL, visit the repo and look for possible changelogs like Changes.txt, NEWS.md or history.rst.

  • fetch the content and somewhat try to parse it.

History

0.4.0 (2016-01-23)

  • add better support for NPM packages

0.3.3 (2016-01-05)

  • fix packagin error (hopefully)

0.3.2 (2016-01-05)

  • use modules for custom imports, for packaging

0.3.1 (2016-01-03)

  • the find_changelogs and get_urls functions now also return the repo URLs

0.3.0 (2016-01-03)

  • allow to swap in the find_changelogs function

0.2.0 (2016-12-27)

  • added support for rubygems

  • added support for npm

0.1.0 (2016-12-19)

  • First release on PyPI.

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

changelogs-0.5.0.tar.gz (39.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

changelogs-0.5.0-py2.py3-none-any.whl (15.1 kB view details)

Uploaded Python 2Python 3

File details

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

File metadata

  • Download URL: changelogs-0.5.0.tar.gz
  • Upload date:
  • Size: 39.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for changelogs-0.5.0.tar.gz
Algorithm Hash digest
SHA256 9b682caa559ca8701be0737cc50eda19451061058af8faab9f0bb7ba19a67915
MD5 30bbba9c962d60bf4a2e9b3c7428c6d9
BLAKE2b-256 ae7f21f18675a2da60fbe7be6c9842879a2da32d1c8efaca43c2400d82365ebe

See more details on using hashes here.

File details

Details for the file changelogs-0.5.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for changelogs-0.5.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3b940111556bf0c25550e503f99a2db12c11e21ffc854e7b18979fc203badfd1
MD5 4a01dd6643690549cd57a9d7c6314ae5
BLAKE2b-256 4f9fbb60a85ace86c7301e487a46e1dd0244b031282ca0d3b0916587fd33ae2f

See more details on using hashes here.

Supported by

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