MediaWiki 1.31 from April 2018 started to require PHP 7.0+ (see T172165). Since all our actively developed codebases depend on what was on core's master branch at the time, all these codebases do depend on MediaWiki 1.31, and therefore do in fact already depend on PHP 7.0+. At this point it might bee pointless to keep the compatibility with PHP 5.6.
What to do
"requires": { "MediaWiki": ">= 1.31.0" }
(It seems updating composer.json to contain "require": { "php": ">=5.6.99" } is not necessary.)
Possibly update the MediaWiki-Codesniffer as well. Then start using all the new features PHP 7.0 introduced.
Why
- Most extensions still specify compatibility with MediaWiki 1.31 because it is the current LTS version.
- Extensions are allowed to go higher when needed, e.g. when we need to use a core feature from a later version. We can still backport most changes (all that don't use new features). Having to support an LTS version does not mean you can't use new features.
- However, we believe it is a good idea to freeze the required PHP version to 7.0, and not use 7.1+ features. This makes possible backports easier.
Relevant German-Community-Wishlist extensions:
- Advanced-Search already requires MediaWiki >=1.32.0.
- Electron-PDFs currently requires MediaWiki >=1.27.0. Already uses PHP 7 features like ??. This seems to be a mismatch that should be fixed.
- Move-Files-To-Commons already requires MediaWiki >=1.32.0. Already uses PHP 7 features like ??.
- Revision-Slider already requires MediaWiki >=1.32.0.
- Two-Column-Edit-Conflict-Merge already requires MediaWiki >=1.32.0. Already uses PHP 7 features like ??.