Page MenuHomePhabricator

Determine which PHP version to target with Parsoid
Closed, ResolvedPublic

Description

What should the minimum supported version be?

There are two considerations:

  • Soonish, Parsoid will be set up as a PHP service in the Wikimedia cluster, so obviously it needs to support whatever version of PHP we intend to use there.
  • Maybe less soonish, Parsoid will become a part of the MediaWiki distribution (at the latest after the parser unification, but possibly even in its semi-standalone form), so it should probably support all PHP versions that MediaWiki supports.

Current WMF migration plan is T176370: Migrate to PHP 7 in WMF production - HHVM to PHP 7.2 by 2018-19 Q2 (I guess the timeline in the task description is outdated?). The task for dropping third-party support for HHVM is T176370: Migrate to PHP 7 in WMF production which is unclear about whether that's supposed to happen immediately after the WMF switch of later. I don't think there's anything in Phabricator about plans for dropping 7.x support for some x.

Per the PHP support schedule, 7.0 is end-of-life with no security support; 7.1 is end-of-life and security support will be dropped next December.

Event Timeline

Change 486835 had a related patch set uploaded (by Gergő Tisza; owner: Subramanya Sastry):
[mediawiki/services/parsoid@master] Upgrade minimum PHP version to 7.1 to let us use nullable types

https://gerrit.wikimedia.org/r/486835

Our initial work here is not to set up a service ... Parsoid will become a composer library that will be pulled into core and made accessible via integration code in core. Initially, it won't replace the PHP parser, but we aim to bridge and fix all output and feature gaps and make it the default which has a longer timeline. But, basically, it won't be a standalone service. This detail doesn't change the larger question about PHP versions though.

@ssastry you should aim at php 7.x support, with x >= 2.

Production is currently on 7.2 and when we migrate to debian buster later in the year we'll probably migrate to PHP 7.3.

@ssastry you should aim at php 7.x support, with x >= 2.

Production is currently on 7.2 and when we migrate to debian buster later in the year we'll probably migrate to PHP 7.3.

Thanks .. that is great.

Maybe less soonish, Parsoid will become a part of the MediaWiki distribution (at the latest after the parser unification, but possibly even in its semi-standalone form), so it should probably support all PHP versions that MediaWiki supports.

T192166: Drop HHVM support from MediaWiki is the task for dropping the requirement for working with HHVM 3.18 (and hhvm.php7.all = false).

I don't see a task in Phabricator for dropping support for PHP 7.0 or 7.1, but I expect that would probably happen along with T192166 since Wikimedia will be using 7.2 or 7.3.

Change 486835 merged by jenkins-bot:
[mediawiki/services/parsoid@master] Upgrade minimum PHP version to 7.1 to let us use nullable types

https://gerrit.wikimedia.org/r/486835

We should probably bump Parsoid to 7.2 since (a) the zest port is using 7.2 and (b) mediawiki is planning to skip 7.1 anyway.

Change 494802 had a related patch set uploaded (by C. Scott Ananian; owner: C. Scott Ananian):
[integration/config@master] Stop running php7.1 checks on Parsoid

https://gerrit.wikimedia.org/r/494802

Change 494810 had a related patch set uploaded (by C. Scott Ananian; owner: C. Scott Ananian):
[mediawiki/services/parsoid@master] Bump minimum PHP version to 7.2

https://gerrit.wikimedia.org/r/494810

ssastry triaged this task as High priority.Mar 13 2019, 2:54 AM

Change 494802 had a related patch set uploaded (by Reedy; owner: C. Scott Ananian):
[integration/config@master] Stop running php7.1 checks on Parsoid

https://gerrit.wikimedia.org/r/494802

Change 494802 merged by jenkins-bot:
[integration/config@master] Stop running php7.1 checks on Parsoid

https://gerrit.wikimedia.org/r/494802

Change 494810 had a related patch set uploaded (by C. Scott Ananian; owner: C. Scott Ananian):
[mediawiki/services/parsoid@master] Bump minimum PHP version to 7.2

https://gerrit.wikimedia.org/r/494810

Change 494810 merged by jenkins-bot:
[mediawiki/services/parsoid@master] Bump minimum PHP version to 7.2

https://gerrit.wikimedia.org/r/494810

ssastry claimed this task.

We are targeting 7.2