ezchlog


Nameezchlog JSON
Version 1.0.0 PyPI version JSON
download
home_pageNone
SummaryEasy git branch friendly changelogs
upload_time2025-01-08 07:05:03
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT License
keywords changelog easy git no-conflict release-notes
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Easy Changelog
==============

Python version
--------------

Install this repository from Pypi:
```sh
pip install ezchlog
```
Or any other means (`pipx` or a package manager).  
Python 3.9+ required.

Rust version
------------

Download a pre-compiled version from [releases](https://gitlab.com/jrdasm/ezchlog/-/releases).

Don’t forget to download the checksum file and check for corruption.  
You should rename the binary to `ezchlog` and place it on your PATH.

You can algo compile the `ezchlog` rust binary from source (you should have `rustc`, `cargo` and `upx` available):
```sh
make release
```

After installation
------------------

Then you’ll have a command to handle your logs:
```sh
ezchlog --help
```

Add a changelog
---------------

```sh
$ ezchlog add "New url for example API"
Changed            new_url_for_example_api
$ ezchlog add -p "Fix example API" Fixed 142
_CHANGELOGS/Fixed/142_fix_example_api.md
```

The file is automatically added to git index unless `--no-git` is used.

List changelogs
---------------

```sh
$ ezchlog list
Fixed              142_fix_example_api
Changed            new_url_for_example_api
```

```sh
$ ezchlog list -p
_CHANGELOGS/Fixed/142_fix_example_api.md
_CHANGELOGS/Changed/new_url_for_example_api.md
```

Commit with git
---------------

If you use `git`, you can automatically create a git commit with its message using part log files.

By default it will use the only part log file in the **git index** as base for the git commit summary message.

If you have **multiple files** in the index, specify which one is the **main one**, i.e. which one will be use as the summary message.

All part log files in the index will be used in the full git message.

```sh
$ ezchlog commit
[master (root-commit) c0cc282] 142: Fix example API
 2 files changed, 3 insertions(+)
 create mode 100644 _CHANGELOGS/Fixed/142_fix_example_api.md
 create mode 100644 example/api_doc.md
```

The summary message format is `{Ref}: {Title}` if there is a reference, or simply `{Title}`.

- `Title` is the part log first line, without the reference and without any markdown list prefix.
- `Ref` is what is between brackets on the part log first line, with `Ref ` added upfront if the reference start with a sharp `#` (because it’s a comment for git)

Merge changelogs
----------------

```sh
$ ezchlog merge 1.2.3
$ cat CHANGELOG.md
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.1.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## 1.2.3
### Fixed
- Fix example API (142)
### Changed
- New url for example API
```

Files are automatically updated in the git index unless `--no-git` is used.

Configuration
-------------

The following configuration parameters could be specified as environment variables or in a `.ezchlog.toml` file (or `pyproject.toml` file for the python version).

- `EZCHLOG_EDITOR` default to `EDITOR` or `vim`
- `EZCHLOG_LOG_DIR` default to `_CHANGELOGS`
- `EZCHLOG_LOG_FILE` default to `CHANGELOG.md`
- `EZCHLOG_CATEGORY_LIST` default to `Security,Fixed,Changed,Added,Remove,Deprecated`
- `EZCHLOG_CATEGORY_DEFAULT` default to `Changed`
- `EZCHLOG_DEFAULT_CHANGELOG` default to  
```
# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.1.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
```
- `EZCHLOG_NO_GIT` default to `False`

For `.ezchlog.toml` or `pyproject.toml` config key, use the environment variable name in lowercase without the `EZCHLOG` prefix, for instance `log_dir` or `category_list` keys.

For `pyproject.toml`, the config resides in the `tool.ezchlog` table.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "ezchlog",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "changelog, easy, git, no-conflict, release-notes",
    "author": null,
    "author_email": "Cyrille Pontvieux <cyrille@enialis.net>",
    "download_url": "https://files.pythonhosted.org/packages/30/38/541f637677b737a8702f1ededcc4a65caffa685cba7cf3f1f2ee3ac0dc10/ezchlog-1.0.0.tar.gz",
    "platform": null,
    "description": "Easy Changelog\n==============\n\nPython version\n--------------\n\nInstall this repository from Pypi:\n```sh\npip install ezchlog\n```\nOr any other means (`pipx` or a package manager).  \nPython 3.9+ required.\n\nRust version\n------------\n\nDownload a pre-compiled version from [releases](https://gitlab.com/jrdasm/ezchlog/-/releases).\n\nDon\u2019t forget to download the checksum file and check for corruption.  \nYou should rename the binary to `ezchlog` and place it on your PATH.\n\nYou can algo compile the `ezchlog` rust binary from source (you should have `rustc`, `cargo` and `upx` available):\n```sh\nmake release\n```\n\nAfter installation\n------------------\n\nThen you\u2019ll have a command to handle your logs:\n```sh\nezchlog --help\n```\n\nAdd a changelog\n---------------\n\n```sh\n$ ezchlog add \"New url for example API\"\nChanged            new_url_for_example_api\n$ ezchlog add -p \"Fix example API\" Fixed 142\n_CHANGELOGS/Fixed/142_fix_example_api.md\n```\n\nThe file is automatically added to git index unless `--no-git` is used.\n\nList changelogs\n---------------\n\n```sh\n$ ezchlog list\nFixed              142_fix_example_api\nChanged            new_url_for_example_api\n```\n\n```sh\n$ ezchlog list -p\n_CHANGELOGS/Fixed/142_fix_example_api.md\n_CHANGELOGS/Changed/new_url_for_example_api.md\n```\n\nCommit with git\n---------------\n\nIf you use `git`, you can automatically create a git commit with its message using part log files.\n\nBy default it will use the only part log file in the **git index** as base for the git commit summary message.\n\nIf you have **multiple files** in the index, specify which one is the **main one**, i.e. which one will be use as the summary message.\n\nAll part log files in the index will be used in the full git message.\n\n```sh\n$ ezchlog commit\n[master (root-commit) c0cc282] 142: Fix example API\n 2 files changed, 3 insertions(+)\n create mode 100644 _CHANGELOGS/Fixed/142_fix_example_api.md\n create mode 100644 example/api_doc.md\n```\n\nThe summary message format is `{Ref}: {Title}` if there is a reference, or simply `{Title}`.\n\n- `Title` is the part log first line, without the reference and without any markdown list prefix.\n- `Ref` is what is between brackets on the part log first line, with `Ref ` added upfront if the reference start with a sharp `#` (because it\u2019s a comment for git)\n\nMerge changelogs\n----------------\n\n```sh\n$ ezchlog merge 1.2.3\n$ cat CHANGELOG.md\n# Changelog\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/en/1.1.0/)\nand this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).\n\n## 1.2.3\n### Fixed\n- Fix example API (142)\n### Changed\n- New url for example API\n```\n\nFiles are automatically updated in the git index unless `--no-git` is used.\n\nConfiguration\n-------------\n\nThe following configuration parameters could be specified as environment variables or in a `.ezchlog.toml` file (or `pyproject.toml` file for the python version).\n\n- `EZCHLOG_EDITOR` default to `EDITOR` or `vim`\n- `EZCHLOG_LOG_DIR` default to `_CHANGELOGS`\n- `EZCHLOG_LOG_FILE` default to `CHANGELOG.md`\n- `EZCHLOG_CATEGORY_LIST` default to `Security,Fixed,Changed,Added,Remove,Deprecated`\n- `EZCHLOG_CATEGORY_DEFAULT` default to `Changed`\n- `EZCHLOG_DEFAULT_CHANGELOG` default to  \n```\n# Changelog\nAll notable changes to this project will be documented in this file.\n\nThe format is based on [Keep a Changelog](http://keepachangelog.com/en/1.1.0/)\nand this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).\n```\n- `EZCHLOG_NO_GIT` default to `False`\n\nFor `.ezchlog.toml` or `pyproject.toml` config key, use the environment variable name in lowercase without the `EZCHLOG` prefix, for instance `log_dir` or `category_list` keys.\n\nFor `pyproject.toml`, the config resides in the `tool.ezchlog` table.\n",
    "bugtrack_url": null,
    "license": "MIT License",
    "summary": "Easy git branch friendly changelogs",
    "version": "1.0.0",
    "project_urls": {
        "Bug Tracker": "https://gitlab.com/jrdasm/ezchlog/-/issues",
        "Changelog": "https://gitlab.com/jrdasm/ezchlog/-/blob/master/CHANGELOG.md",
        "Contributing": "https://gitlab.com/jrdasm/ezchlog/-/blob/master/CONTRIBUTING.md",
        "Documentation": "https://gitlab.com/jrdasm/ezchlog/-/blob/master/README.md",
        "Merge Requests": "https://gitlab.com/jrdasm/ezchlog/-/merge_requests",
        "Repository": "https://gitlab.com/jrdasm/ezchlog"
    },
    "split_keywords": [
        "changelog",
        " easy",
        " git",
        " no-conflict",
        " release-notes"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bf0eeffba30473e30e0972bbbd0788c561d7206d85a4b7570d2118a61babc1d9",
                "md5": "ba9f9314ff46484f2ad1085a734ccee4",
                "sha256": "ea458e54eac606835d1166eaf1020f2ce76fea0e7c9eba1f657f57ac048e772e"
            },
            "downloads": -1,
            "filename": "ezchlog-1.0.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "ba9f9314ff46484f2ad1085a734ccee4",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 13648,
            "upload_time": "2025-01-08T07:05:02",
            "upload_time_iso_8601": "2025-01-08T07:05:02.531276Z",
            "url": "https://files.pythonhosted.org/packages/bf/0e/effba30473e30e0972bbbd0788c561d7206d85a4b7570d2118a61babc1d9/ezchlog-1.0.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3038541f637677b737a8702f1ededcc4a65caffa685cba7cf3f1f2ee3ac0dc10",
                "md5": "fd015badfee798cd8028cd3a8787886a",
                "sha256": "a8c1d238efc9206605fc62a4c5a9ed57a20e1ea8a13b9639acb0817613d21544"
            },
            "downloads": -1,
            "filename": "ezchlog-1.0.0.tar.gz",
            "has_sig": false,
            "md5_digest": "fd015badfee798cd8028cd3a8787886a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 47745,
            "upload_time": "2025-01-08T07:05:03",
            "upload_time_iso_8601": "2025-01-08T07:05:03.568911Z",
            "url": "https://files.pythonhosted.org/packages/30/38/541f637677b737a8702f1ededcc4a65caffa685cba7cf3f1f2ee3ac0dc10/ezchlog-1.0.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-01-08 07:05:03",
    "github": false,
    "gitlab": true,
    "bitbucket": false,
    "codeberg": false,
    "gitlab_user": "jrdasm",
    "gitlab_project": "ezchlog",
    "lcname": "ezchlog"
}
        
Elapsed time: 0.60114s