Skip to content

fix(changelog): analyzer config and PublicAPI baselines under src/ never need a fragment - #647

Merged
Chris-Wolfgang merged 1 commit into
mainfrom
fix/changelog-check-ignore-src-config
Sep 22, 2026
Merged

Chris-Wolfgang merged 1 commit into
mainfrom
fix/changelog-check-ignore-src-config

Conversation

@Chris-Wolfgang

Copy link
Copy Markdown
Owner

Summary

Fan-out of Chris-Wolfgang/repo-template#630; this repository's scripts/changelog.ps1 was byte-identical to the template's, so this is a clean take of the fixed file.

check classified a PR by path (^src/), so a PR whose only change is a nested src/…/.editorconfig was told to add a changelog fragment — which it cannot: changelog/unreleased/*.md is unprotected, so adding one turns a protected-file-only PR into a mixed PR and the protected-file guard fails it unbypassably. The only way through was the no-changelog label on a change that never needed a note.

Now excluded from the src/ set (they cannot change what the library does for a consumer): a nested .editorconfig, any *.globalconfig / *.ruleset / *.DotSettings, and the PublicAPI.Shipped.txt / PublicAPI.Unshipped.txt baselines. Everything else under src/ still requires a fragment or the label; the count line reports the ignored files separately.

Verified upstream with 11 regex cases (near-misses like EditorConfigReader.cs and PublicAPI.Shipped.txt.template still count) and an end-to-end scratch-repo run: config-only passes, config + a new .cs fails with exit 1, code + fragment passes.

scripts/changelog.ps1 is protected → configuration-only PR. The matching changelog/unreleased/README.md wording rides the next template sync.

🤖 Generated with Claude Code

…ver need a fragment

Takes repo-template#630. `check` counted every path matching ^src/, so a PR
touching only a nested .editorconfig (or a .globalconfig / .ruleset /
.DotSettings, or a PublicAPI.*.txt baseline) demanded a changelog fragment -
which such a PR cannot carry, because the protected-file guard fails a PR that
mixes a protected file with anything else. Those paths are now excluded and
reported separately; code and csproj under src/ still require a fragment or
the no-changelog label.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Copilot AI lite review requested due to automatic review settings September 22, 2026 13:15

Copilot AI 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.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

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.

2 participants