lukaszlenart opened a new pull request, #1844: URL: https://github.com/apache/struts/pull/1844
Stacked on #1843 — base retargets to `main` automatically when that merges. Only the second commit is new here. ### Why The only end-to-end description of the release process is the cwiki page [Building Struts 2 — Normal release](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=27832970), last revised in **2017**. It is still right about JIRA, the release plugin, Nexus and `dist.apache.org`, and wrong about everything downstream: | It says | Reality | |---|---| | Branches `develop` / `master` | `main` and `support/struts-6-x-x` | | Tag `STRUTS_2_3_x` | `STRUTS_X_Y_Z` | | Export the wiki to `/docs` | No longer part of the site | | Docker Jekyll, commit `content/`, `svn co .../production/struts` | The site builds from a PR to `apache/struts-site` | | `people.apache.org`, `announce.md`, `downloads.html` | Dead host; files are `announce-YYYY.md` and `download.cgi` | The four existing skills cover the paperwork. Nothing covered the mechanics, the ordering, or the last mile — the GA `[ANN]` mail, CVE registration, the site update, post-release follow-through. ### What this adds `releasing-struts/SKILL.md` — the spine. Seven phases, each with a gate that someone other than the release manager can verify, cross-referencing `creating-version-notes`, `creating-release-vote-mail` and `creating-security-bulletins` rather than restating them. Covers the two-line rule, why the version number cannot come from the pom, and the ordering constraint between a release and its advisories. `releasing-struts/release-runbook.md` — the commands. **Every step is marked ✔ verified against the 7.3.0 / 6.11.0 run or ⚠ unverified**, the latter meaning carried over from the cwiki page and not confirmed. Nexus close/release and the `svn mv` promotion are the main ⚠ items; whoever runs the next release should correct them in place. Plus a one-line pointer to the spine from the two skills that sit inside it. ### Corrections found while verifying - **Releases are cut on a `release/X.Y.Z-RC1` branch off the line, not on `main`.** The `[maven-release-plugin]` commits live on `release/7.3.0-RC1` and `release/6.11.0-RC1`; `main` still reads `7.2.2-SNAPSHOT` after 7.3.0 shipped. A failed vote is a deleted branch, not a revert. - **The BOM needs no version sync** — `bom/pom.xml` inherits through `<parent>`, and the `struts-version.version` property the cwiki tells you to check no longer exists. - **The GA `[ANN]` mail** goes `To: user@` with `Cc: announce@, announcements@struts` — `dev@` is not on it. ### Follow-up The cwiki page should be trimmed to a pointer at this skill, so there aren't two documents that disagree. Not done here — that's a wiki edit, not a repo change. 🤖 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]
