Jump to content

Release checklist

From mediawiki.org

This page tracks what steps are needed to release new versions of MediaWiki for third-party use.

Steps for branching MW vX

[edit]
Timing Type Step Example Status for 1.45.0 Status for 1.46.0
Preparatory steps
A few weeks before branching Communications Send a pre-branch reminder e-mail for MW vX REL1_46 pre-branch announcement Yes Done Yes Done
Before branching Task management Populate the MW vX release blocker's tag with release task tree 1.46.0 release tree Yes Done Yes Done
Before branching Task management Create a release blocker tag for MW vX+1 MW-1.47-release project Yes Done Yes Done
Before branching Configuration Configure CI to understand what to do with the new MW vX branches before they exist Configuration of CI REL1_46 pipelines Yes Done Yes Done
Before branching Preparation Update CREDITS in MW master using maintenance/updateCredits.php. In order to have a more accurate credits file, any .mailmap changes should land before running this. Update credits ahead of the 1.46 release Yes Done Yes Done
~ Git Cut the MW vX (REL…) branch via the MediaWiki release tools branch.py script REL1_46 branching task Yes Done Yes Done
Just after branching Git Prepare the master branch as MW vX+1 alpha, including the new RELEASE-NOTES file REL1_46 preparation commit Yes Done Yes Done
Just after branching Documentation Edit Module:Version to set isthereabeta to true. REL1_46 branch on-wiki doc. config Yes Done Yes Done
Just after branching Documentation Edit Release notes to add the new vX+1 branch as master, and the branch date of MW vX REL1_46 branch point on-wiki doc Yes Done Yes Done
A few minutes after branching Communications Send a branch announcement e-mail for MW vX REL1_46 branch announcement Yes Done Yes Done
After branching Configuration Configure ExtensionDistributor that there's a new candidate snapshot branch REL1_46 addition as a beta Yes Done Yes Done
After branching Configuration Configure LibraryUpgrader that there's a new branch to scan and update Add REL1_46 Yes Done Yes Done
After branching Configuration Configure Translatewiki.net that there's a new branch to update REL1_46 addition as a branch Yes Done Yes Done
After branching Git Prune /vendor. Updated process is described in phab:T423266 Prune /vendor for REL1_46 Yes Done Yes Done
Backport review
Every week or so Git Check for proposed, unmerged patches documented for the release branch; consider if they're appropriate for merging and backporting, e.g. search for file:RELEASE-NOTES-1.46 N/A Yes Done Reviewed 2025-06-03
Every week or so Git Check for proposed, unmerged patches to the release branch; consider merging, e.g. search for branch:REL1_46 N/A Yes Done Reviewed 2025-06-03
Every week or so Git Check for drift in MW core's documented for the release branch, via:
git diff origin/REL1_46..origin/master RELEASE-NOTES-1.46
N/A Yes Done Reviewed 2025-06-03
Release candidate steps (repeat until satisfied)
~Two weeks after the branch/last RC Task management Agree there are no obvious major issues. N/A Yes Done
Just before RC releasing Documentation Until T166010 is closed out, update the namespaced class count in RELEASE-NOTES file. Namespaced class count for 1.45.0 Yes Done
Just before RC releasing Git Prepare the release branch as MW vX rc.Z Prep. 1.45.0-rc.0 commit Yes Done
Just before RC releasing Release Build & sign the artefacts using the MediaWiki release tools makerelease2.py script N/A Yes Done
- Release Upload the built artefacts to releases.wikimedia.org and push new tag to gerrit 1.45 release directory Yes Done
A few minutes after RC releasing Communications Send an announcement e-mail 1.45.0-rc.0 availability announcement Yes Done
Release steps
A week or so after the last RC Task management Agree there are no blockers left, and feedback on the release candidate is adequate. N/A Yes Done
Just before releasing Documentation Fill in the RELEASE-NOTES file with all changes landed since the release candidate. 1.45.0 notes fix-up Yes Done
Just before releasing Git Prepare the release branch as MW vX Prep 1.45.0 commit Yes Done
Just before releasing Release Build & sign the artefacts using the MediaWiki release tools makerelease2.py script N/A Yes Done
- Release Upload the built artefacts to releases.wikimedia.org 1.45 release directory Yes Done
Just after releasing Communications Send an announcement e-mail 1.45.0 release announcement Yes Done
A few minutes after release Documentation Edit Module:Version to add the branch point and set isthereabeta to false. 1.45.0 release on-wiki doc. config Yes Done
A few minutes after release Documentation Edit Template:MediaWiki News to add the release announcement 1.45.0 release on-wiki advert Yes Done
A few minutes after release Documentation Add a section for the first security release to the RELEASE-NOTES file 1.45.1 documentation start commit Yes Done
A few minutes after release Documentation Archive the old RELEASE-NOTES file in the master branch 1.45.0 release notes archival Yes Done
A few minutes or maybe two years after release Documentation Archive the Phabricator project tag of the previous, now unsupported release 1.38.x archival
After releasing Configuration Configure ExtensionDistributor that MW vX is a full release, not a candidate snapshot REL1_45 promotion to stable Yes Done
After releasing Documentation Make sure the Version lifecycle and Template:Timeline_MediaWiki are up to date Special:Diff/8068913 Special:Diff/8068984 Yes Done
After releasing Documentation Make sure the MediaWiki 1.45 and Release_notes/1.45 are up to date Special:Diff/8074133 Special:Diff/8074147 Yes Done

See also

[edit]