Page MenuHomePhabricator

Prepare phan-docker on CI for phan2.0.0
Closed, ResolvedPublic

Description

When running phan 1.3.4 from phan-config 0.6.0 in the wmf CI it shows a warning:

future major version of Phan will require PHP 7.1+ to run, but PHP 7.0.33-0+deb9u2 is installed.
PHP 7.0 reached its end of life in December 2018.
(Set PHAN_SUPPRESS_PHP_UPGRADE_NOTICE=1 to suppress this message)

On my local machine I was getting a message that php-ast 1.0.1 will be needed by newer phan.

At the moment phan 2.0.0 release candidat are there which needs php7.1

Please prepare the docker to run on newer php or apply a feature switch to run the stable phan 2.0.0 when released.

Thanks

Event Timeline

Legoktm subscribed.

I'm going to switch the phan container to use PHP 7.2. I don't expect this to cause any regressions in existing code since we're using the same php-ast version, but I'll do a bit of testing.

Change 513914 had a related patch set uploaded (by Legoktm; owner: Legoktm):
[integration/config@master] mediawiki-phan: Switch to PHP 7.2

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

Change 513914 merged by jenkins-bot:
[integration/config@master] mediawiki-phan: Switch to PHP 7.2

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

Mentioned in SAL (#wikimedia-releng) [2019-06-08T00:49:19Z] <James_F> Updating docker-pkg files on contint1001 to build mediawiki-phan:0.2.0 based on php72 T223847

Next step is actually moving to phan 2.x? Would that be this task or a different one? If the latter, is this now Resolved?

Got something related to this warning today but the lines mentioned, I didn't touch them:

12:51:58 A future major version of Phan will require PHP 7.1+ to run, but PHP 7.0.33-0+deb9u3 is installed.
12:51:58 PHP 7.0 reached its end of life in December 2018.
12:51:58 (Set PHAN_SUPPRESS_PHP_UPGRADE_NOTICE=1 to suppress this message)
12:52:47 <?xml version="1.0" encoding="ISO-8859-15"?>
12:52:47 <checkstyle version="6.5">
12:52:47   <file name="includes/page/PageArchive.php">
12:52:47     <error line="427" severity="error" message="Call to method isOK on non-class type bool|int" source="PhanNonClassMethodCall"/>
12:52:47     <error line="430" severity="error" message="Expected an object instance when accessing an instance property, but saw an expression with type bool|int" source="PhanTypeExpectedObjectPropAccess"/>
12:52:47   </file>
12:52:47 </checkstyle>

https://integration.wikimedia.org/ci/job/mediawiki-core-php70-phan-docker/31384/console and patch: https://gerrit.wikimedia.org/r/c/mediawiki/core/+/510199.