Skip to content

chore(renovate): update semantic commit types in configuration#37658

Open
bircni wants to merge 2 commits into
go-gitea:mainfrom
bircni:fix/renovate-conventional-commit
Open

chore(renovate): update semantic commit types in configuration#37658
bircni wants to merge 2 commits into
go-gitea:mainfrom
bircni:fix/renovate-conventional-commit

Conversation

@bircni
Copy link
Copy Markdown
Member

@bircni bircni commented May 11, 2026

For vulnerability alerts it makes sense to keep fix since those are actual security fixes but for others a dependency update is a chore

@bircni bircni requested a review from silverwind May 11, 2026 16:26
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label May 11, 2026
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels May 11, 2026
@bircni
Copy link
Copy Markdown
Member Author

bircni commented May 11, 2026

depending on #37659 otherwise ci will still fail

@wxiaoguang
Copy link
Copy Markdown
Contributor

This problem is still not resolved: how to handle the "enhancement" label for PRs?

Comment thread renovate.json5
"schedule": ["* * * * 1"], // dependency update PRs weekly, vulnerabilityAlerts bypasses this
"minimumReleaseAge": "5 days",
"semanticCommits": "enabled",
"semanticCommitType": "chore",
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is already the default, but I guess it's ok to spell it out again explicitely.

@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels May 11, 2026
@silverwind
Copy link
Copy Markdown
Member

This problem is still not resolved: how to handle the "enhancement" label for PRs?

I'd keep them at feat until a new changelog generator is added that supports enhancement. Will need a new generator in any case before 1.27 release.

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented May 11, 2026

This problem is still not resolved: how to handle the "enhancement" label for PRs?

I'd keep them at feat until a new changelog generator is added that supports enhancement. Will need a new generator in any case before 1.27 release.

Sorry it's unclear to me.

  1. Should the "enhancement" label be used?
    • If yes: when to use it?
    • If no, should it be removed?
      • If yes: when & how to remove?
      • If no: why keep it? how to tell people "don't use it"?

@silverwind
Copy link
Copy Markdown
Member

Just remove it in a future label cleanup. It comes from the default GitHub labels which don't fit in a semantic commit scheme. Same goes for type/bug etc, basically all label that previously categorized PRs.

@lunny
Copy link
Copy Markdown
Member

lunny commented May 12, 2026

This problem is still not resolved: how to handle the "enhancement" label for PRs?

I'd keep them at feat until a new changelog generator is added that supports enhancement. Will need a new generator in any case before 1.27 release.

What did you mean for that? https://github.com/go-gitea/gitea/blob/main/.changelog.yml#L26

@silverwind
Copy link
Copy Markdown
Member

We've been merging semantic commits since a while now, most PRs are unlabeled because of that. v1.27 release will require a bit of manual categorizing, v1.28 release can be created full off the commit titles alone.

@wxiaoguang
Copy link
Copy Markdown
Contributor

We've been merging semantic commits since a while now, most PRs are unlabeled because of that. v1.27 release will require a bit of manual categorizing, v1.28 release can be created full off the commit titles alone.

I am not in the "we"

Actually I have objection of "removing enhancement label"

The design should be like this in my mind:

  • Big improvements to end users: feature
  • Trivial: enhancement (for example: text change, color change, padding change, etc)

But I won't block your decision if most people prefer yours.

@silverwind
Copy link
Copy Markdown
Member

silverwind commented May 12, 2026

In essense this change is almost a noop:

  • semanticCommitType is redundant, it is the default and individual updates can still trigger other types like fix
  • vulnerabilityAlerts.semanticCommitType forces the fix type even for non-fixes. Theoretically it is possible that renovate raises a security update as chore, practically they are almost always fix, but I could see low-score vulns be flagged as chore.

So I think it's actually a slight degradation in functionality and it's better to keep the defaults as-is.

@silverwind silverwind self-requested a review May 12, 2026 08:18
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. labels May 12, 2026
@wxiaoguang
Copy link
Copy Markdown
Contributor

@bircni
Copy link
Copy Markdown
Member Author

bircni commented May 12, 2026

@bircni

What's your decision to these?

And what's the decision of TOC?

I suggest the following:

  • build: Changes that affect the build system or external dependencies (dependency updates)
  • ci: Changes to CI configuration files and scripts
  • chore: Changes which doesn't change source code or shall NOT be included in the Changelog
  • docs: Documentation only changes
  • feat: A new feature
  • fix: A bug fix or a dependency bump which fixes security
  • refactor: A code change that neither fixes a bug nor adds a feature
  • revert: Revert something
  • style: Changes that do not affect the meaning of the code (lint)
  • test: Adding missing tests or correcting existing tests
  • A feat! indicates a breaking change

2 nice useful things pop out here:

  1. we can label according to the Pr message to make it easier to filter
  2. we can generate changelog from it in an easy way, maybe using git-cliff

Comments:

  • refactor: A code change that neither fixes a bug nor adds a feature

--> Here I would put an enhancement in or other option is to use enh which is not that good I think

@wxiaoguang
Copy link
Copy Markdown
Contributor

2 nice useful things pop out here:
1. we can label according to the Pr message to make it easier to filter
2. we can generate changelog from it in an easy way, maybe using git-cliff

Then I guess you mean "remove the enhancement label" is the answer to #37658 (comment) , right? If so, what are the plan & steps for the removal?

@bircni
Copy link
Copy Markdown
Member Author

bircni commented May 12, 2026

2 nice useful things pop out here:

  1. we can label according to the Pr message to make it easier to filter
  2. we can generate changelog from it in an easy way, maybe using git-cliff

Then I guess you mean "remove the enhancement label" is the answer to #37658 (comment) , right? If so, what are the plan & steps for the removal?

I'd suggest I open a new branch with the changes then TOC and whoever approves or discusses there
--> this here can be closed

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented May 12, 2026

And some real examples, what kinds of these PRs should be?

I think they fit "#37658 (comment)"

Trivial: enhancement (for example: text change, color change, padding change, etc)


I'd suggest I open a new branch with the changes then TOC and whoever approves or discusses there
--> this here can be closed

Agree

@bircni
Copy link
Copy Markdown
Member Author

bircni commented May 12, 2026

And some real examples, what kinds of these PRs should be?

User-facing behavior improvement. --> fix

UX/text consistency correction. --> fix

Adds externally consumable functionality/API capability. --> feat

Adjusts broken/undesired editor behavior. --> fix

--> purely a UX enhancement --> feat


but yes overall an "enhancement" is better - let me try

@wxiaoguang
Copy link
Copy Markdown
Contributor

wxiaoguang commented May 12, 2026

Well, I am not convinced.

The current "label" system works like this:

  • "bug (fix)": need to be backported to stable release (unless it is difficult to backport)
  • "feature": can be highlighted to end users in release log
  • "enhancement": trivial fix or improvement, usually no need to be backported (can be backported if simple enough), appear in changelog but no need to highlight to end users.

If every "enhancment" becomes "feature", end users just are not able to find the real new features.

@lunny
Copy link
Copy Markdown
Member

lunny commented May 12, 2026

I also think we need an enhancement label in addition to feature. Sometimes a small improvement to the UI or an existing feature fits better under enhancement. It doesn’t mean the previous implementation was wrong, only that the new implementation is an improvement.

We could also add a highlight label, so that important features, enhancements even performance changes can be marked and tracked separately.

I will always label a PR when possible. It doesn't take more than 1 second.

@techknowlogick
Copy link
Copy Markdown
Member

+1 for keeping enhancement. @wxiaoguang the way you described the current state is also my understanding, and I agree with your conclusion that if every non-bugfix becomes "feature" then it's hard to find the actual new features.

@bircni
Copy link
Copy Markdown
Member Author

bircni commented May 12, 2026

Started here

#37677

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm/need 1 This PR needs approval from one additional maintainer to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants