Skip to content

Struct type

Struct type #89

Triggered via pull request August 30, 2024 12:44
Status Failure
Total duration 2m 3s
Artifacts 6

checks.yml

on: pull_request
Matrix: phpunit
Backward Compatibility
15s
Backward Compatibility
Matrix: check-dependencies
Matrix: code-style
Matrix: phpstan
Matrix: psalm
Matrix: infection
Fit to window
Zoom out
Zoom in

Annotations

15 errors and 54 warnings
PHPStan - 8.2: tests/unit/Parser/TypeParserTest.php#L215
Call to function assert() with true and 'End column can\'t be…' will always evaluate to true.
PHPStan - 8.2: tests/unit/Parser/TypeParserTest.php#L215
Comparison operation ">" between int<1, max> and 0 is always true.
PHPStan - 8.2
Process completed with exit code 1.
PHPStan - 8.3: tests/unit/Parser/TypeParserTest.php#L215
Call to function assert() with true and 'End column can\'t be…' will always evaluate to true.
PHPStan - 8.3: tests/unit/Parser/TypeParserTest.php#L215
Comparison operation ">" between int<1, max> and 0 is always true.
PHPStan - 8.3
Process completed with exit code 1.
PHPStan - 8.1: tests/unit/Parser/TypeParserTest.php#L215
Call to function assert() with true and 'End column can\'t be…' will always evaluate to true.
PHPStan - 8.1: tests/unit/Parser/TypeParserTest.php#L215
Comparison operation ">" between int<1, max> and 0 is always true.
PHPStan - 8.1
Process completed with exit code 1.
Infection - 8.2
Process completed with exit code 1.
Infection - 8.1
Process completed with exit code 1.
Infection - 8.3 --prefer-lowest
Process completed with exit code 1.
Infection - 8.3
Process completed with exit code 1.
Infection - 8.2 --prefer-lowest
Process completed with exit code 1.
Infection - 8.1 --prefer-lowest
Process completed with exit code 1.
Composer Require Checker - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Composer Require Checker - 8.3
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Composer Require Checker - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Backward Compatibility
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Composer Require Checker - 8.3 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.3
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.3 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.3 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.3 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Composer Require Checker - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHP CS Fixer - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.3
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHP CS Fixer - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.3
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHP CS Fixer - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHP CS Fixer - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Composer Require Checker - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Psalm - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPStan - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
PHPUnit - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.2
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.2: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.2: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.2: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Infection - 8.1
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.1: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.1: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.1: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Infection - 8.3 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.3 --prefer-lowest: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.3 --prefer-lowest: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.3 --prefer-lowest: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Infection - 8.3
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.3: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.3: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.3: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Infection - 8.2 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.2 --prefer-lowest: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.2 --prefer-lowest: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.2 --prefer-lowest: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Infection - 8.1 --prefer-lowest
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v3, actions/download-artifact@v3, actions/upload-artifact@v3. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
Infection - 8.1 --prefer-lowest: src/Eq.php#L33
Escaped Mutant for Mutator "Foreach_": --- Original +++ New @@ @@ return false; } /** @var mixed $value */ - foreach ($leftVars as $key => $value) { + foreach (array() as $key => $value) { if (!array_key_exists($key, $rightVars)) { return false; }
Infection - 8.1 --prefer-lowest: src/Eq.php#L46
Escaped Mutant for Mutator "LogicalAnd": --- Original +++ New @@ @@ } private static function compareValues(mixed $left, mixed $right) : bool { - if (is_object($left) && is_object($right)) { + if (is_object($left) || is_object($right)) { return self::compareStructs($left, $right); } return $left === $right;
Infection - 8.1 --prefer-lowest: src/Scope.php#L227
Escaped Mutant for Mutator "UnwrapArrayMap": --- Original +++ New @@ @@ { return match (true) { $var === null || is_string($var) || is_int($var) || is_bool($var) => $var, - is_object($var) => array_map(self::printValue(...), get_object_vars($var)), + is_object($var) => get_object_vars($var), default => get_debug_type($var), }; }
Deprecation notice: v1, v2, and v3 of the artifact actions
The following artifacts were uploaded using a version of actions/upload-artifact that is scheduled for deprecation: "coverage-8.1", "coverage-8.2", "coverage-8.3", "infection-log-8.1.txt", "infection-log-8.2.txt", "infection-log-8.3.txt". Please update your workflow to use v4 of the artifact actions. Learn more: https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/

Artifacts

Produced during runtime
Name Size
coverage-8.1
9.3 MB
coverage-8.2
10 MB
coverage-8.3
10 MB
infection-log-8.1.txt
2.76 KB
infection-log-8.2.txt
2.76 KB
infection-log-8.3.txt
2.76 KB