Skip to content

Update CLAUDE.md: AP4 4.x/Symfony 8.x compatibility notes and PHP att… #1495

Update CLAUDE.md: AP4 4.x/Symfony 8.x compatibility notes and PHP att…

Update CLAUDE.md: AP4 4.x/Symfony 8.x compatibility notes and PHP att… #1495

Triggered via push June 16, 2026 12:11
Status Success
Total duration 5m 2s
Artifacts 9

ci.yml

on: push
Matrix: behat-lowest-deps
Matrix: behat-symfony-next
Matrix: behat
Matrix: php-cs-fixer
Matrix: phpunit-lowest-deps
Matrix: phpunit-symfony-next
Matrix: phpunit
Fit to window
Zoom out
Zoom in

Annotations

3 errors and 19 warnings
PHPUnit (Symfony NEXT 8.2) (PHP 8.5)
Process completed with exit code 1.
Behat (Symfony NEXT 8.2) (PHP 8.5)
Process completed with exit code 1.
Behat (Symfony 7.4) (PHP 8.5)
Process completed with exit code 255.
PHP-CS-Fixer (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony ^7.4) (PHP 8.5) (lowest dependencies)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 8.1) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony NEXT 8.2) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 7.4) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4, codecov/codecov-action@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
PHPUnit (Symfony 7.4) (PHP 8.5): src/Entity/User/AbstractUser.php#L187
Escaped Mutant for Mutator "UnwrapArrayValues": @@ @@ } public function setRoles(array $roles): self { - $this->roles = array_values($roles); + $this->roles = $roles; return $this; } public function isEnabled(): bool
PHPUnit (Symfony 7.4) (PHP 8.5): src/Entity/Core/AbstractComponent.php#L50
Escaped Mutant for Mutator "MethodCallRemoval": @@ @@ public function __construct() { $this->componentGroups = new ArrayCollection(); - $this->initComponentGroups(); + $this->componentPositions = new ArrayCollection(); } public function isPositionRestricted(): bool
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L77
Escaped Mutant for Mutator "SpreadAssignment": @@ @@ * @var Operation $oldOperation */ foreach ($oldOperations as $key => $oldOperation) { - $subRoutePrefixParts = [...$routePrefixParts]; + $subRoutePrefixParts = $routePrefixParts; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/'); $subRoutePrefix = '/' . implode('/', $subRoutePrefixParts);
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L77
Escaped Mutant for Mutator "SpreadOneItem": @@ @@ * @var Operation $oldOperation */ foreach ($oldOperations as $key => $oldOperation) { - $subRoutePrefixParts = [...$routePrefixParts]; + $subRoutePrefixParts = [[...$routePrefixParts][0]]; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/'); $subRoutePrefix = '/' . implode('/', $subRoutePrefixParts);
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L76
Escaped Mutant for Mutator "Foreach_": @@ @@ * @var string $key * @var Operation $oldOperation */ - foreach ($oldOperations as $key => $oldOperation) { + foreach ([] as $key => $oldOperation) { $subRoutePrefixParts = [...$routePrefixParts]; if ($currentRoutePrefix = $oldOperation->getRoutePrefix()) { $subRoutePrefixParts[] = trim($currentRoutePrefix, '/');
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L64
Escaped Mutant for Mutator "SpreadAssignment": @@ @@ $resources = []; /** @var ApiResource $resourceMetadatum */ foreach ($resourceMetadata as $i => $resourceMetadatum) { - $finalRoutePrefixParts = [...$routePrefixParts]; + $finalRoutePrefixParts = $routePrefixParts; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/'); }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L64
Escaped Mutant for Mutator "SpreadOneItem": @@ @@ $resources = []; /** @var ApiResource $resourceMetadatum */ foreach ($resourceMetadata as $i => $resourceMetadatum) { - $finalRoutePrefixParts = [...$routePrefixParts]; + $finalRoutePrefixParts = [[...$routePrefixParts][0]]; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/'); }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L63
Escaped Mutant for Mutator "Foreach_": @@ @@ { $resources = []; /** @var ApiResource $resourceMetadatum */ - foreach ($resourceMetadata as $i => $resourceMetadatum) { + foreach ([] as $i => $resourceMetadatum) { $finalRoutePrefixParts = [...$routePrefixParts]; if ($currentRoutePrefix = $resourceMetadatum->getRoutePrefix()) { $finalRoutePrefixParts[] = trim($currentRoutePrefix, '/');
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L47
Escaped Mutant for Mutator "IfNegation": @@ @@ // underscores for core resources $reflection = new \ReflectionClass($resourceClass); $namespace = $reflection->getNamespaceName(); - if (preg_match("/Silverback\\\\ApiComponentsBundle\\\\(?!Test)[\\w]+/", $namespace)) { + if (!preg_match("/Silverback\\\\ApiComponentsBundle\\\\(?!Test)[\\w]+/", $namespace)) { $routePrefixParts[] = '_'; } }
PHPUnit (Symfony 7.4) (PHP 8.5): src/ApiPlatform/Metadata/Resource/RoutingPrefixResourceMetadataCollectionFactory.php#L41
Escaped Mutant for Mutator "ElseIfNegation": @@ @@ $routePrefixParts = []; if (is_subclass_of($resourceClass, AbstractComponent::class)) { $routePrefixParts[] = 'component'; - } elseif (is_subclass_of($resourceClass, AbstractPageData::class)) { + } elseif (!is_subclass_of($resourceClass, AbstractPageData::class)) { $routePrefixParts[] = 'page_data'; } else { // underscores for core resources
Behat (Symfony NEXT 8.2) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony ^7.4) (PHP 8.5) (lowest dependencies)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony 8.1) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Behat (Symfony 7.4) (PHP 8.5)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/cache@v3, actions/checkout@v3, actions/upload-artifact@v4, codecov/codecov-action@v3. Actions will be forced to run with Node.js 24 by default starting June 16th, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
behat-logs-php8.5-lowest-deps
6.93 KB
sha256:c236a7b2cfa03d27d9c34596197070f7b8e9e008734bbb8847577a1bd62a62e8
behat-logs-php8.5-symfony7.4
9.51 KB
sha256:f5c4d2e2cc6e72ef92331dc7d78d79d1a576507a70f85ad8aca0205e8e14c827
behat-logs-php8.5-symfony8.1
9.46 KB
sha256:545b3e1b1dbb6a90dc685303f5a1f95b35b8a999777c3bf349a17debf23050c1
behat-logs-php8.5-symfony8.2
9.53 KB
sha256:beb63ffb09080c8011d5b3a67f044f588c63ce8658e9c25638529452b01ebca9
infection-logs-php8.5
4.8 KB
sha256:1ce1a5dde539281d974cc24ce6d3e4522c377cfbb1dbe977f6c3097323a73412
phpunit-logs-php8.5-lowest-deps
3.7 KB
sha256:06076f8f03230668dbc6f2127250ef7ec099e1fe19fe22eb8050ca5cb9b2cd78
phpunit-logs-php8.5-symfony7.4
663 KB
sha256:da8cecf1f89f9cac33ace8b8c5e915aa040687908de699ded5f520ce62189da9
phpunit-logs-php8.5-symfony8.1
3.71 KB
sha256:104d56598a0c257237f72eeeb55f0ca572f5115a76993619d5cc6d471725c9e7
phpunit-logs-php8.5-symfony8.2
3.71 KB
sha256:80f688199f48e8ce8c4438a955b6fb7036c09f322e04c4ffa2c45e0e945682ec