feat(conventional_commits): add ability to overide settings from tool… #1570
+604
−13
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
….commitizen.customize
Description
Adds ability to override settings using [tool.commitizen.customize] in the cz_conventional_commits
Checklist
Code Changes
poetry all
locally to ensure this change passes linter check and testsDocumentation Changes
poetry doc
locally to ensure the documentation pages renders correctlyExpected Behavior
You use
conventional_commits
commitizen, and using [tool.commitizen.customize] config section you override selected settingsSteps to Test This Pull Request
Add this to pyproject.tomp in existing project using conventional_commits and update_changelog_on_bump = true:
do
cz bump --dry-run
and observe that changelog headers have gitmoji.Test that other behavior is identical to unpatched version
test that
bump_map = {"^.+!$" = "MAJOR", "^feat" = "MAJOR", "^fix" = "MINOR", "^refactor" = "MINOR", "^perf" = "MINOR"}
bumps MINOR not PATCH part on fix commit, test that other things are unchanged.Test other settings.
Additional Context
This is starting shot at #1385
To test this I copied tests for cz_customize, removed name=... from all configs there and removed the tests that don't make
sense, for example exception for missing customize section.