changeloggh


Namechangeloggh JSON
Version 1.2.1 PyPI version JSON
download
home_pageNone
Summarychangeloggh is a command line tool that generates changelog files for github
upload_time2025-11-06 20:18:03
maintainerNone
docs_urlNone
authorSaúl Piña
requires_python<3.15,>=3.10
licenseMIT
keywords changelog changeloggh
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # changeloggh

<p align="center">
<a href="https://www.python.org/"><img alt="Python" src="https://img.shields.io/badge/-python-success?logo=python&logoColor=white"></a>
<a href="https://github.com/sauljabin/changeloggh"><img alt="GitHub" src="https://img.shields.io/badge/status-active-brightgreen"></a>
<a href="https://github.com/sauljabin/changeloggh/blob/main/LICENSE"><img alt="MIT License" src="https://img.shields.io/github/license/sauljabin/changeloggh"></a>
<a href="https://github.com/sauljabin/changeloggh/actions"><img alt="GitHub Actions" src="https://img.shields.io/github/actions/workflow/status/sauljabin/changeloggh/main.yml?branch=main"></a>
<a href="https://app.codecov.io/gh/sauljabin/changeloggh"><img alt="Codecov" src="https://img.shields.io/codecov/c/github/sauljabin/changeloggh"></a>
<a href="https://pypi.org/project/changeloggh"><img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/changeloggh"></a>
<a href="https://pypi.org/project/changeloggh"><img alt="Version" src="https://img.shields.io/pypi/v/changeloggh"></a>
<a href="https://libraries.io/pypi/changeloggh"><img alt="Dependencies" src="https://img.shields.io/librariesio/release/pypi/changeloggh"></a>
<a href="https://pypi.org/project/changeloggh"><img alt="Platform" src="https://img.shields.io/badge/platform-linux%20%7C%20osx-blueviolet"></a>
</p>

`changeloggh` is a command line tool
to generate and administrate changelog files for GitHub
according to https://keepachangelog.com/en/1.1.0/.

## Screenshots

<table>
  <tr>
    <td>
        <img  src="https://raw.githubusercontent.com/sauljabin/changeloggh/main/screenshots/live.png">
    </td>
    <td>
        <img src="https://raw.githubusercontent.com/sauljabin/changeloggh/main/screenshots/live-sidebar.png">
    </td>
  </tr>
</table>

## Installation

```sh
pipx install changeloggh
```

Upgrade with pip:
```sh
pipx upgrade changeloggh
```

## Usage

> Alias clgh

Help:
```sh
changeloggh --help
```

Version:
```sh
changeloggh --version
```

Init CHANGELOG:
```shell
changeloggh init <GitHub Repo>
```

Add changes:
```sh
changeloggh <added|changed|deprecated|removed|fixed|security> "entry 1" "entry 2" ...
```

Bump version:
```shell
changeloggh bump <major|minor|patch>
```

Release version:
```shell
changeloggh release <version>
```

Import MD:
```shell
changeloggh import
```

Print current version:
```shell
changeloggh latest
```

Print CHANGELOG:
```shell
changeloggh print --format <rich|json|text>
```

Live CHANGELOG version:
```shell
changeloggh live
```

## Development

Installing poetry:
```sh
pipx install poetry
```

Installing development dependencies:
```sh
poetry install
```

Installing pre-commit:
```sh
poetry run pre-commit install
```

Running unit tests:
```sh
poetry run python -m scripts.tests
```

Applying code styles:
```sh
poetry run python -m scripts.styles
```

Running code analysis:
```sh
poetry run python -m scripts.analyze
```

Running code coverage:
```sh
poetry run python -m scripts.coverage
```

Running cli using `poetry`:
```sh
poetry run changeloggh
```

## Release a new version

> Check https://python-poetry.org/docs/cli/#version

```shell
poetry run python -m scripts.bump --help
poetry run python -m scripts.bump <major|minor|patch>
```

## Why a lock file?

A lot of tools (like `yarn`, `npm`, `poetry` ,etc) use lock files to
ensures that installations remain identical and reproducible
across systems. A lock file saves important metadata, so that is why
`changeloggh` is using this approach. The `changelog.lock` file
saves and structures changelog data in json format.
It's highly recommended to commit the `changelog.lock` file into your repository.

## Limitations

- Does not support other format besides `semver` `major.minor.patch`, ex.: 1.1.1.
- It needs a `changelog.lock`.

## Alternatives

- [changelog-cli](https://github.com/mc706/changelog-cli)


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "changeloggh",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.15,>=3.10",
    "maintainer_email": null,
    "keywords": "changelog, changeloggh",
    "author": "Sa\u00fal Pi\u00f1a",
    "author_email": "sauljabin@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/cf/e5/cd3036ea57d8e77bc659236875238a05fbd3dc35941c85ae7448c64a6a6a/changeloggh-1.2.1.tar.gz",
    "platform": null,
    "description": "# changeloggh\n\n<p align=\"center\">\n<a href=\"https://www.python.org/\"><img alt=\"Python\" src=\"https://img.shields.io/badge/-python-success?logo=python&logoColor=white\"></a>\n<a href=\"https://github.com/sauljabin/changeloggh\"><img alt=\"GitHub\" src=\"https://img.shields.io/badge/status-active-brightgreen\"></a>\n<a href=\"https://github.com/sauljabin/changeloggh/blob/main/LICENSE\"><img alt=\"MIT License\" src=\"https://img.shields.io/github/license/sauljabin/changeloggh\"></a>\n<a href=\"https://github.com/sauljabin/changeloggh/actions\"><img alt=\"GitHub Actions\" src=\"https://img.shields.io/github/actions/workflow/status/sauljabin/changeloggh/main.yml?branch=main\"></a>\n<a href=\"https://app.codecov.io/gh/sauljabin/changeloggh\"><img alt=\"Codecov\" src=\"https://img.shields.io/codecov/c/github/sauljabin/changeloggh\"></a>\n<a href=\"https://pypi.org/project/changeloggh\"><img alt=\"Python Versions\" src=\"https://img.shields.io/pypi/pyversions/changeloggh\"></a>\n<a href=\"https://pypi.org/project/changeloggh\"><img alt=\"Version\" src=\"https://img.shields.io/pypi/v/changeloggh\"></a>\n<a href=\"https://libraries.io/pypi/changeloggh\"><img alt=\"Dependencies\" src=\"https://img.shields.io/librariesio/release/pypi/changeloggh\"></a>\n<a href=\"https://pypi.org/project/changeloggh\"><img alt=\"Platform\" src=\"https://img.shields.io/badge/platform-linux%20%7C%20osx-blueviolet\"></a>\n</p>\n\n`changeloggh` is a command line tool\nto generate and administrate changelog files for GitHub\naccording to https://keepachangelog.com/en/1.1.0/.\n\n## Screenshots\n\n<table>\n  <tr>\n    <td>\n        <img  src=\"https://raw.githubusercontent.com/sauljabin/changeloggh/main/screenshots/live.png\">\n    </td>\n    <td>\n        <img src=\"https://raw.githubusercontent.com/sauljabin/changeloggh/main/screenshots/live-sidebar.png\">\n    </td>\n  </tr>\n</table>\n\n## Installation\n\n```sh\npipx install changeloggh\n```\n\nUpgrade with pip:\n```sh\npipx upgrade changeloggh\n```\n\n## Usage\n\n> Alias clgh\n\nHelp:\n```sh\nchangeloggh --help\n```\n\nVersion:\n```sh\nchangeloggh --version\n```\n\nInit CHANGELOG:\n```shell\nchangeloggh init <GitHub Repo>\n```\n\nAdd changes:\n```sh\nchangeloggh <added|changed|deprecated|removed|fixed|security> \"entry 1\" \"entry 2\" ...\n```\n\nBump version:\n```shell\nchangeloggh bump <major|minor|patch>\n```\n\nRelease version:\n```shell\nchangeloggh release <version>\n```\n\nImport MD:\n```shell\nchangeloggh import\n```\n\nPrint current version:\n```shell\nchangeloggh latest\n```\n\nPrint CHANGELOG:\n```shell\nchangeloggh print --format <rich|json|text>\n```\n\nLive CHANGELOG version:\n```shell\nchangeloggh live\n```\n\n## Development\n\nInstalling poetry:\n```sh\npipx install poetry\n```\n\nInstalling development dependencies:\n```sh\npoetry install\n```\n\nInstalling pre-commit:\n```sh\npoetry run pre-commit install\n```\n\nRunning unit tests:\n```sh\npoetry run python -m scripts.tests\n```\n\nApplying code styles:\n```sh\npoetry run python -m scripts.styles\n```\n\nRunning code analysis:\n```sh\npoetry run python -m scripts.analyze\n```\n\nRunning code coverage:\n```sh\npoetry run python -m scripts.coverage\n```\n\nRunning cli using `poetry`:\n```sh\npoetry run changeloggh\n```\n\n## Release a new version\n\n> Check https://python-poetry.org/docs/cli/#version\n\n```shell\npoetry run python -m scripts.bump --help\npoetry run python -m scripts.bump <major|minor|patch>\n```\n\n## Why a lock file?\n\nA lot of tools (like `yarn`, `npm`, `poetry` ,etc) use lock files to\nensures that installations remain identical and reproducible\nacross systems. A lock file saves important metadata, so that is why\n`changeloggh` is using this approach. The `changelog.lock` file\nsaves and structures changelog data in json format.\nIt's highly recommended to commit the `changelog.lock` file into your repository.\n\n## Limitations\n\n- Does not support other format besides `semver` `major.minor.patch`, ex.: 1.1.1.\n- It needs a `changelog.lock`.\n\n## Alternatives\n\n- [changelog-cli](https://github.com/mc706/changelog-cli)\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "changeloggh is a command line tool that generates changelog files for github",
    "version": "1.2.1",
    "project_urls": {
        "Homepage": "https://github.com/sauljabin/changeloggh",
        "Repository": "https://github.com/sauljabin/changeloggh"
    },
    "split_keywords": [
        "changelog",
        " changeloggh"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "415a2089c9dfffc6b1b52cf476e7dd3c165bad26672f46af94e7a8d2845bd8ab",
                "md5": "c6a7d1a69d3bcb0de5c4797035f085f4",
                "sha256": "fbf72558ec35eb10048647dbb685a913f1254ff350b0aaf12e2460efbef27ee8"
            },
            "downloads": -1,
            "filename": "changeloggh-1.2.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c6a7d1a69d3bcb0de5c4797035f085f4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.15,>=3.10",
            "size": 9484,
            "upload_time": "2025-11-06T20:18:02",
            "upload_time_iso_8601": "2025-11-06T20:18:02.565689Z",
            "url": "https://files.pythonhosted.org/packages/41/5a/2089c9dfffc6b1b52cf476e7dd3c165bad26672f46af94e7a8d2845bd8ab/changeloggh-1.2.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cfe5cd3036ea57d8e77bc659236875238a05fbd3dc35941c85ae7448c64a6a6a",
                "md5": "ad19158dd17b122c7702ea225372e5ed",
                "sha256": "c31fecf5fe5bd5afe0e7eaf42defba6bf372684fc65101f50a6fbf028c2cb9bb"
            },
            "downloads": -1,
            "filename": "changeloggh-1.2.1.tar.gz",
            "has_sig": false,
            "md5_digest": "ad19158dd17b122c7702ea225372e5ed",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.15,>=3.10",
            "size": 7542,
            "upload_time": "2025-11-06T20:18:03",
            "upload_time_iso_8601": "2025-11-06T20:18:03.683656Z",
            "url": "https://files.pythonhosted.org/packages/cf/e5/cd3036ea57d8e77bc659236875238a05fbd3dc35941c85ae7448c64a6a6a/changeloggh-1.2.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-06 20:18:03",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "sauljabin",
    "github_project": "changeloggh",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "changeloggh"
}
        
Elapsed time: 1.51459s