Release checklist
Appearance
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 | ||
| Before branching | Task management | Populate the MW vX release blocker's tag with release task tree | 1.46.0 release tree | ||
| Before branching | Task management | Create a release blocker tag for MW vX+1 | MW-1.47-release project | ||
| 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 | ||
| 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 | ||
| ~ | Git | Cut the MW vX (REL…) branch via the MediaWiki release tools branch.py script
|
REL1_46 branching task | ||
| Just after branching | Git | Prepare the master branch as MW vX+1 alpha, including the new RELEASE-NOTES file | REL1_46 preparation commit | ||
| Just after branching | Documentation | Edit Module:Version to set isthereabeta to true.
|
REL1_46 branch on-wiki doc. config | ||
| 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 | ||
| A few minutes after branching | Communications | Send a branch announcement e-mail for MW vX | REL1_46 branch announcement | ||
| After branching | Configuration | Configure ExtensionDistributor that there's a new candidate snapshot branch | REL1_46 addition as a beta | ||
| After branching | Configuration | Configure LibraryUpgrader that there's a new branch to scan and update | Add REL1_46 | ||
| After branching | Configuration | Configure Translatewiki.net that there's a new branch to update | REL1_46 addition as a branch | ||
| After branching | Git | Prune /vendor. Updated process is described in phab:T423266 | Prune /vendor for REL1_46 | ||
| 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 | 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 | Reviewed 2025-06-03 | |
| Every week or so | Git | Check for drift in MW core's documented for the release branch, via:
|
N/A | 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 | ||
| 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 | ||
| Just before RC releasing | Git | Prepare the release branch as MW vX rc.Z | Prep. 1.45.0-rc.0 commit | ||
| Just before RC releasing | Release | Build & sign the artefacts using the MediaWiki release tools makerelease2.py script
|
N/A | ||
| - | Release | Upload the built artefacts to releases.wikimedia.org and push new tag to gerrit | 1.45 release directory | ||
| A few minutes after RC releasing | Communications | Send an announcement e-mail | 1.45.0-rc.0 availability announcement | ||
| 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 | ||
| Just before releasing | Documentation | Fill in the RELEASE-NOTES file with all changes landed since the release candidate. | 1.45.0 notes fix-up | ||
| Just before releasing | Git | Prepare the release branch as MW vX | Prep 1.45.0 commit | ||
| Just before releasing | Release | Build & sign the artefacts using the MediaWiki release tools makerelease2.py script
|
N/A | ||
| - | Release | Upload the built artefacts to releases.wikimedia.org | 1.45 release directory | ||
| Just after releasing | Communications | Send an announcement e-mail | 1.45.0 release announcement | ||
| 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 | ||
| A few minutes after release | Documentation | Edit Template:MediaWiki News to add the release announcement | 1.45.0 release on-wiki advert | ||
| 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 | ||
| A few minutes after release | Documentation | Archive the old RELEASE-NOTES file in the master branch | 1.45.0 release notes archival | ||
| 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 | ||
| After releasing | Documentation | Make sure the Version lifecycle and Template:Timeline_MediaWiki are up to date | Special:Diff/8068913 Special:Diff/8068984 | ||
| After releasing | Documentation | Make sure the MediaWiki 1.45 and Release_notes/1.45 are up to date | Special:Diff/8074133 Special:Diff/8074147 | ||