Skip to content

Fix PHPStan reports #380

Fix PHPStan reports

Fix PHPStan reports #380

Triggered via push September 29, 2026 13:33
Status Success
Total duration 3m 37s
Artifacts 1

ci.yaml

on: push
Matrix: Tests
Matrix: Coding standard
Matrix: Static analysis
Matrix: Test for mutants
Matrix: Code coverage finish
Status check - CI
2s
Status check - CI
Fit to window
Zoom out
Zoom in

Annotations

22 warnings and 13 notices
Coding standard (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Static analysis (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 8.4, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 7.4, --prefer-lowest --prefer-stable, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 8.3, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 7.4, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 8.0, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test for mutants (ubuntu-latest, 8.4)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteDI/LocalizationExtension.php#L188
Escaped Mutant for Mutator "FalseValue": @@ @@ $resolverDefinition = $loader->loadDefinitionFromConfig($resolverConfig, $this->prefix('resolver.' . $resolverKey)); $resolverDefinitionNames[] = $resolverDefinition instanceof Reference ? $resolverDefinition->getValue() : $resolverDefinition->getName(); } - $resolverManagerDefinition = $builder->addDefinition($this->prefix('resolvers.manager'))->setFactory(LazyLocaleResolverManager::class, [$resolverDefinitionNames])->setType(LocaleResolverManager::class)->setAutowired(false); + $resolverManagerDefinition = $builder->addDefinition($this->prefix('resolvers.manager'))->setFactory(LazyLocaleResolverManager::class, [$resolverDefinitionNames])->setType(LocaleResolverManager::class)->setAutowired(true); return $builder->addDefinition($this->prefix('resolvers'))->setFactory(MultiLocaleResolver::class, [$resolverManagerDefinition])->setType(LocaleResolver::class)->setAutowired(false); } private function registerLoader(ContainerBuilder $builder, stdClass $config, DefinitionsLoader $loader): ServiceDefinition
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteDI/LocalizationExtension.php#L152
Escaped Mutant for Mutator "NotIdentical": @@ @@ $configuratorDefinition = $loader->loadDefinitionFromConfig($configuratorConfig, $this->prefix('configurator.' . $configuratorKey)); $configuratorDefinitions[] = $configuratorDefinition; } - if ($configuratorDefinitions !== []) { + if ($configuratorDefinitions === []) { $builder->addDefinition($this->prefix('configurators'))->setFactory(MultiLocaleConfigurator::class, [$configuratorDefinitions])->setType(LocaleConfigurator::class); } }
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteDI/LocalizationExtension.php#L143
Escaped Mutant for Mutator "Foreach_": @@ @@ private function registerConfigurators(ContainerBuilder $builder, stdClass $config, DefinitionsLoader $loader): void { $configuratorDefinitions = []; - foreach ($config->configurators as $configuratorKey => $configuratorConfig) { + foreach ([] as $configuratorKey => $configuratorConfig) { $configuratorDefinition = $loader->loadDefinitionFromConfig($configuratorConfig, $this->prefix('configurator.' . $configuratorKey)); $configuratorDefinitions[] = $configuratorDefinition; }
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteDI/LocalizationExtension.php#L95
Escaped Mutant for Mutator "MethodCallRemoval": @@ @@ $builder = $this->getContainerBuilder(); $config = $this->config; $loader = new DefinitionsLoader($this->compiler); - $this->registerConfigurators($builder, $config, $loader); + $localesDefinition = $this->registerLocales($builder, $config); $localeProcessorDefinition = $this->registerLocaleProcessor($builder); $translatorDefinition = $this->registerTranslator($builder, $localesDefinition, $this->registerResolver($builder, $config, $loader), $this->registerCatalogue($builder, $config, $this->registerLoader($builder, $config, $loader)), $this->registerMessageFormatter($builder), $this->registerTranslationLogger($builder), $localeProcessorDefinition);
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteDI/LazyLoaderManager.php#L25
Escaped Mutant for Mutator "Foreach_": @@ @@ return $this->loaders; } $loaders = []; - foreach ($this->getKeys() as $key) { + foreach ([] as $key) { $loaders[$key] = $this->getTypedServiceOrThrow($key, Loader::class); } return $this->loaders = $loaders; } }
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteCaching/CachedCatalogue.php#L57
Escaped Mutant for Mutator "LogicalAndNegation": @@ @@ $this->arrayCache[$languageTag] = $messages; } $translation = $messages[$message] ?? null; - if ($translation === null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader)) { + if (!($translation === null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader))) { $this->loadedFromLoader[$languageTag] = null; $messages = $this->loader->loadAllMessages($languageTag); $this->arrayCache[$languageTag] = $messages;
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteCaching/CachedCatalogue.php#L57
Escaped Mutant for Mutator "LogicalAnd": @@ @@ $this->arrayCache[$languageTag] = $messages; } $translation = $messages[$message] ?? null; - if ($translation === null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader)) { + if ($translation === null && $this->debugMode || !array_key_exists($languageTag, $this->loadedFromLoader)) { $this->loadedFromLoader[$languageTag] = null; $messages = $this->loader->loadAllMessages($languageTag); $this->arrayCache[$languageTag] = $messages;
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteCaching/CachedCatalogue.php#L57
Escaped Mutant for Mutator "LogicalNot": @@ @@ $this->arrayCache[$languageTag] = $messages; } $translation = $messages[$message] ?? null; - if ($translation === null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader)) { + if ($translation === null && $this->debugMode && array_key_exists($languageTag, $this->loadedFromLoader)) { $this->loadedFromLoader[$languageTag] = null; $messages = $this->loader->loadAllMessages($languageTag); $this->arrayCache[$languageTag] = $messages;
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteCaching/CachedCatalogue.php#L57
Escaped Mutant for Mutator "Identical": @@ @@ $this->arrayCache[$languageTag] = $messages; } $translation = $messages[$message] ?? null; - if ($translation === null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader)) { + if ($translation !== null && $this->debugMode && !array_key_exists($languageTag, $this->loadedFromLoader)) { $this->loadedFromLoader[$languageTag] = null; $messages = $this->loader->loadAllMessages($languageTag); $this->arrayCache[$languageTag] = $messages;
Test for mutants (ubuntu-latest, 8.4): src/Bridge/NetteCaching/CachedCatalogue.php#L41
Escaped Mutant for Mutator "Identical": @@ @@ public function getMessage(string $message, string $languageTag): ?string { $messages = $this->arrayCache[$languageTag] ?? null; - if ($messages === null) { + if ($messages !== null) { $messages = $this->cache->load($languageTag, function () use ($languageTag): array { $this->loadedFromLoader[$languageTag] = null; return $this->loader->loadAllMessages($languageTag);
Tests (ubuntu-latest, 8.2, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (windows-latest, 8.4, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (ubuntu-latest, 8.1, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Tests (macos-latest, 8.4, false)
Node.js 20 is deprecated. The following actions target Node.js 20 but are being forced to run on Node.js 24: actions/cache@v4, actions/checkout@v4, actions/github-script@v7, actions/upload-artifact@v4. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Coding standard (ubuntu-latest, 8.4)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Static analysis (ubuntu-latest, 8.4)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 8.4, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 7.4, --prefer-lowest --prefer-stable, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 8.3, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 7.4, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 8.0, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Test for mutants (ubuntu-latest, 8.4)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 8.2, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (ubuntu-latest, 8.1, false)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Tests (macos-latest, 8.4, false)
Due to capacity constraints, jobs targeting macOS arm64 runners may experience longer queue times.
Status check - CI
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"
Code coverage finish (ubuntu-latest, 8.4)
"The ubuntu-latest label will migrate to Ubuntu 26 beginning October 19, 2026. For more information, see https://github.com/actions/runner-images/issues/14748"

Artifacts

Produced during runtime
Name Size Digest
Logs - Mutations
12.1 KB
sha256:9e76598b06408cd4beee386c1d8d4afdf8d43f7e934430c9b296410643afeda9