Skip to content

Commit 4ec5158

Browse files
authored
Merge pull request #4603 from soyuka/merge-26
Merge 2.6 onto main
2 parents cc8ae0b + 6829ac4 commit 4ec5158

File tree

91 files changed

+565
-360
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+565
-360
lines changed

.github/workflows/ci.yml

Lines changed: 37 additions & 63 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
strategy:
1818
matrix:
1919
php:
20-
- '8.0'
20+
- '8.1'
2121
fail-fast: false
2222
steps:
2323
- name: Checkout
@@ -40,7 +40,7 @@ jobs:
4040
strategy:
4141
matrix:
4242
php:
43-
- '8.0'
43+
- '8.1'
4444
fail-fast: false
4545
env:
4646
APP_DEBUG: '1' # https://github.com/phpstan/phpstan-symfony/issues/37
@@ -65,6 +65,8 @@ jobs:
6565
path: ${{ steps.composercache.outputs.dir }}
6666
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
6767
restore-keys: ${{ runner.os }}-composer-
68+
- name: Allow unstable project dependencies
69+
run: composer config minimum-stability dev
6870
- name: Update project dependencies
6971
run: composer update --no-interaction --no-progress --ansi
7072
- name: Require Symfony components
@@ -82,11 +84,14 @@ jobs:
8284
continue-on-error: true
8385
- name: Clear test app cache
8486
run: |
85-
tests/Fixtures/app/console cache:clear --ansi
87+
rm -Rf tests/Fixtures/app/var/cache/*
88+
tests/Fixtures/app/console cache:warmup
8689
- name: Run PHPStan analysis
8790
env:
8891
SYMFONY_PHPUNIT_VERSION: '9.5'
89-
run: ./vendor/bin/phpstan analyse --no-interaction --no-progress --ansi
92+
run:
93+
./vendor/bin/phpstan --version
94+
./vendor/bin/phpstan analyse --no-interaction --no-progress --ansi
9095

9196
phpunit:
9297
name: PHPUnit (PHP ${{ matrix.php }})
@@ -100,8 +105,9 @@ jobs:
100105
- '7.3'
101106
- '7.4'
102107
- '8.0'
108+
- '8.1'
103109
include:
104-
- php: '8.0'
110+
- php: '8.1'
105111
coverage: true
106112
fail-fast: false
107113
steps:
@@ -192,8 +198,9 @@ jobs:
192198
- '7.3'
193199
- '7.4'
194200
- '8.0'
201+
- '8.1'
195202
include:
196-
- php: '8.0'
203+
- php: '8.1'
197204
coverage: true
198205
fail-fast: false
199206
steps:
@@ -207,10 +214,6 @@ jobs:
207214
extensions: intl, bcmath, curl, openssl, mbstring, pdo_sqlite
208215
coverage: pcov
209216
ini-values: memory_limit=-1
210-
- name: Set Composer platform config
211-
if: (startsWith(matrix.php, '8.0'))
212-
run: |
213-
composer config platform.php 7.4.99
214217
- name: Get composer cache directory
215218
id: composercache
216219
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
@@ -242,13 +245,13 @@ jobs:
242245
- name: Install PHPUnit
243246
run: vendor/bin/simple-phpunit --version
244247
- name: Clear test app cache
245-
if: (!startsWith(matrix.php, '8.0'))
248+
if: (!startsWith(matrix.php, '8.'))
246249
run: tests/Fixtures/app/console cache:clear --ansi
247250
- name: Clear test app cache (php 8.0)
248-
if: (startsWith(matrix.php, '8.0'))
251+
if: (startsWith(matrix.php, '8.'))
249252
run: rm -Rf tests/Fixtures/app/var/cache/*
250253
- name: Run Behat tests
251-
if: (!startsWith(matrix.php, '8.0'))
254+
if: (!startsWith(matrix.php, '8.'))
252255
run: |
253256
mkdir -p build/logs/behat
254257
if [ "$COVERAGE" = '1' ]; then
@@ -261,7 +264,7 @@ jobs:
261264
fi
262265
fi
263266
- name: Run Behat tests
264-
if: (startsWith(matrix.php, '8.0'))
267+
if: (startsWith(matrix.php, '8.'))
265268
run: |
266269
mkdir -p build/logs/behat
267270
if [ "$COVERAGE" = '1' ]; then
@@ -355,10 +358,10 @@ jobs:
355358
path: ${{ steps.composercache.outputs.dir }}
356359
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
357360
restore-keys: ${{ runner.os }}-composer-
361+
- name: Require Symfony components
362+
run: composer require symfony/intl symfony/uid --dev --no-interaction --no-progress --ansi --no-update
358363
- name: Update project dependencies
359364
run: composer update --no-interaction --no-progress --ansi --prefer-lowest
360-
- name: Require Symfony components
361-
run: composer require symfony/uid --dev --no-interaction --no-progress --ansi
362365
- name: Clear test app cache
363366
run: tests/Fixtures/app/console cache:clear --ansi
364367
- name: Install PHPUnit
@@ -395,10 +398,10 @@ jobs:
395398
path: ${{ steps.composercache.outputs.dir }}
396399
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
397400
restore-keys: ${{ runner.os }}-composer-
401+
- name: Require Symfony components
402+
run: composer require symfony/intl symfony/uid --dev --no-interaction --no-progress --ansi --no-update
398403
- name: Update project dependencies
399404
run: composer update --no-interaction --no-progress --ansi --prefer-lowest
400-
- name: Require Symfony components
401-
run: composer require symfony/uid --dev --no-interaction --no-progress --ansi
402405
- name: Install PHPUnit
403406
run: vendor/bin/simple-phpunit --version
404407
- name: Clear test app cache
@@ -604,6 +607,7 @@ jobs:
604607
php:
605608
- '7.4'
606609
- '8.0'
610+
- '8.1'
607611
fail-fast: false
608612
env:
609613
APP_ENV: elasticsearch
@@ -693,15 +697,13 @@ jobs:
693697
run: vendor/bin/simple-phpunit
694698

695699
phpunit-symfony-next:
696-
name: PHPUnit (PHP ${{ matrix.php }}) (Symfony ${{ matrix.symfony }})
700+
name: PHPUnit (PHP ${{ matrix.php }}) (Symfony dev)
697701
runs-on: ubuntu-latest
698702
timeout-minutes: 20
699703
strategy:
700704
matrix:
701705
php:
702-
- '8.0'
703-
symfony:
704-
- '5.4'
706+
- '8.1'
705707
fail-fast: false
706708
env:
707709
# See https://github.com/doctrine/DoctrineMongoDBBundle/pull/673
@@ -713,7 +715,7 @@ jobs:
713715
- name: Setup PHP
714716
uses: shivammathur/setup-php@v2
715717
with:
716-
php-version: '8.0'
718+
php-version: '8.1'
717719
tools: pecl, composer
718720
extensions: intl, bcmath, curl, openssl, mbstring
719721
coverage: none
@@ -734,21 +736,7 @@ jobs:
734736
- name: Update project dependencies
735737
run: composer update --no-interaction --no-progress --ansi
736738
- name: Require Symfony components
737-
run: composer require symfony/uid --dev --no-interaction --no-progress --ansi
738-
- name: Flag held back Symfony packages
739-
env:
740-
symfony_version: ${{ matrix.symfony }}
741-
run: |
742-
version_pattern=$symfony_version.x-dev
743-
if [ "${symfony_version%.4}" != "$symfony_version" ]; then
744-
current_major=${symfony_version%.4}
745-
next_major=$((current_major + 1))
746-
version_pattern=$version_pattern'|'$next_major.0.x-dev'|'dev-master
747-
fi
748-
version_pattern=$(echo "$version_pattern" | sed -r 's/\./\\./g')
749-
symfony_packages=$(composer show symfony/* | tr -s ' ' '\t' | cut -f1-2 | grep -vE 'polyfill|contracts|mercure')
750-
! echo "$symfony_packages" | grep -vE "$version_pattern"
751-
continue-on-error: true
739+
run: composer require symfony/intl symfony/uid --dev --no-interaction --no-progress --ansi
752740
- name: Install PHPUnit
753741
run: vendor/bin/simple-phpunit --version
754742
- name: Clear test app cache
@@ -757,23 +745,21 @@ jobs:
757745
run: vendor/bin/simple-phpunit
758746

759747
behat-symfony-next:
760-
name: Behat (PHP ${{ matrix.php }}) (Symfony ${{ matrix.symfony }})
748+
name: Behat (PHP ${{ matrix.php }}) (Symfony dev)
761749
runs-on: ubuntu-latest
762750
timeout-minutes: 20
763751
strategy:
764752
matrix:
765753
php:
766-
- '8.0'
767-
symfony:
768-
- '5.4'
754+
- '8.1'
769755
fail-fast: false
770756
steps:
771757
- name: Checkout
772758
uses: actions/checkout@v2
773759
- name: Setup PHP
774760
uses: shivammathur/setup-php@v2
775761
with:
776-
php-version: '8.0'
762+
php-version: '8.1'
777763
tools: pecl, composer
778764
extensions: intl, bcmath, curl, openssl, mbstring
779765
coverage: none
@@ -796,21 +782,7 @@ jobs:
796782
- name: Update project dependencies
797783
run: composer update --no-interaction --no-progress --ansi
798784
- name: Require Symfony components
799-
run: composer require symfony/uid --dev --no-interaction --no-progress --ansi
800-
- name: Flag held back Symfony packages
801-
env:
802-
symfony_version: ${{ matrix.symfony }}
803-
run: |
804-
version_pattern=$symfony_version.x-dev
805-
if [ "${symfony_version%.4}" != "$symfony_version" ]; then
806-
current_major=${symfony_version%.4}
807-
next_major=$((current_major + 1))
808-
version_pattern=$version_pattern'|'$next_major.0.x-dev'|'dev-master
809-
fi
810-
version_pattern=$(echo "$version_pattern" | sed -r 's/\./\\./g')
811-
symfony_packages=$(composer show symfony/* | tr -s ' ' '\t' | cut -f1-2 | grep -vE 'polyfill|contracts|mercure')
812-
! echo "$symfony_packages" | grep -vE "$version_pattern"
813-
continue-on-error: true
785+
run: composer require symfony/intl symfony/uid --dev --no-interaction --no-progress --ansi
814786
- name: Install PHPUnit
815787
run: vendor/bin/simple-phpunit --version
816788
- name: Clear test app cache
@@ -825,7 +797,7 @@ jobs:
825797
strategy:
826798
matrix:
827799
php:
828-
- '8.0'
800+
- '8.1'
829801
fail-fast: false
830802
steps:
831803
- name: Checkout
@@ -906,7 +878,7 @@ jobs:
906878
strategy:
907879
matrix:
908880
php:
909-
- '8.0'
881+
- '8.1'
910882
fail-fast: false
911883
steps:
912884
- name: Checkout
@@ -965,6 +937,7 @@ jobs:
965937
php:
966938
- '7.4'
967939
- '8.0'
940+
- '8.1'
968941
fail-fast: false
969942
env:
970943
APP_ENV: sqlite
@@ -990,7 +963,7 @@ jobs:
990963
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
991964
restore-keys: ${{ runner.os }}-composer-
992965
- name: Set Composer platform config
993-
if: (startsWith(matrix.php, '8.0'))
966+
if: (startsWith(matrix.php, '8.'))
994967
run: |
995968
composer config platform.php 7.4.99
996969
- name: Update project dependencies
@@ -1013,6 +986,7 @@ jobs:
1013986
php:
1014987
- '7.4'
1015988
- '8.0'
989+
- '8.1'
1016990
fail-fast: false
1017991
env:
1018992
APP_ENV: sqlite
@@ -1038,7 +1012,7 @@ jobs:
10381012
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
10391013
restore-keys: ${{ runner.os }}-composer-
10401014
- name: Set Composer platform config
1041-
if: (startsWith(matrix.php, '8.0'))
1015+
if: (startsWith(matrix.php, '8.'))
10421016
run: |
10431017
composer config platform.php 7.4.99
10441018
- name: Update project dependencies
@@ -1145,7 +1119,7 @@ jobs:
11451119
mkdir -p build/logs/behat
11461120
vendor/bin/behat --out=std --format=progress --format=junit --out=build/logs/behat/junit --profile=default --no-interaction --tags='~@php8'
11471121
- name: Run Behat tests
1148-
if: (startsWith(matrix.php, '8.0'))
1122+
if: (startsWith(matrix.php, '8.'))
11491123
run: |
11501124
mkdir -p build/logs/behat
11511125
vendor/bin/behat --out=std --format=progress --format=junit --out=build/logs/behat/junit --profile=default --no-interaction

CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,12 @@
4545
* Add support for `security_post_validation` attribute
4646
* Mark the GraphQL subsystem as stable (#4500)
4747

48+
## 2.6.7
49+
50+
* feat: compatibility with Symfony 6 (#4503, #4582, #4604, #4564)
51+
* feat: compatibility with PHP 8.1 (#4503, #4582, #4604)
52+
* fix: pass the child context when normalizing nested non-resource objects (#4521)
53+
4854
## 2.6.6
4955

5056
* fix(json-schema): consider `SplFileInfo` class as a binary type (#4332)

0 commit comments

Comments
 (0)