-
-
Notifications
You must be signed in to change notification settings - Fork 270
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
feat(tags): adds legacy_tag_formats
and ignored_tag_formats
settings
#1297
base: master
Are you sure you want to change the base?
feat(tags): adds legacy_tag_formats
and ignored_tag_formats
settings
#1297
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #1297 +/- ##
==========================================
+ Coverage 97.33% 97.67% +0.33%
==========================================
Files 42 56 +14
Lines 2104 2625 +521
==========================================
+ Hits 2048 2564 +516
- Misses 56 61 +5
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
dc08a79
to
c1f2e4f
Compare
wow, this is a huge one. I'll be mostly out for the following month but will try to take a look after I'm back |
Yes, I know, sorry. I had this idea long ago, just not had time to cover it all until now. In the meantime, enjoy your holidays ! |
Could you add a tutorial for this case? Otherwise it feels like we are adding a lot of features and it's unclear what a user can do with them. |
I completed the monorepo tutorial and added a FAQ entry but yes, I can totally write a full tutorial on changing tag convention while keeping backward compatibility 👍🏽 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @noirbizarre , thanks for making such an awesome PR! I left a few questions. I think we might need a few rounds of change and discussions before merging. But again, this is great!
844c5e2
to
fa48ec9
Compare
I like this a lot 💪🏻 super cool work! if possible please add some tests for |
I'll add some examples. I already pushed a few changes/fixes. Anyway, I have some time today, I'll advance the documentation and rework and hope to be able to provide a new iteration |
fa48ec9
to
7f7f8bd
Compare
c9d956e
to
070bfdf
Compare
070bfdf
to
37c45cd
Compare
There it is, PR updated with:
I noticed a few possible edge-cases (not introduced in this PR) I might handle after this PR. Example: it is possible to have
One solution may be to only allow |
Description
This PR add 2 new settings to handle tag formats;
legacy_tag_formats
allowing tag format to change over time while retaining the ability to work with legacy versionignored_tag_formats
to specify expected tag that should not raiseInvalidVersion
.So projects which change tag formats and have expected but non-version tags can have these settings:
By doing so, I had to start grouping tag handling and introduce a
tags.TagRules
object which is responsible for handling all tags rules, initially spread overtag_format
,version_scheme
s andversion_provider
sChecklist
./scripts/format
and./scripts/test
locally to ensure this change passes linter check and testExpected behavior
Steps to Test This Pull Request
version_provider = "scm"
(not mandatory but allows testing the full scope)tag_format
tag_format
inlegacy_tag_format
and define a newtag_format
tag_format
then:
random-*
toignored_tag_formats
random-tag
Additional context
There might be a 2nd PR handling a
changelog_version_format
setting to customize the version rendering in the changelog so:tag_format
changes