@@ -23,10 +23,6 @@ matrix:
23
23
include :
24
24
- php : 7.2
25
25
env : php_extra="7.3 8.0"
26
- - php : 7.4
27
- env : deps=high
28
- - php : 8.0
29
- env : deps=low
30
26
fast_finish : true
31
27
32
28
cache :
@@ -36,15 +32,6 @@ cache:
36
32
- ~/php-ext
37
33
38
34
before_install :
39
- - |
40
- # Enable extra ppa
41
- sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6B05F25D762E3157
42
- sudo add-apt-repository -y ppa:ondrej/php
43
- sudo rm /etc/apt/sources.list.d/google-chrome.list
44
- sudo rm /etc/apt/sources.list.d/mongodb-3.4.list
45
- sudo apt update
46
- sudo apt install -y librabbitmq-dev libsodium-dev php-uuid zlib1g-dev
47
-
48
35
- |
49
36
# General configuration
50
37
set -e
@@ -91,26 +78,6 @@ before_install:
91
78
}
92
79
export -f tfold
93
80
94
- # tpecl is a helper to compile and cache php extensions
95
- tpecl () {
96
- local ext_name=$1
97
- local ext_so=$2
98
- local INI=$3
99
- local input=${4:-yes}
100
- local ext_dir=$(php -r "echo ini_get('extension_dir');")
101
- local ext_cache=~/php-ext/$(basename $ext_dir)/$ext_name
102
-
103
- if [[ -e $ext_cache/$ext_so ]]; then
104
- echo extension = $ext_cache/$ext_so >> $INI
105
- else
106
- rm ~/.pearrc /tmp/pear 2>/dev/null || true
107
- mkdir -p $ext_cache
108
- echo $input | pecl -q install -f $ext_name &&
109
- cp $ext_dir/$ext_so $ext_cache
110
- fi
111
- }
112
- export -f tpecl
113
-
114
81
- |
115
82
# Install sigchild-enabled PHP to test the Process component on the lowest PHP matrix line
116
83
if [[ ! $deps && $TRAVIS_PHP_VERSION = ${MIN_PHP%.*} && ! -d php-$MIN_PHP/sapi ]]; then
@@ -135,30 +102,6 @@ before_install:
135
102
done
136
103
find ~/.phpenv -name xdebug.ini -delete
137
104
138
- - |
139
- # Install extra PHP extensions
140
- for PHP in $TRAVIS_PHP_VERSION $php_extra; do
141
- export PHP=$PHP
142
- phpenv global $PHP
143
- composer self-update
144
- composer self-update --2
145
- INI=~/.phpenv/versions/$PHP/etc/conf.d/travis.ini
146
- if ! php --ri sodium > /dev/null; then
147
- tfold ext.libsodium tpecl libsodium sodium.so $INI
148
- fi
149
- if [[ $PHP = 8.* ]]; then
150
- tfold ext.memcached tpecl memcached-3.1.5 memcached.so $INI
151
- else
152
- tfold ext.zookeeper tpecl zookeeper-0.7.2 zookeeper.so $INI
153
- tfold ext.amqp tpecl amqp-1.10.2 amqp.so $INI
154
- fi
155
-
156
- tfold ext.mongodb tpecl mongodb-1.9.0 mongodb.so $INI
157
- tfold ext.apcu tpecl apcu-5.1.19 apcu.so $INI
158
- tfold ext.igbinary tpecl igbinary-3.1.6 igbinary.so $INI
159
- tfold ext.redis tpecl redis-5.2.3 redis.so $INI "no"
160
- done
161
-
162
105
install :
163
106
- |
164
107
# Install the phpunit-bridge from a PR if required
@@ -199,16 +142,6 @@ install:
199
142
git diff --staged -- src/Symfony/Bridge/PhpUnit/ | git apply -R --index
200
143
fi
201
144
202
- - |
203
- # For the feature-branch, when deps=high, the version before it is checked out and tested with the locally patched components
204
- if [[ $deps = high && $TRAVIS_BRANCH = *.x ]]; then
205
- export FLIP='^'
206
- export SYMFONY_VERSION=$(echo "$SYMFONY_VERSIONS" | grep -o '/[1-9]\.[0-9].*' | tail -n 1 | sed s/.//) &&
207
- git fetch --depth=2 origin $SYMFONY_VERSION &&
208
- git checkout -m FETCH_HEAD &&
209
- export COMPONENTS=$(find src/Symfony -mindepth 2 -type f -name phpunit.xml.dist -printf '%h\n' | sort)
210
- fi
211
-
212
145
- |
213
146
# Skip the phpunit-bridge on bugfix-branches when $deps is empty
214
147
if [[ ! $deps && ! $TRAVIS_BRANCH = *.x ]]; then
@@ -255,50 +188,14 @@ install:
255
188
fi
256
189
phpenv global $PHP
257
190
rm vendor/composer/package-versions-deprecated -Rf
258
- ([[ $deps ]] && cd src/Symfony/Component/HttpFoundation; cp composer.json composer.bak; composer require --dev --no-update mongodb/mongodb)
259
191
tfold 'composer update' $COMPOSER_UP
260
192
tfold 'phpunit install' ./phpunit install
261
- if [[ $deps = high ]]; then
262
- echo "$COMPONENTS" | parallel --gnu "tfold {} 'cd {} && $COMPOSER_UP && $PHPUNIT_X$LEGACY'" || X=1
263
- (cd src/Symfony/Component/HttpFoundation; mv composer.bak composer.json)
264
- COMPONENTS=$(git diff --name-only src/ | grep composer.json || true)
265
-
266
- if [[ $COMPONENTS && $LEGACY && ! $TRAVIS_BRANCH = *.x && $TRAVIS_PULL_REQUEST != false && $(echo "$SYMFONY_VERSIONS" | cut -f2 | grep -FA1 /$SYMFONY_VERSION | tail -n 1) = *.x ]]; then
267
- export FLIP='^'
268
- SYMFONY_VERSION=$(echo $SYMFONY_VERSION | awk '{print $1 - 1}')
269
- echo -e "\\n\\e[33;1mChecking out Symfony $SYMFONY_VERSION and running tests with patched components as deps\\e[0m"
270
- export COMPOSER_ROOT_VERSION=$SYMFONY_VERSION.x-dev
271
- export SYMFONY_REQUIRE=">=$SYMFONY_VERSION"
272
- git fetch --depth=2 origin $SYMFONY_VERSION
273
- git checkout -m FETCH_HEAD
274
- COMPONENTS=$(echo "$COMPONENTS" | xargs dirname | xargs -n1 -I{} bash -c "[ -e '{}/phpunit.xml.dist' ] && echo '{}'" | sort)
275
- (cd src/Symfony/Component/HttpFoundation; composer require --dev --no-update mongodb/mongodb)
276
- [[ ! $COMPONENTS ]] || tfold 'phpunit install' SYMFONY_PHPUNIT_REMOVE_RETURN_TYPEHINT=1 ./phpunit install
277
- [[ ! $COMPONENTS ]] || echo "$COMPONENTS" | parallel --gnu "tfold {} 'cd {} && rm composer.lock vendor/ -Rf && $COMPOSER_UP && $PHPUNIT_X$LEGACY'" || X=1
278
- fi
279
-
280
- [[ ! $X ]] || (exit 1)
281
- elif [[ $deps = low ]]; then
282
- echo "$COMPONENTS" | parallel --gnu "tfold {} 'cd {} && $COMPOSER_UP --prefer-lowest --prefer-stable && $PHPUNIT_X'"
283
- else
284
- if [[ $PHP = 8.0* ]]; then
285
- # add return types before running the test suite
286
- sed -i 's/"\*\*\/Tests\/"//' composer.json
287
- composer install --optimize-autoloader
288
- SYMFONY_PATCH_TYPE_DECLARATIONS=force=1 php .github/patch-types.php
289
- SYMFONY_PATCH_TYPE_DECLARATIONS=force=1 php .github/patch-types.php # ensure the script is idempotent
290
- PHPUNIT_X="$PHPUNIT_X,legacy"
291
- fi
292
-
293
- echo "$COMPONENTS" | parallel --gnu "tfold {} $PHPUNIT_X {}"
294
193
295
- tfold src/Symfony/Component/Console.tty $PHPUNIT src/Symfony/Component/Console --group tty
296
- tfold src/Symfony/Bridge/Twig.tty $PHPUNIT src/Symfony/Bridge/Twig --group tty
194
+ tfold src/Symfony/Component/HttpKernel $PHPUNIT src/Symfony/Component/HttpKernel
297
195
298
- if [[ $PHP = ${MIN_PHP%.*} ]]; then
299
- export PHP=$MIN_PHP
300
- tfold src/Symfony/Component/Process.sigchild SYMFONY_DEPRECATIONS_HELPER=weak php-$MIN_PHP/sapi/cli/php ./phpunit --colors=always src/Symfony/Component/Process/
301
- fi
196
+ if [[ $PHP = ${MIN_PHP%.*} ]]; then
197
+ export PHP=$MIN_PHP
198
+ tfold src/Symfony/Component/Process.sigchild SYMFONY_DEPRECATIONS_HELPER=weak php-$MIN_PHP/sapi/cli/php ./phpunit --colors=always src/Symfony/Component/Process/
302
199
fi
303
200
}
304
201
export -f run_tests
0 commit comments