Skip to content

fix(bump): Support regexes containing colons #567

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Aug 22, 2022

Conversation

Kurt-von-Laven
Copy link
Contributor

@Kurt-von-Laven Kurt-von-Laven commented Aug 22, 2022

Description

Fixes #499.

The version_files feature uses a colon to delimit filenames from a regex to use to find the version. Make version_files slightly more robust by splitting on the first colon rather than all colons, thereby permitting the regex to contain a colon. Maintain the pre-existing assumption that the filename doesn't contain a colon, as this is rare and would likely cause many other problems.

Include colon in version_files regex. Commitizen runs bump on itself to, among other things, manage the version it uses of its own pre-commit hooks. When searching .pre-commit-config.yaml for the version number of Commitizen, look for "rev:" rather than "rev" to reduce the likelihood of a false positive now that colons are permitted in version_files regexes.

Checklist

  • Add test cases to all the changes you introduce
  • Run ./scripts/format and ./scripts/test locally to ensure this change passes linter check and test
  • Test the changes on the local machine manually
  • Update the documentation for the changes

Expected behavior

The version of the Commitizen pre-commit hooks is incremented along with all other references to the Commitizen version number.

Steps to Test This Pull Request

  1. Run cz bump.

Additional context

As mentioned in #565, I am encountering some difficulties testing Commitizen locally.

The version_files feature uses a colon to delimit filenames from a regex
to use to find the version. Make version_files slightly more robust by
splitting on the first colon rather than all colons, thereby permitting
the regex to contain a colon. Maintain the pre-existing assumption that
the filename doesn't contain a colon, as this is rare and would likely
cause many other problems.
Commitizen runs bump on itself to, among other things, manage the
version it uses of its own pre-commit hooks. When searching
.pre-commit-config.yaml for the version number of Commitizen, look for
"rev:" rather than "rev" to reduce the likelihood of a false positive
now that colons are permitted in version_files regexes.
@codecov
Copy link

codecov bot commented Aug 22, 2022

Codecov Report

Base: 98.37% // Head: 98.43% // Increases project coverage by +0.06% 🎉

Coverage data is based on head (f093717) compared to base (42e3dca).
Patch coverage: 100.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #567      +/-   ##
==========================================
+ Coverage   98.37%   98.43%   +0.06%     
==========================================
  Files          39       39              
  Lines        1603     1602       -1     
==========================================
  Hits         1577     1577              
+ Misses         26       25       -1     
Flag Coverage Δ
unittests 98.43% <100.00%> (+0.06%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
commitizen/bump.py 100.00% <100.00%> (ø)
commitizen/changelog.py 100.00% <0.00%> (+0.56%) ⬆️

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@woile
Copy link
Member

woile commented Aug 22, 2022

Wow! Thanks for the fix 🚀

@woile woile merged commit cd7e3dd into commitizen-tools:master Aug 22, 2022
@Kurt-von-Laven Kurt-von-Laven deleted the version-files branch August 22, 2022 07:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support Regexes Containing Colons
2 participants