Should 7.4 be added to 1.42 and master in the grid/table in Compatibility#PHP? We're still testing CI on 7.4 and we're still running production on 7.4 in both 1.42 and master, correct?
Topic on Talk:Compatibility/Flow
Appearance
PHP-7.4 is EOL software. As far as outside users are concerned, it seems reasonable that they should be dissuaded from using it. Note that 8.0 isn't in the support table either.
You can no longer install 1.42 without "hacking" the software since the installer will error out due to a compatibility warning. Let's get new users to start with PHP 8.1 or later. Mentioning PHP 7.4 here will confuse them.
I'm reopening this topic. Currently the table states the MW 1.42 does not work with PHP 7.4 or 8.0 - I tried changing this, but it was reverted as "lying". Which is strange, because (a) MW 1.42 does obviously work with these two PHP versions (including on this wiki), and (b) it was announced a few days ago that a "drop of support to PHP versions < 8.1" was one of the main changes in the upcoming MW 1.43. Which is a nonsensical statement if the official line is that PHP < 8.1 already was not supported.
I understand the desire to discourage people from using old PHP versions, but surely there's some way to do that without misinforming users?
Agreed we need some clarity especially if the WMF is still using PHP 7.4 for what is supposedly the alpha version of MW 1.43. If PHP 7.4 support needs to be “removed” from each successive major version, then by that logic the release notes also need to include the removal of Herobrine from MediaWiki 1.43.
@Tystnaden: , @Kghbln: , @Jdforrester: any thoughts?
I could only repeat what I already mentioned. Because of this, I would set 7.4 as not supported.
I didn't understand what you wrote before... you wrote, "You can no longer install 1.42 without "hacking" the software since the installer will error out due to a compatibility warning." Did you mean, install 1.42 on PHP < 8.1? Or on PHP < 8.0? For what it's worth, I am currently running MW 1.43.0-alpha with PHP 7.4 on my own wiki (downloaded not via the installer, just via a Git pull), and the upgrade went fine. What's the warning message users see? And what's the hack? Perhaps there should be some note above the graph to indicate this, but simply saying "not supported" is incorrect.
I am currently running MW 1.43.0-alpha with PHP 7.4 on my own wiki (downloaded not via the installer, just via a Git pull), and the upgrade went fine.
Yes, this is nothing to do with unreleased, unsupported software like the alphas, which temporarily still work with PHP 7.4 but aren't supported.
Fine, but the fact that MW 1.43-alpha works with PHP 7.4 surely means that MW 1.42 does as well; which was my main point.
No, it doesn’t mean that. Alpha versions and released versions are different; a commit included in released 1.42 but not in alpha versions explicitly makes MW refuse to work on PHP 7.4 and 8.0 (despite it being otherwise technically compatible with them). Reverting that commit is what Kghbln above called “‘hacking’ the software”.
Okay, thanks, that's very helpful. Now I think I understand the situation much better. It's strange that this change was made to MW 1.42 but not 1.43-alpha, so that, in a sense, PHP 7 compatibility went away and then came back again. It's also strange that this and the other Wikimedia sites are still running PHP 7.4; but maybe these two things are related. The fact that a drop of support for PHP < 8.1 was announced for MW 1.43 is actually a third strange thing, although it makes a little more sense in light of the previous information. (Presumably, a dropping of PHP < 8.1 support could keep getting announced for more MediaWiki versions in the future, especially if the Wikimedia sites keep resisting a PHP upgrade.)
Anyway, I think this resolves my questions. Tacsipacsi - thanks again!
It's strange that this change was made to MW 1.42 but not 1.43-alpha, so that, in a sense, PHP 7 compatibility went away and then came back again.
FYI, we did the same in dropping PHP 7.2, and later 7.3, support from release versions of MW ahead of Wikimedia production's migration.
Okay, that's also good to know.
It seems to me that this issue all boils down to confusion over the use of the terms "supported" versus "is compatible". I appreciate @Tacsipacsi for clarifying the true delineation between the use of these two terms. I also encourage that individuals refrain from using charged language such as "lying" without taking the time to assume good faith and understand why someone like @Yaron Koren is trying to clear this confusion up.