autochange


Nameautochange JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryLightweight semantic version + changelog manager
upload_time2025-08-19 17:30:30
maintainerNone
docs_urlNone
authorMJ Anglin
requires_python>=3.8
licenseNone
keywords changelog semantic versioning release automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # autochange

Lightweight semantic version + changelog manager.

## Features

- Maintain a markdown `CHANGELOG.md` with sections: Added, Changed, Deprecated, Removed, Fixed, Security.
- Add unreleased changes quickly.
- Release and automatically stamp date + version.
- Compute next semantic version via bump parts (major/minor/patch) or explicit version.
- Import Conventional Commits directly into the unreleased section.

## Install

```zsh
pip install autochange
```

#### Development dependencies

```zsh
pip install -e .[dev]
```

## Usage

```zsh
autochange init               # create CHANGELOG.md
autochange add -t added "New feature" --scope api
autochange add -t fixed "Bug in parser"
autochange release minor      # bumps minor based on last release
autochange release auto --tag --commit --push  # infer bump from changes, commit, tag and push
autochange import-commits --since v0.1.0  # parse commits after tag v0.1.0
autochange tag                # create git tag for latest released version
autochange tag 1.2.3 --push   # create & push tag v1.2.3
```

## Changelog Format

Subset of [Keep a Changelog](https://keepachangelog.com). Example:

```
# Changelog

## Unreleased - UNRELEASED
### Added
- (api) New feature

## 0.1.0 - 2025-08-13
### Fixed
- Parser bug
```

## Roadmap

- [x] Conventional commit parser integration.
- [x] Auto-detect bump type from unreleased changes.
- [x] Git tag creation helper.
- [ ] Export JSON.
- [ ] Supporting different environments (e.g. package.json, Cargo.toml).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "autochange",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": "changelog, semantic versioning, release, automation",
    "author": "MJ Anglin",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/7c/83/5d52c1f940b705610bb09767b5eb3c1152302e2f92f6db7986eb3f36f8be/autochange-0.1.1.tar.gz",
    "platform": null,
    "description": "# autochange\n\nLightweight semantic version + changelog manager.\n\n## Features\n\n- Maintain a markdown `CHANGELOG.md` with sections: Added, Changed, Deprecated, Removed, Fixed, Security.\n- Add unreleased changes quickly.\n- Release and automatically stamp date + version.\n- Compute next semantic version via bump parts (major/minor/patch) or explicit version.\n- Import Conventional Commits directly into the unreleased section.\n\n## Install\n\n```zsh\npip install autochange\n```\n\n#### Development dependencies\n\n```zsh\npip install -e .[dev]\n```\n\n## Usage\n\n```zsh\nautochange init               # create CHANGELOG.md\nautochange add -t added \"New feature\" --scope api\nautochange add -t fixed \"Bug in parser\"\nautochange release minor      # bumps minor based on last release\nautochange release auto --tag --commit --push  # infer bump from changes, commit, tag and push\nautochange import-commits --since v0.1.0  # parse commits after tag v0.1.0\nautochange tag                # create git tag for latest released version\nautochange tag 1.2.3 --push   # create & push tag v1.2.3\n```\n\n## Changelog Format\n\nSubset of [Keep a Changelog](https://keepachangelog.com). Example:\n\n```\n# Changelog\n\n## Unreleased - UNRELEASED\n### Added\n- (api) New feature\n\n## 0.1.0 - 2025-08-13\n### Fixed\n- Parser bug\n```\n\n## Roadmap\n\n- [x] Conventional commit parser integration.\n- [x] Auto-detect bump type from unreleased changes.\n- [x] Git tag creation helper.\n- [ ] Export JSON.\n- [ ] Supporting different environments (e.g. package.json, Cargo.toml).\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Lightweight semantic version + changelog manager",
    "version": "0.1.1",
    "project_urls": {
        "Changelog": "https://github.com/clxrityy/autochange/blob/master/CHANGELOG.md",
        "Homepage": "https://github.com/clxrityy/autochange",
        "Issues": "https://github.com/clxrityy/autochange/issues",
        "Repository": "https://github.com/clxrityy/autochange.git"
    },
    "split_keywords": [
        "changelog",
        " semantic versioning",
        " release",
        " automation"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "98ab0baf1b9eddf81807eea5f144ec89a3339adbd64c927acdb7cf25ccfc65c1",
                "md5": "104ae6ad081ce062b09f1bee7d4b155d",
                "sha256": "7922536ee4c29bd58cbcd6a144aa956f32f7783273512abc0880276633342935"
            },
            "downloads": -1,
            "filename": "autochange-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "104ae6ad081ce062b09f1bee7d4b155d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 12583,
            "upload_time": "2025-08-19T17:30:29",
            "upload_time_iso_8601": "2025-08-19T17:30:29.325345Z",
            "url": "https://files.pythonhosted.org/packages/98/ab/0baf1b9eddf81807eea5f144ec89a3339adbd64c927acdb7cf25ccfc65c1/autochange-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7c835d52c1f940b705610bb09767b5eb3c1152302e2f92f6db7986eb3f36f8be",
                "md5": "9579b0148c7e5f32ea725fe843348061",
                "sha256": "9ea133e1141bade1aac1063e65ca81752df605f0311dcef244032442dbd960e8"
            },
            "downloads": -1,
            "filename": "autochange-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "9579b0148c7e5f32ea725fe843348061",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 14965,
            "upload_time": "2025-08-19T17:30:30",
            "upload_time_iso_8601": "2025-08-19T17:30:30.370710Z",
            "url": "https://files.pythonhosted.org/packages/7c/83/5d52c1f940b705610bb09767b5eb3c1152302e2f92f6db7986eb3f36f8be/autochange-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-19 17:30:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "clxrityy",
    "github_project": "autochange",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "autochange"
}
        
Elapsed time: 3.23835s