-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add CI for PHP 8.3 and 8.4 #499
Add CI for PHP 8.3 and 8.4 #499
Conversation
@alexander-schranz sorry, I just managed to trigger CI here, and it's currently red |
@Ocramius No problem, looks like it used the lock files I did a composer update now to update the dependencies. Not sure about the
Or do you ever stumbled over this error? |
Haven't been doing PHP for almost a year, so nope, didn't meet this error (yet) :D |
…ent of not required to called parent construct
/** | ||
* @psalm-suppress ParamNameMismatch | ||
*/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd rename the parameters, fwiw
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The MutantExecutionResultFactory
has a completly different constructor https://github.com/infection/infection/blob/cac7d20e5d286a37488527e477f5a695a9d7a44c/src/Mutant/MutantExecutionResultFactory.php#L53
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TIL: weird that it is flagged by SA, since constructors don't adhere to variance checks
- name: "Remove not required dev tools" | ||
run: "composer remove vimeo/psalm --no-update --no-interaction --no-progress" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vimeo/psalm
is not a dev tool: it's a direct non-dev dependency
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is psalm
distributed as a PHAR file?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's a runtime dependency, not a binary to include: it can't even be fully scoped, because we rely on symbols from its codebase.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Then I think it is blocked until there is a stable release of psalm supporting 8.4:
3cbb2d7
to
76162c5
Compare
Psalm v6 was released: https://github.com/vimeo/psalm/releases/tag/6.0.0 |
/** | ||
* @psalm-suppress ParamNameMismatch | ||
*/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
TIL: weird that it is flagged by SA, since constructors don't adhere to variance checks
Seems like infection itself also needs an upgrade |
To do this, we introduced `azjezz/psl` in the test suite, since life is too short to follow PHP-SRC's function falsyess bullshit. Also, various suppressions are now gone, since Psalm and Infection removed various deprecations and mutable expressions. The `psalm/plugin-phpunit` was also installed, so Psalm does no longer mark test classes as unused code.
…does that when `$codebase` files are invalidated
…pdbg` Fixes: ``` Error: ] Project tests must be in a passing state before running Infection. Infection runs the test suite in a RANDOM order. Make sure your tests do not have hidden dependencies. You can add these attributes to `phpunit.xml` to check it: <phpunit executionOrder="random" resolveDependencies="true" ... If you don't want to let Infection run tests in a random order, set the `executionOrder` to some value, for example <phpunit executionOrder="default" Check the executed command to identify the problem: '/usr/bin/phpdbg8.2' '-qrr' '/github/workspace/vendor/bin/phpunit' '--configuration' '/tmp/infection/phpunitConfiguration.initial.infection.xml' '--coverage-xml=/tmp/infection/coverage-xml' '--log-junit=/tmp/infection/junit.xml' PHPUnit reported an exit code of 1. Refer to the PHPUnit's output below: STDOUT: PHPUnit 10.5.41 by Sebastian Bergmann and contributors. Runtime: PHP 8.2.24 Configuration: /tmp/infection/phpunitConfiguration.initial.infection.xml Random Seed: 1737943321 There was 1 PHPUnit test runner warning: 1) No code coverage driver available No tests executed! ```
Shipping this after few adjustments then: thanks for the help, @alexander-schranz! |
@Ocramius thank you! |
Replaces: #497
Blocked by: