# 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.
## Install
```
pip install autochange
```
#### Development dependencies
```
git clone https://github.com/clxrityy/autochange.git
cd autochange
pip install -e .[dev]
```
## Usage
```
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
```
## Changelog Format
Subset of Keep a Changelog. Example:
```
# Changelog
## Unreleased - UNRELEASED
### Added
- (api) New feature
## 0.1.0 - 2025-08-13
### Fixed
- Parser bug
```
## Roadmap
- Conventional commit parser integration.
- Auto-detect bump type from unreleased changes.
- Git tag creation helper.
- Export JSON.
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/14/c3/751e28b5eaf3cd9b7d89846602d8af9bb02c42f5680540429d22c0a0bc15/autochange-0.1.0.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\n## Install\n\n```\npip install autochange\n```\n\n#### Development dependencies\n\n```\ngit clone https://github.com/clxrityy/autochange.git\ncd autochange\npip install -e .[dev]\n```\n\n## Usage\n\n```\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\n```\n\n## Changelog Format\n\nSubset of Keep a Changelog. 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- Conventional commit parser integration.\n- Auto-detect bump type from unreleased changes.\n- Git tag creation helper.\n- Export JSON.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Lightweight semantic version + changelog manager",
"version": "0.1.0",
"project_urls": {
"Changelog": "https://github.com/clxrityy/autochange/blob/main/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": "118e03220fb4b80c44d3a0af1b93b7298652621b2e962bd228b3b8aecf8efb00",
"md5": "4e70089859f0299442e22fe697626d62",
"sha256": "297801aa0c4eb86f0fc96b158a70ec4d796f69f6f1823693ffa0d448ce9a3e3a"
},
"downloads": -1,
"filename": "autochange-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4e70089859f0299442e22fe697626d62",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 7518,
"upload_time": "2025-08-14T18:31:09",
"upload_time_iso_8601": "2025-08-14T18:31:09.826934Z",
"url": "https://files.pythonhosted.org/packages/11/8e/03220fb4b80c44d3a0af1b93b7298652621b2e962bd228b3b8aecf8efb00/autochange-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "14c3751e28b5eaf3cd9b7d89846602d8af9bb02c42f5680540429d22c0a0bc15",
"md5": "a224883c7306d3fddcc8ffb1cfec1bb1",
"sha256": "a1ab9e90d6ac5e7fefcc83fffe935de05e0f89ee6dce0e69904402f1e1703b45"
},
"downloads": -1,
"filename": "autochange-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "a224883c7306d3fddcc8ffb1cfec1bb1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 7570,
"upload_time": "2025-08-14T18:31:10",
"upload_time_iso_8601": "2025-08-14T18:31:10.813118Z",
"url": "https://files.pythonhosted.org/packages/14/c3/751e28b5eaf3cd9b7d89846602d8af9bb02c42f5680540429d22c0a0bc15/autochange-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-14 18:31:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "clxrityy",
"github_project": "autochange",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "autochange"
}