Skip to content
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

PHPStan level 10 part I #443

Merged
merged 24 commits into from
Dec 11, 2024
Merged

PHPStan level 10 part I #443

merged 24 commits into from
Dec 11, 2024

Conversation

spaze
Copy link
Owner

@spaze spaze commented Dec 10, 2024

This prepares the code for PHPStan to pass at the new level 10 introduced in PHPStan 2.0 (#431). The level is not set to 10 yet in this PR (Done in the follow-up PR #446).

Besides some other things, this adds assert() calls to assert types for database rows and form field values. Tests are also added to make sure these asserts are correct.

@spaze spaze force-pushed the spaze/phpstan-level-10 branch from 054c285 to 3c1d6b8 Compare December 10, 2024 04:36
spaze added 24 commits December 10, 2024 16:22
It would be enough to use
```
if (!$collator instanceof Collator) {
```
instead of just
```
if (!$collator) {
```
But why not remove `static $collator` as well.

This fixes "Cannot call method getSortKey() on mixed."
@spaze spaze force-pushed the spaze/phpstan-level-10 branch from 3c1d6b8 to 404e8a2 Compare December 10, 2024 15:24
@spaze spaze merged commit 8386aa5 into main Dec 11, 2024
59 checks passed
@spaze spaze deleted the spaze/phpstan-level-10 branch December 11, 2024 04:36
@spaze spaze mentioned this pull request Dec 19, 2024
@spaze spaze self-assigned this Dec 19, 2024
spaze added a commit that referenced this pull request Dec 19, 2024
_A few weeks and +10% test coverage later..._

Bring the rest of the code to PHPStan level 10 (follow-up to #443). The level is bumped back to `max` in this PR.

Several bugs were found and taken care of during the effort, mostly because I've added more tests, but without the effort of going to level 10, I would have written no additional tests because why 😅
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant