From 5412e61abd9cf7a732e7ef1dc52897a5fd2bd3fa Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Fri, 24 Oct 2025 18:23:28 +0200 Subject: [PATCH 1/2] [TMP] Required dev branch of ibexa/code-style#18 --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index d4ac854152..3eb44875ea 100644 --- a/composer.json +++ b/composer.json @@ -64,7 +64,7 @@ "require-dev": { "behat/behat": "^3.6.1", "friends-of-behat/mink-extension": "^2.4", - "ibexa/code-style": "^2.2.x-dev", + "ibexa/code-style": "dev-bump-php-cs-fixer-to-v3.89.0 as 2.2.x-dev", "ibexa/rector": "~5.0.x-dev", "jenner/simple_fork": "^1.2", "matthiasnoback/symfony-dependency-injection-test": "^5.0", From 6a4ce559e83c57fc04349d0316c048d2ac27fc72 Mon Sep 17 00:00:00 2001 From: Andrew Longosz Date: Fri, 24 Oct 2025 18:31:47 +0200 Subject: [PATCH 2/2] [CS] Aligned codebase with ibexa/code-style#18 changes --- .../Repository/PermissionResolver.php | 6 ++- .../Component/Serializer/MapNormalizer.php | 2 +- .../Serializer/SiteAccessNormalizer.php | 5 ++- .../Repository/Validator/VersionValidator.php | 2 +- .../LocationArgumentResolverTest.php | 4 +- .../Image/ImageStorage/ImageStorageTest.php | 4 +- .../FieldType/ImageIntegrationTest.php | 6 +-- .../Repository/SearchServiceBookmarkTest.php | 2 +- .../SearchServiceContentNameTest.php | 2 +- .../Repository/SearchServiceImageTest.php | 37 ++++++++++--------- .../Limitation/ChangeOwnerLimitationTest.php | 4 +- tests/lib/FieldType/BaseFieldTypeTestCase.php | 6 +-- tests/lib/FieldType/CheckboxTest.php | 3 +- tests/lib/FieldType/FieldTypeMockTest.php | 2 +- tests/lib/FieldType/ImageAssetTest.php | 2 +- tests/lib/FieldType/KeywordTest.php | 2 +- .../Routing/RequestContextFactoryTest.php | 6 +-- .../NameSchema/NameSchemaServiceTest.php | 4 +- 18 files changed, 52 insertions(+), 47 deletions(-) diff --git a/src/contracts/Repository/PermissionResolver.php b/src/contracts/Repository/PermissionResolver.php index b8eb53b185..416168bfe0 100644 --- a/src/contracts/Repository/PermissionResolver.php +++ b/src/contracts/Repository/PermissionResolver.php @@ -10,7 +10,9 @@ use Ibexa\Contracts\Core\Repository\Exceptions\BadStateException; use Ibexa\Contracts\Core\Repository\Exceptions\InvalidArgumentException; +use Ibexa\Contracts\Core\Repository\Values\User\Limitation; use Ibexa\Contracts\Core\Repository\Values\User\LookupLimitationResult; +use Ibexa\Contracts\Core\Repository\Values\User\Policy; use Ibexa\Contracts\Core\Repository\Values\User\UserReference; /** @@ -48,8 +50,8 @@ public function setCurrentUserReference(UserReference $userReference): void; * * @phpstan-return bool|array< * array{ - * limitation: \Ibexa\Contracts\Core\Repository\Values\User\Limitation|null, - * policies: array<\Ibexa\Contracts\Core\Repository\Values\User\Policy> + * limitation: Limitation|null, + * policies: array * }, * > */ diff --git a/src/lib/MVC/Symfony/Component/Serializer/MapNormalizer.php b/src/lib/MVC/Symfony/Component/Serializer/MapNormalizer.php index 6c73abaa78..bc640f19bf 100644 --- a/src/lib/MVC/Symfony/Component/Serializer/MapNormalizer.php +++ b/src/lib/MVC/Symfony/Component/Serializer/MapNormalizer.php @@ -22,7 +22,7 @@ final class MapNormalizer implements NormalizerInterface, DenormalizerInterface * @param Map $data * * @return array{ - * type: class-string<\Ibexa\Core\MVC\Symfony\SiteAccess\Matcher\Map>, + * type: class-string, * key: string|null, * map: array{}, * reverseMap: array{} diff --git a/src/lib/MVC/Symfony/Component/Serializer/SiteAccessNormalizer.php b/src/lib/MVC/Symfony/Component/Serializer/SiteAccessNormalizer.php index 9c8b97b4e0..f21747fe02 100644 --- a/src/lib/MVC/Symfony/Component/Serializer/SiteAccessNormalizer.php +++ b/src/lib/MVC/Symfony/Component/Serializer/SiteAccessNormalizer.php @@ -9,6 +9,7 @@ namespace Ibexa\Core\MVC\Symfony\Component\Serializer; use Ibexa\Core\MVC\Symfony\SiteAccess; +use Ibexa\Core\MVC\Symfony\SiteAccess\Matcher; use Ibexa\Core\MVC\Symfony\SiteAccessGroup; use Symfony\Component\Serializer\Normalizer\DenormalizerAwareInterface; use Symfony\Component\Serializer\Normalizer\DenormalizerAwareTrait; @@ -77,9 +78,9 @@ public function supportsNormalization( * @return array{ * name: string, * matchingType: string, - * matcher: array{type: class-string<\Ibexa\Core\MVC\Symfony\SiteAccess\Matcher>, data: string|null}|null, + * matcher: array{type: class-string, data: string|null}|null, * provider: string|null, - * groups: array<\Ibexa\Core\MVC\Symfony\SiteAccessGroup> + * groups: array * } */ public function normalize( diff --git a/src/lib/Repository/Validator/VersionValidator.php b/src/lib/Repository/Validator/VersionValidator.php index f398aa6b21..90873749b7 100644 --- a/src/lib/Repository/Validator/VersionValidator.php +++ b/src/lib/Repository/Validator/VersionValidator.php @@ -37,7 +37,7 @@ public function supports(ValueObject $object): bool /** * @phpstan-param array{ - * content?: \Ibexa\Contracts\Core\Repository\Values\Content\Content, + * content?: Content, * translations?: string[], * } $context */ diff --git a/tests/bundle/Core/ControllerArgumentResolver/LocationArgumentResolverTest.php b/tests/bundle/Core/ControllerArgumentResolver/LocationArgumentResolverTest.php index d6ce209d2d..30d7c0407f 100644 --- a/tests/bundle/Core/ControllerArgumentResolver/LocationArgumentResolverTest.php +++ b/tests/bundle/Core/ControllerArgumentResolver/LocationArgumentResolverTest.php @@ -87,8 +87,8 @@ public function testResolve(): void /** * @return iterable */ public function dataProviderForTestResolverForUnsupportedRequest(): iterable diff --git a/tests/integration/Core/Image/ImageStorage/ImageStorageTest.php b/tests/integration/Core/Image/ImageStorage/ImageStorageTest.php index e1042cd932..a4b8699b37 100644 --- a/tests/integration/Core/Image/ImageStorage/ImageStorageTest.php +++ b/tests/integration/Core/Image/ImageStorage/ImageStorageTest.php @@ -204,8 +204,8 @@ private function runCommonStoreFieldDataMocks(Field $field): BinaryFile /** * @return iterable */ public function providerOfFieldData(): iterable diff --git a/tests/integration/Core/Repository/FieldType/ImageIntegrationTest.php b/tests/integration/Core/Repository/FieldType/ImageIntegrationTest.php index 88069718af..4a9125df22 100644 --- a/tests/integration/Core/Repository/FieldType/ImageIntegrationTest.php +++ b/tests/integration/Core/Repository/FieldType/ImageIntegrationTest.php @@ -197,7 +197,7 @@ public function getValidValidatorConfiguration(): array * * @return array{ * StringLengthValidator: array{ - * minStringLength: \stdClass, + * minStringLength: stdClass, * }, * } */ @@ -487,7 +487,7 @@ public function testInherentCopyForNewLanguage(): void /** * @return array */ public function providerForTestIsEmptyValue(): array @@ -499,7 +499,7 @@ public function providerForTestIsEmptyValue(): array /** * @return array */ public function providerForTestIsNotEmptyValue(): array diff --git a/tests/integration/Core/Repository/SearchServiceBookmarkTest.php b/tests/integration/Core/Repository/SearchServiceBookmarkTest.php index 3314057b8f..042b700225 100644 --- a/tests/integration/Core/Repository/SearchServiceBookmarkTest.php +++ b/tests/integration/Core/Repository/SearchServiceBookmarkTest.php @@ -74,7 +74,7 @@ public function testCriterion( /** * @return iterable + * array * }> */ public function provideDataForTestCriterion(): iterable diff --git a/tests/integration/Core/Repository/SearchServiceContentNameTest.php b/tests/integration/Core/Repository/SearchServiceContentNameTest.php index 58aa81b566..1a2793ef04 100644 --- a/tests/integration/Core/Repository/SearchServiceContentNameTest.php +++ b/tests/integration/Core/Repository/SearchServiceContentNameTest.php @@ -128,7 +128,7 @@ static function (SearchHit $searchHit) use ($languageCode): ?string { /** * @return iterable, * int, diff --git a/tests/integration/Core/Repository/SearchServiceImageTest.php b/tests/integration/Core/Repository/SearchServiceImageTest.php index d1a5ad6337..6c65ad09cd 100644 --- a/tests/integration/Core/Repository/SearchServiceImageTest.php +++ b/tests/integration/Core/Repository/SearchServiceImageTest.php @@ -12,6 +12,7 @@ use Ibexa\Contracts\Core\Repository\Exceptions\InvalidArgumentException; use Ibexa\Contracts\Core\Repository\Exceptions\UnauthorizedException; use Ibexa\Contracts\Core\Repository\Values\Content\Query; +use Ibexa\Contracts\Core\Repository\Values\Content\Query\Criterion; use Ibexa\Contracts\Core\Repository\Values\ContentType\ContentType; use Ibexa\Contracts\Core\Repository\Values\ContentType\ContentTypeDraft; use Ibexa\Contracts\Core\Repository\Values\ContentType\FieldDefinition; @@ -47,16 +48,16 @@ protected function setUp(): void */ public function testCriterion( int $expectedCount, - Query\Criterion $imageCriterion + Criterion $imageCriterion ): void { if (getenv('SEARCH_ENGINE') === 'legacy') { self::markTestSkipped('Image criteria are not supported in Legacy Search Engine'); } $query = new Query(); - $query->filter = new Query\Criterion\LogicalAnd( + $query->filter = new Criterion\LogicalAnd( [ - new Query\Criterion\ContentTypeIdentifier(self::IMAGE_CONTENT_TYPE), + new Criterion\ContentTypeIdentifier(self::IMAGE_CONTENT_TYPE), $imageCriterion, ] ); @@ -72,7 +73,7 @@ public function testCriterion( /** * @return iterable */ public function provideDataForTestCriterion(): iterable @@ -175,7 +176,7 @@ public function provideDataForTestCriterion(): iterable yield 'Image' => [ 2, - new Query\Criterion\Image( + new Criterion\Image( self::IMAGE_FIELD_DEF_IDENTIFIER, [ 'mimeTypes' => [ @@ -206,7 +207,7 @@ public function provideDataForTestCriterion(): iterable /** * @return iterable */ public function provideInvalidDataForTestCriterion(): iterable @@ -258,9 +259,9 @@ public function provideInvalidDataForTestCriterion(): iterable /** * @param string|array $value */ - private function createMimeTypeCriterion($value): Query\Criterion\Image\MimeType + private function createMimeTypeCriterion($value): Criterion\Image\MimeType { - return new Query\Criterion\Image\MimeType( + return new Criterion\Image\MimeType( self::IMAGE_FIELD_DEF_IDENTIFIER, $value ); @@ -273,8 +274,8 @@ private function createMimeTypeCriterion($value): Query\Criterion\Image\MimeType private function createFileSizeCriterion( $min = 0, $max = null - ): Query\Criterion\Image\FileSize { - return new Query\Criterion\Image\FileSize( + ): Criterion\Image\FileSize { + return new Criterion\Image\FileSize( self::IMAGE_FIELD_DEF_IDENTIFIER, $min, $max @@ -284,8 +285,8 @@ private function createFileSizeCriterion( private function createWidthCriterion( int $min = 0, ?int $max = null - ): Query\Criterion\Image\Width { - return new Query\Criterion\Image\Width( + ): Criterion\Image\Width { + return new Criterion\Image\Width( self::IMAGE_FIELD_DEF_IDENTIFIER, $min, $max @@ -295,8 +296,8 @@ private function createWidthCriterion( private function createHeightCriterion( int $min = 0, ?int $max = null - ): Query\Criterion\Image\Height { - return new Query\Criterion\Image\Height( + ): Criterion\Image\Height { + return new Criterion\Image\Height( self::IMAGE_FIELD_DEF_IDENTIFIER, $min, $max @@ -308,8 +309,8 @@ private function createDimensionsCriterion( int $maxWidth, int $minHeight, int $maxHeight - ): Query\Criterion\Image\Dimensions { - return new Query\Criterion\Image\Dimensions( + ): Criterion\Image\Dimensions { + return new Criterion\Image\Dimensions( self::IMAGE_FIELD_DEF_IDENTIFIER, [ 'width' => [ @@ -327,9 +328,9 @@ private function createDimensionsCriterion( /** * @param string|array $value */ - private function createOrientationCriterion($value): Query\Criterion\Image\Orientation + private function createOrientationCriterion($value): Criterion\Image\Orientation { - return new Query\Criterion\Image\Orientation( + return new Criterion\Image\Orientation( self::IMAGE_FIELD_DEF_IDENTIFIER, $value ); diff --git a/tests/integration/Core/Repository/Values/User/Limitation/ChangeOwnerLimitationTest.php b/tests/integration/Core/Repository/Values/User/Limitation/ChangeOwnerLimitationTest.php index b3e69b9399..69d7ba4cc9 100644 --- a/tests/integration/Core/Repository/Values/User/Limitation/ChangeOwnerLimitationTest.php +++ b/tests/integration/Core/Repository/Values/User/Limitation/ChangeOwnerLimitationTest.php @@ -45,7 +45,7 @@ protected function setUp(): void /** * @return array @@ -66,7 +66,7 @@ public function getDataForGrantedAccess(): array /** * @return array diff --git a/tests/lib/FieldType/BaseFieldTypeTestCase.php b/tests/lib/FieldType/BaseFieldTypeTestCase.php index a44fc82dd1..71a4692f9d 100644 --- a/tests/lib/FieldType/BaseFieldTypeTestCase.php +++ b/tests/lib/FieldType/BaseFieldTypeTestCase.php @@ -185,7 +185,7 @@ abstract public function provideInputForFromHash(): iterable; * Provides data for the getName() test. * * @phpstan-return array, * 3?: string @@ -453,8 +453,8 @@ public function provideValidDataForValidate(): iterable * * @phpstan-return iterable, - * \Ibexa\Contracts\Core\FieldType\Value, - * array<\Ibexa\Contracts\Core\FieldType\ValidationError> + * FieldTypeValue, + * array * }> */ public function provideInvalidDataForValidate(): iterable diff --git a/tests/lib/FieldType/CheckboxTest.php b/tests/lib/FieldType/CheckboxTest.php index 5f44f17f03..106f10f426 100644 --- a/tests/lib/FieldType/CheckboxTest.php +++ b/tests/lib/FieldType/CheckboxTest.php @@ -9,6 +9,7 @@ use Ibexa\Core\Base\Exceptions\InvalidArgumentException; use Ibexa\Core\FieldType\Checkbox\Type as Checkbox; +use Ibexa\Core\FieldType\Checkbox\Value; use Ibexa\Core\FieldType\Checkbox\Value as CheckboxValue; /** @@ -151,7 +152,7 @@ public function testValueIsNeverEmpty(CheckboxValue $value): void /** * @return iterable */ public function provideForValueIsNeverEmpty(): iterable diff --git a/tests/lib/FieldType/FieldTypeMockTest.php b/tests/lib/FieldType/FieldTypeMockTest.php index 7da9a8209c..14d996a5fa 100644 --- a/tests/lib/FieldType/FieldTypeMockTest.php +++ b/tests/lib/FieldType/FieldTypeMockTest.php @@ -256,7 +256,7 @@ public function testApplyDefaultValidatorConfiguration( /** * @return iterable, + * array|null, * array * }> */ diff --git a/tests/lib/FieldType/ImageAssetTest.php b/tests/lib/FieldType/ImageAssetTest.php index 8aeef65897..7c3e8a2c1c 100644 --- a/tests/lib/FieldType/ImageAssetTest.php +++ b/tests/lib/FieldType/ImageAssetTest.php @@ -308,7 +308,7 @@ public function testValidateValidNonEmptyAssetValue( /** * @return iterable, + * array, * }> */ public function provideDataForTestValidateValidNonEmptyAssetValue(): iterable diff --git a/tests/lib/FieldType/KeywordTest.php b/tests/lib/FieldType/KeywordTest.php index 9114503389..83cbdcd98e 100644 --- a/tests/lib/FieldType/KeywordTest.php +++ b/tests/lib/FieldType/KeywordTest.php @@ -145,7 +145,7 @@ public function provideValidDataForValidate(): iterable /** * @return iterable, - * 1: \Ibexa\Core\FieldType\Keyword\Value, + * 1: KeywordValue, * 2: array<\Ibexa\Contracts\Core\FieldType\ValidationError> * }> */ diff --git a/tests/lib/MVC/Symfony/Routing/RequestContextFactoryTest.php b/tests/lib/MVC/Symfony/Routing/RequestContextFactoryTest.php index 85afc6c314..4e9972f685 100644 --- a/tests/lib/MVC/Symfony/Routing/RequestContextFactoryTest.php +++ b/tests/lib/MVC/Symfony/Routing/RequestContextFactoryTest.php @@ -39,9 +39,9 @@ public function testGetContextBySimplifiedRequest( * @return iterable< * string, * array{ - * \Symfony\Component\Routing\RequestContext, - * \Ibexa\Core\MVC\Symfony\Routing\SimplifiedRequest, - * \Symfony\Component\Routing\RequestContext + * RequestContext, + * SimplifiedRequest, + * RequestContext * }> */ public static function getDataForTestGetContextBySimplifiedRequest(): iterable diff --git a/tests/lib/Repository/NameSchema/NameSchemaServiceTest.php b/tests/lib/Repository/NameSchema/NameSchemaServiceTest.php index ec5ffe0f8b..4829c84e3d 100644 --- a/tests/lib/Repository/NameSchema/NameSchemaServiceTest.php +++ b/tests/lib/Repository/NameSchema/NameSchemaServiceTest.php @@ -66,7 +66,7 @@ public function testResolveUrlAliasSchemaFallbackToNameSchema(): void /** * @return iterable>, + * 0: array>, * 1: array>, * 2: array, * 3: array @@ -149,7 +149,7 @@ public function testResolveNameSchema( * @return array>, * 1: string, - * 2: array>, + * 2: array>, * 3: array, * 4: array>, * 5?: array{limit?: int, sequence?: string}