Skip to content

#2647 Add changelog entry check - #2649

Open
laim2003 wants to merge 9 commits into
devonfw:mainfrom
laim2003:feature/#2647-Add-check-for-PRs-for-internal-label-Changelog-handling
Open

laim2003 wants to merge 9 commits into
devonfw:mainfrom
laim2003:feature/#2647-Add-check-for-PRs-for-internal-label-Changelog-handling

Conversation

@laim2003

@laim2003 laim2003 commented Oct 13, 2026 •

Copy link
Copy Markdown
Contributor

This PR fixes #2647

Depends on #2645

Implemented changes:

  • Add check that verifies that either an internal label has been added or a new changelog entry is present.

Testing instructions

Please add conscise, understandable instructions on how a reviewer can test/verify the functionality of your contribution here:

  1. There is no real testing possible here, but you can remove the internal label, check whether the Check becomes red and then re-add the label and check how it becomes green.

Checklist for this PR

Make sure everything is checked before merging this PR. For further info please also see
our DoD.

  • When running mvn clean test locally all tests pass and build is successful
  • PR title is of the form #«issue-id»: «brief summary» (e.g. #921: fixed setup.bat and not feature/921 fixed setup.bat).
    If no issue ID exists, title only.
  • PR top-level comment summarizes what has been done and contains link to addressed issue(s)
  • PR and issue(s) have suitable labels
  • Issue is set to In Progress and assigned to you or there is no issue (might happen for very small PRs)
  • You followed all coding conventions
  • You have added the issue implemented by your PR in CHANGELOG.adoc unless issue is labelled
    with internal
  • You have not changed any dependency in pom.xml files or otherwise if runtime dependencies changed,
    you have updated our LICENSE.adoc
  • You have formulated clear instructions on how to test your contribution under "Testing instructions"

Signed-off-by: laim2003 <luk.faber@gmx.de>
Signed-off-by: laim2003 <luk.faber@gmx.de>
Signed-off-by: laim2003 <luk.faber@gmx.de>
@laim2003 laim2003 self-assigned this Oct 13, 2026
@laim2003 laim2003 added the workflow GitHub actions (CI,CD,update urls/CVEs) label Oct 13, 2026
@laim2003 laim2003 moved this from 🆕 New to 🏗 In progress in IDEasy board Oct 13, 2026
@laim2003 laim2003 added the internal Nothing to be added to CHANGELOG, only internal story label Oct 13, 2026
@coveralls

coveralls commented Oct 13, 2026 •

Copy link
Copy Markdown
Collaborator

Coverage Report for CI Build 38902399597

Coverage decreased (-0.01%) to 74.744%

Details

  • Coverage decreased (-0.01%) from the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • 2 coverage regressions across 1 file.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

2 previously-covered lines in 1 file lost coverage.

File Lines Losing Coverage Coverage
com/devonfw/tools/ide/version/VersionSegment.java 2 90.29%

Coverage Stats

Coverage Status
Relevant Lines: 19643
Covered Lines: 15337
Line Coverage: 78.08%
Relevant Branches: 8723
Covered Branches: 5865
Branch Coverage: 67.24%
Branches in Coverage %: Yes
Coverage Strength: 3.35 hits per line

💛 - Coveralls

@laim2003 laim2003 removed the internal Nothing to be added to CHANGELOG, only internal story label Oct 13, 2026
Signed-off-by: laim2003 <luk.faber@gmx.de>
@laim2003 laim2003 added the internal Nothing to be added to CHANGELOG, only internal story label Oct 13, 2026
@laim2003 laim2003 moved this from 🏗 In progress to Team Review in IDEasy board Oct 13, 2026
@laim2003 laim2003 changed the title #2647 Add changelog check entry #2647 Add changelog entry check Oct 13, 2026
@laim2003
laim2003 requested a review from shodiBoy1 October 15, 2026 11:57
…nternal-label-Changelog-handling

# Conflicts:
#	.github/workflows/check-pr-labels.yml
Signed-off-by: laim2003 <luk.faber@gmx.de>
@laim2003
laim2003 requested a review from JoelAdbu October 15, 2026 15:24
@laim2003 laim2003 added this to the release:2026.10.001 milestone Oct 15, 2026
@JoelAdbu
JoelAdbu marked this pull request as ready for review October 15, 2026 15:26
@laim2003
laim2003 removed the request for review from JoelAdbu October 15, 2026 15:26
@laim2003
laim2003 requested a review from quando632 October 15, 2026 15:26

@quando632 quando632 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Nice extension of the label check. Re-fetching the PR so the label state is current, paginating listFiles, and keeping the workflow at pull-requests: read are all solid choices. The failure messages tell the contributor exactly which two ways lead to a green check and point to the DoD, which makes the rule easy to follow.

+ `Please remove the entry from ${CHANGELOG}, or remove the "${INTERNAL_LABEL}" `
+ `label if the change is user-facing. See documentation/contributing/DoD.adoc.`
);
} else if (!isInternal && addedLines === 0) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This branch fails for PRs that the DoD explicitly exempts from the CHANGELOG, namely follow-up fixes to a story that has not been released yet (DoD.adoc, line 36). The same applies to test-only, workflow and docs PRs without the internal label: simulating this rule on the last 100 merged PRs, 17 non-Dependabot PRs would have failed (e.g. #2383, #2435, #2350, #2564). Could we update that DoD paragraph to say "label such PRs internal", so contributors following the DoD do not end up with a red check?

+ `Please remove the entry from ${CHANGELOG}, or remove the "${INTERNAL_LABEL}" `
+ `label if the change is user-facing. See documentation/contributing/DoD.adoc.`
);
} else if (!isInternal && addedLines === 0) {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Dependabot PRs will always fail here, since they only get dependencies/java labels and never touch the CHANGELOG (#2259, #2260, #2339, #2340 would all have failed). Adding labels to the maven entry in .github/dependabot.yml would fix that; explicit labels replace Dependabot's defaults, so dependencies needs to be listed too:

    labels:
      - "dependencies"
      - "internal"

@shodiBoy1 shodiBoy1 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Thanks @laim2003 for the work on this.

The PR does what the issue asks.

One thing to keep in mind: the current code treats every added line as a changelog entry. For example, adding an empty line or changing whitespace makes the check pass without internal, while the same change makes it fail with internal.

This is not blocking from my side because we still review the changelog changes manually. We can improve the check later if needed.

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

Labels

internal Nothing to be added to CHANGELOG, only internal story workflow GitHub actions (CI,CD,update urls/CVEs)

Projects

Status: Team Review

Development

Successfully merging this pull request may close these issues.

Add check for PRs for internal label / Changelog handling

5 participants