== Why upgrade? ==
When we imported the [[ https://wikimini.org/ | Wikimini ]]'s wiki farm into the #wmch-infrastructure we kept their legacy MediaWiki version, `1.28.0`, in order to concentrate on migration issues and avoid to introduce additional regressions.
This had some security implications that cannot be disclosed here, anyway, we have the responsibility to plan an upgrade ASAP to at least MediaWiki `1.31`. That version is the current stable version provided by Debian GNU/Linux buster 10 (current stable). We also have the possibility to update to MediaWiki `1.35` proposed by the `buster-backports` package.
* https://packages.debian.org/buster/mediawiki
* https://packages.debian.org/buster-backports/mediawiki
I generally would be inclined in updating directly from `1.28` to `1.35` for the simple fact that updating MediaWiki usually works as expected nowadays and and that nowadays intermediate advances are not recommended (because in recent versions you have the benefit of fix for old broken updates). Moreover I have a lot of faith in the maintainer of the backports package. Anyway, we can pull the rollback lever in case of troubles.
Some benefits for MediaWiki 1.31:
* significantly improve security (adopting a clean verified core)
* improve user experience of multimedia files
* simplify ordinary maintenance (thanks to the package manager, and getting rid by the legacy VisualEditor Parsoid/JS service)
* simplify security maintenance (provided by the package maintainer)
* improve patrolling with block IP-ranges
* improve cache systems ([[ https://www.mediawiki.org/wiki/Manual:$wgUseFileCache | $wgUseFileCache ]])
Additional benefits for MediaWiki 1.35:
* improve user experience adopting newer versions of VisualEditor
* improve user experience with Scribunto and Lua modules to build advanced templates
* improve patrolling with partial blocks
See also this page we've contributed to:
* [[ https://www.mediawiki.org/wiki/Manual:Upgrading#Why_upgrade?
| Why upgrading MediaWiki? ]]
For historical reasons here the Wikimini's version matrix at November, 27 2020 (before this upgrade):
http://web.archive.org/web/20201127095550/https://fr.wikimini.org/wiki/Sp%C3%A9cial:Version
== Plan ==
Here we can work on an upgrade plan.
Hours are expressed as working-hours, considering a certain margin of unexpected last-minute mess on common sense - I mean, [[ https://twitter.com/xgarreau/status/1369559995491172354 | not a fire disaster in the datacenter ]].
[ ] `4 h` deploy a separated testing environment
[ ] separated databases
[ ] separated filesystem files
[ ] ...
[ ] `8 h` investigate support for all the extensions
[ ] [[ http://wiki.anotherwebcom.com/Category:AWC%27s_MediaWiki_Forum_Extension | AWC`s MediaWiki Forum ]] ([[ http://web.archive.org/web/20100329174939/http://wiki.anotherwebcom.com/Category:AWC's_MediaWiki_Forum_Extension | Internet Archive version ]]) ({icon exclamation-circle})
[ ] [[ https://github.com/Wikia/app/tree/dev/extensions/wikia/CanonicalHref | Canonical Href ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:CategoryTree | CategoryTree ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:CheckUser | CheckUser ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:ConfirmEdit | ConfirmEdit ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:Contribution_Scores | Contribution Scores ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:CurrentUsers | CurrentUsers ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:Duplicator | Duplicator ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:EmbedVideo | EmbedVideo ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:Form | Form ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:ImageMap | ImageMap ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:Include | include ]] ({icon exclamation-circle})
[ ] refactor image of the day to do not require the `include` extension
[ ] drop extension `include`
[X] [[ https://www.mediawiki.org/wiki/Extension:InputBox | InputBox ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:LiquidThreads | Liquid Threads ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:Matomo | Matomo ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:MultimediaViewer | MultimediaViewer ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:Nuke | Nuke ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:ParserFunctions | ParserFunctions ]]
[ ] QuestyCaptcha ([[ https://www.mediawiki.org/wiki/Extension:QuestyCaptcha | this? ]])
[ ] [[ https://www.mediawiki.org/wiki/Extension:Quiz | Quiz ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:Renameuser | Renameuser ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:Replace_Text | Replace Text ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:SelectCategory | SelectCategory ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:TemplateData | TemplateData ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:TitleBlacklist | Title Blacklist ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:TorBlock | TorBlock ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:UniversalLanguageSelector | UniversalLanguageSelector ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:UserFunctions | UserFunctions ]]
[X] [[ https://www.mediawiki.org/wiki/Extension:VisualEditor | VisualEditor ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:WikiEditor | WikiEditor ]]
[ ] [[ https://stock.wikimini.org/wiki/Extension:WikiminiLanguage | WikiminiLanguage ]]
[ ] [[ https://www.mediawiki.org/wiki/Extension:WikiSEO | WikiSEO ]]