Page MenuHomeDevCentral

Allow Jenkins to run tests on PHP 7
Closed, ResolvedPublic

Description

rNOTIF needs this

Pending issues

Event Timeline

We've now a Docker image with nginx and PHP 7:

Dwellers
$ docker run -dt -v /tmp/phpinfo/:/var/wwwroot/default -p 8080:80 nasqueron/nginx-php7-fpm

pasted_file (616×977 px, 90 KB)

Next step is to create the CLI version.

A question was if a new 7.1 image was valuable or it would be better to only focus on one image.

For that, we used Arcanist under PHP 7 for a while, and that doesn't seem to cause issue. If issues would appear in the future it could use a :5.6.x tagged version.

We're going to upgrade the image, ensure all the tools run on PHP 7 and fix or supersede them.

An ant build of rNOTIF gives rather good results in 9 minutes and 53 seconds, time mainly used by Composer. Tests with XDebug run in 2.25 minutes. The Ant build quits as successful.

Issues

  • pdepend 2.3.2 doesn't like modern PHP tokens (PHP 5 argument expansion or PHP 7.1 nullable)
  • phpdox: Object of class PhpParser\Node\NullableType could not be converted to string

PDepend

[pdepend] The following errors occurred:
[pdepend] Unexpected token: ..., line: 177, col: 27, file: /home/app/notifications-center/app/Console/Commands/NotificationsPayload.php.
[pdepend] Unexpected token: ?, line: 146, col: 61, file: /home/app/notifications-center/app/Phabricator/ProjectsMap.php.

phpdox

  [phpdox] [25.12.2016 - 02:46:14] The following file(s) had errors during processing and were excluded:
  [phpdox] [25.12.2016 - 02:46:14]  - /home/app/notifications-center/app/Phabricator/ProjectsMap.php (Object of class PhpParser\Node\NullableType could not be
converted to string)
  [phpdox] [25.12.2016 - 02:46:14] Saving results to directory '/home/app/notifications-center/build/phpdox'
  [phpdox] [25.12.2016 - 02:46:16] Resolving inheritance