2525 symfony-deprecations-helper :
2626 - " "
2727 include :
28+ # PHP 7.4 test matrix
2829 - php-version : " 7.4"
2930 deps : " normal"
3031
3334
3435 - php-version : " 7.4"
3536 deps : " dev"
37+
38+ # Test Symfony 4 with PHP 7.4
39+ - php-version : " 7.4"
40+ deps : " normal"
41+ symfony-require : " 4.4.*"
3642
43+ # PHP 8.0 test matrix
3744 - php-version : " 8.0"
3845 deps : " normal"
3946
4249
4350 - php-version : " 8.0"
4451 deps : " dev"
52+
53+ # Test Symfony 5 with PHP 8.0
54+ - php-version : " 8.0"
55+ deps : " normal"
56+ symfony-require : " 5.4.*"
4557
58+ # PHP 8.1 test matrix
4659 - php-version : " 8.1"
4760 deps : " normal"
4861
5265 - php-version : " 8.1"
5366 deps : " dev"
5467
68+ # Test Symfony 6 with PHP 8.1
69+ - php-version : " 8.1"
70+ deps : " normal"
71+ symfony-require : " 6.4.*"
72+
73+ # PHP 8.2 test matrix
5574 - php-version : " 8.2"
5675 deps : " normal"
5776
6180 - php-version : " 8.2"
6281 deps : " dev"
6382
83+ # Test Symfony 7 with PHP 8.2
84+ - php-version : " 8.2"
85+ deps : " normal"
86+ symfony-require : " 7.0.*"
87+
88+ # PHP 8.3 test matrix
6489 - php-version : " 8.3"
6590 deps : " normal"
6691
6994
7095 - php-version : " 8.3"
7196 deps : " dev"
97+
98+ # Test latest Symfony with PHP 8.3
99+ - php-version : " 8.3"
100+ deps : " normal"
101+ symfony-require : " 7.*"
72102
73103 steps :
74104 - name : " Checkout"
@@ -80,6 +110,10 @@ jobs:
80110 uses : " shivammathur/setup-php@v2"
81111 with :
82112 php-version : " ${{ matrix.php-version }}"
113+ extensions : " json"
114+ tools : " composer:2"
115+ coverage : " pcov"
116+ ini-values : " memory_limit=-1"
83117
84118 - name : " Cache dependencies installed with composer"
85119 uses : " actions/cache@v3"
@@ -88,6 +122,14 @@ jobs:
88122 key : " php-${{ matrix.php-version }}-composer-locked-${{ hashFiles('composer.lock') }}"
89123 restore-keys : " php-${{ matrix.php-version }}-composer-locked-"
90124
125+ - name : " Require specific Symfony version"
126+ run : " composer global require --no-progress --no-scripts --no-plugins 'symfony/flex:^2.3'"
127+ if : " ${{ matrix.symfony-require != '' }}"
128+
129+ - name : " Set Symfony version constraint"
130+ run : " composer config extra.symfony.require ${{ matrix.symfony-require }}"
131+ if : " ${{ matrix.symfony-require != '' }}"
132+
91133 - name : " Install stable dependencies with composer"
92134 run : " composer update --no-interaction --prefer-dist --prefer-stable"
93135 if : " ${{ matrix.deps == 'normal' }}"
@@ -106,7 +148,7 @@ jobs:
106148 - name : " Upload coverage file"
107149 uses : " actions/upload-artifact@v4"
108150 with :
109- name : " phpunit-${{ matrix.php-version }}-${{ matrix.deps }}-${{ hashFiles('composer.lock') }}.coverage"
151+ name : " phpunit-${{ matrix.php-version }}-${{ matrix.deps }}-${{ matrix.symfony-require }}-${{ hashFiles('composer.lock') }}.coverage"
110152 path : " coverage.xml"
111153
112154 - uses : codecov/codecov-action@v3
0 commit comments