convbump is a simple tool to work with conventional commits.
Use the version command to find the next version in your repository
based on the conventional commits.
Use the changelog command to generate a nicely formatted changelog
(Github markdown compatible).
Use convbump --verbose version to see more information.
convbump does not have any external dependencies.
convbump uses a pure Python library to access the Git repository and so does not
require a git executable.
The application is written in Python and uses Poetry to configure the package and manage its dependencies.
Make sure you have Poetry CLI installed. Then you can run
$ poetry install
which will install the project dependencies (including dev dependencies) into a
Python virtual environment managed by Poetry (alternatively, you can activate
your own virtual environment beforehand and Poetry will use that).
$ poetry run pytest
or
$ poetry shell
$ pytest
pytest will take configuration from pytest.ini file first (if present), then
from pyproject.toml. Add any local configuration to pytest.ini.
Configuration in pyproject.toml will be used in CI. You can run your
tests the same way as CI to catch any errors
$ pytest -c pyproject.toml
The application is formatted using black and isort.
You can either run black and isort manually or use prepared Poe task to format the whole project.
$ poetry run poe format-code
or
$ poetry shell
$ poe format-code