fundus icon indicating copy to clipboard operation
fundus copied to clipboard

[Question]: Should we use `commitizen` to enforce conventional commits and automate versioning?

Open MaxDall opened this issue 1 year ago • 0 comments

Question

While searching for a tool to automate versioning., I stumbled over commitizen.

Commitizen itself does not automate versioning but, when used in combination with pre-commit, enforces commitment conventions and provides functionality to bump up the version according to pep440 or semver using cz bump.

cz bump would also keep track of changes in a changelog.md

This may be two questions in one:

  1. Do we want to enforce commitment conventions?
  2. Do we want to use commitizen?
  3. (Do we want to use version generation?)

Update: We could also omit the version bump of cz bump and only enforce commit conventions 1.0.0 and use release-please for automated release and version bump. Together with #358 the workflow would be.

  1. Work on the current master branch
  2. release-please opens a release PR which is automatically updated alongside the current master branch (keeps track of changes, bumps version according to semver, pushes into changelog.md)
  3. If the release is ready, merge the release PR
  4. release-please automatically creates a release with a description based on the release PR
  5. #358 automatically publishes on testpypi -> test distribution -> publish to PyPi but awaits confirmation.

MaxDall avatar Feb 16 '24 14:02 MaxDall