2626matrix :
2727 include :
2828 - php : 7.1
29- env : php_extra="7.2"
29+ env : php_extra="7.2 7.4snapshot "
3030 - php : 7.3
3131 env : deps=high
3232 - php : 7.4snapshot
@@ -79,10 +79,8 @@ before_install:
7979 export COMPONENTS=$(find src/Symfony -mindepth 2 -type f -name phpunit.xml.dist -printf '%h\n')
8080 find ~/.phpenv -name xdebug.ini -delete
8181
82- if [[ $TRAVIS_PHP_VERSION = 7.4* && $deps ]]; then
82+ if [[ $TRAVIS_PHP_VERSION = 7.4* ]]; then
8383 export PHPUNIT_X="$PHPUNIT_X,issue-32995"
84- elif [[ $TRAVIS_PHP_VERSION = 7.4* ]]; then
85- export PHPUNIT_X="$PHPUNIT --group issue-32995"
8684 fi
8785
8886 nanoseconds () {
@@ -150,7 +148,7 @@ before_install:
150148 - |
151149 # php.ini configuration
152150 for PHP in $TRAVIS_PHP_VERSION $php_extra; do
153- phpenv global $PHP 2>/dev/null || (cd / && wget https://s3.amazonaws .com/travis-php- archives/binaries/ubuntu/14 .04/x86_64/php-$PHP.tar.bz2 -O - | tar -xj)
151+ phpenv global $PHP 2>/dev/null || (cd / && wget https://storage.googleapis .com/travis-ci-language- archives/php/ binaries/ubuntu/16 .04/x86_64/php-$PHP.tar.bz2 -O - | tar -xj)
154152 INI=~/.phpenv/versions/$PHP/etc/conf.d/travis.ini
155153 echo date.timezone = Europe/Paris >> $INI
156154 echo memory_limit = -1 >> $INI
@@ -262,7 +260,7 @@ install:
262260 run_tests () {
263261 set -e
264262 export PHP=$1
265- if [[ $PHP != $TRAVIS_PHP_VERSION && $TRAVIS_PULL_REQUEST != false ]]; then
263+ if [[ $PHP != 7.4* && $PHP != $TRAVIS_PHP_VERSION && $TRAVIS_PULL_REQUEST != false ]]; then
266264 echo -e "\\n\\e[1;34mIntermediate PHP version $PHP is skipped for pull requests.\\e[0m"
267265 break
268266 fi
@@ -279,6 +277,17 @@ install:
279277 echo "$COMPONENTS" | parallel --gnu "tfold {} 'cd {} && ([ -e composer.lock ] && ${COMPOSER_UP/update/install} || $COMPOSER_UP --prefer-lowest --prefer-stable) && $PHPUNIT_X'"
280278 echo "$COMPONENTS" | xargs -n1 -I{} tar --append -f ~/php-ext/composer-lowest.lock.tar {}/composer.lock
281279 else
280+ if [[ $PHP = 7.4* ]]; then
281+ # add return types before running the test suite
282+ rm vendor/symfony/contracts -Rf
283+ ln -sd $(realpath src/Symfony/Contracts) vendor/symfony/contracts
284+ sed -i 's/"\*\*\/Tests\/"//' composer.json
285+ composer install --optimize-autoloader
286+ php .github/patch-types.php
287+ php .github/patch-types.php # ensure the script is idempotent
288+ export PHPUNIT_X="$PHPUNIT_X,issue-32995,legacy"
289+ fi
290+
282291 echo "$COMPONENTS" | parallel --gnu "tfold {} $PHPUNIT_X {}"
283292 tfold src/Symfony/Component/Console.tty $PHPUNIT src/Symfony/Component/Console --group tty
284293 if [[ $PHP = ${MIN_PHP%.*} ]]; then
0 commit comments