Jens-G opened a new pull request, #3622:
URL: https://github.com/apache/thrift/pull/3622

   ## [THRIFT-6077](https://issues.apache.org/jira/browse/THRIFT-6077)
   
   `build/generate-changes.py` filed several classes of entries under **(No 
Section)** in the generated `CHANGES.md` draft despite a usable signal being 
available. This routes them correctly:
   
   1. **CI / dependabot PRs** — `github_actions`, `dependencies` and 
`testsuite` labels now map to *Build Process*, and `doc` to *Documentation*. 
dependabot cannot add a `Client:` trailer, so the GitHub label map is the right 
seam for these.
   2. **Rebase-merged PRs** — such PRs land several commits under one PR 
number. The old PR→label write-back keyed a dict by PR number, so only one 
commit of the PR received its label while the rest fell through to (No Section) 
— and a sibling commit's `Client:` trailer section could be overwritten. Labels 
now propagate to every section-less commit of the PR, without clobbering 
trailer-derived sections.
   3. **Componentless JIRA tickets** — a ticket referenced by an in-range 
commit but with no JIRA component now falls back to the section named by the 
commit's `Client:` trailer.
   
   On the current `master` draft, items 1 and 2 reduce (No Section) from **28 → 
3**; the three that remain carry no label and no `Client:` trailer (e.g. 
CODEOWNERS edits), which genuinely need human/JIRA classification. **Item 3 
does not change today's output** — every referenced ticket currently has a JIRA 
component — it is a robustness fix that keeps componentless tickets (as seen in 
earlier drafts) out of (No Section).
   
   A PR that carries both a CI label and a language label is listed under both 
sections (deduplicated).
   
   Adds `build/test_generate_changes.py` — 19 unit tests for the 
section-assignment helpers, no network required. Note: `flake8` excludes 
`build/` and Thrift's Python test suite lives under `lib/py`, so no CI job 
currently collects this module; run it directly with `python3 -m unittest 
build.test_generate_changes`.
   
   This only changes the release-notes draft generator (the `generate-changes` 
workflow artifact); no library or generated code is affected.
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to