Skip to main content

Extends Conventional Commits Change Types with User-Defined Legacy Types for Commitizen

Project description

cz_legacy

[!NOTE] After using commitizen for a few years, the utility of cz_legacy for changelogs from years ago has become less valuable. Based on public code, this package doesn't appear to have use outside of my projects and therefore will be archived. If you have a use case for this project or questions, please feel free to submit an issue and tag me (@kyleking) here: https://github.com/KyleKing/calcipy

Custom Commitizen parser for user-specified legacy change types. The parser utilizes the cz_conventional_commits pattern and extends with the tag mapping specified in the configuration file.

While old change types will appear in the "Changelog", the user will be prevented from using them in new commits. This is the reverse of the revert/chore logic from commitizen that allows use of those commit types, but won't display them in the changelog.

Alternatives

This customization only works when old commits use the <change_type>: <message> format that can be parsed by commitizen. If that doesn't fit your use case, you may want to try out incremental which (I think) prepends to an existing CHANGELOG

Usage

Pre-Commit

To use in pre-commit, add this to your pre-commit-config.yml. Run pre-commit autoupdate to get the latest version

repos:
  - repo: https://github.com/commitizen-tools/commitizen
    rev: main
    hooks:
      - id: commitizen
        additional_dependencies: [cz_legacy]
        stages: [commit-msg]

Configuration

At minimum, you must have the name = "cz_legacy" and [tool.commitizen.cz_legacy_map] in your configuration file. The below example is for TOML, you can also utilize a YAML or JSON file.

Below is an example of the three change legacy types Chg, Fix, and New, but the user can choose any tag names and associated mapping for the Changelog

[tool.commitizen]
name = "cz_legacy"
# Other tool.commitizen configuration options

[tool.commitizen.cz_legacy_map]
Chg = "Change (old)"
Fix = "Fix (old)"
New = "New (old)"

Issues

If you have any feature requests, run into any bugs, or have questions, feel free to start a discussion or open an issue on Github at https://github.com/kyleking/cz_legacy.

Project Status

See the Open Issues and/or the CODE_TAG_SUMMARY. For release history, see the CHANGELOG.

Contributing

We welcome pull requests! For your pull request to be accepted smoothly, we suggest that you first open a GitHub issue to discuss your idea. For resources on getting started with the code base, see the below documentation:

Code of Conduct

We follow the Contributor Covenant Code of Conduct.

Open Source Status

We try to reasonably meet most aspects of the "OpenSSF scorecard" from Open Source Insights

Responsible Disclosure

If you have any security issue to report, please contact the project maintainers privately. You can reach us at dev.act.kyle@gmail.com.

License

LICENSE

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

cz_legacy-2.0.2.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

cz_legacy-2.0.2-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file cz_legacy-2.0.2.tar.gz.

File metadata

  • Download URL: cz_legacy-2.0.2.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for cz_legacy-2.0.2.tar.gz
Algorithm Hash digest
SHA256 a6a1e175e73329a5333a3feac34680a764759fac06e405598e33b06d67002362
MD5 071629ee023f20ee04c5679744068243
BLAKE2b-256 a5a59e4868e5614872e64ecdac44615b11b7fab073762954c9fc4deccf76b424

See more details on using hashes here.

File details

Details for the file cz_legacy-2.0.2-py3-none-any.whl.

File metadata

  • Download URL: cz_legacy-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 7.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.4 Darwin/23.5.0

File hashes

Hashes for cz_legacy-2.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 53fee8c4237e94a8135a7faf1f63a64fd9068a6421cf39dec00c280d3f2abe7f
MD5 a103d226f5246230087bc3c1882e9a76
BLAKE2b-256 b0bb3958312f85d2ded41c1ffcbfd2527c3a43c09bc19280e30439dcfc383194

See more details on using hashes here.

Supported by

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