Hi all,
Over the weekend I worked on resolving
https://phabricator.wikimedia.org/T112895 ("Support installing composer
require-dev packages together with mediawiki/vendor").
With the help of Bryan Davis this has now been implemented and applied to
all mediawiki core and extension jobs (mediawiki-*, mwext-*).
Packages specified in mediawiki-core:/composer.json 'require-dev' section
will now be fetched and installed in Jenkins, and the exposed interfaces
are now available through the regular autoloader from Composer.
Key points:
* PHPUnit is now loaded from $WORKSPACE/vendor instead of the frozen legacy
copy at /srv/deployment/integration/phpunit.
* PHPUnit version has not yet changed (3.7.17). However upgrading is now as
easy as changing a number in MediaWiki's composer.json. And such change
will also be reflected in pre-merge test jobs, so that it can be verified
before merging. – See
https://phabricator.wikimedia.org/T99982 and
https://gerrit.wikimedia.org/r/270485
* Aside from PHPUnit, one can now also other require-dev composer packages.
For example, we may want to consider using something like vfsStream for
file-system mocking in PHP. –
https://phabricator.wikimedia.org/T86163
-- Krinkle