Repository navigation
chore(deps): bump rector/rector 2.3.9 to 2.6.7 and phpstan/phpstan 2.1.45 to 2.2.16 - #24
Merged
s2x merged 1 commit intoOct 3, 2026
Conversation
…1.45 to 2.2.16 Rector 2.3.9 reads the private $container property of PHPStan\Parser\RichParser, which no longer exists from PHPStan 2.2.6. Every rector below 2.5.8 therefore dies with MissingPrivatePropertyException before analysing a single file, which is what made the phpstan 2.1.45 -> 2.2.16 Dependabot bump (#6) fail lint and ci-ok. rector 2.6.7 requires phpstan/phpstan ^2.2.14, so the two bumps cannot land apart: one PR does both. Dev dependencies stay pinned exactly and composer.lock is regenerated; the runtime packages array is empty and unchanged. The Rector autofix is empty: rector 2.6.7 reports no changes across src, examples and tests, verified against a control probe that did fire rules. PHPStan level 9 stays at no errors. No source file changes, so no CHANGELOG entry: a dev-tool bump is not user-visible here. Closes #23
s2x
deleted the
chore/issue-23-chore-deps-bump-rector-rector-2-3-9-to-2
branch
October 3, 2026 16:47
This was referenced Oct 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What changed
Bump
rector/rectorfrom2.3.9to2.6.7andphpstan/phpstanfrom2.1.45to2.2.16together, with
composer.lockregenerated.Rector 2.3.9 reads the private
$containerproperty ofPHPStan\Parser\RichParser, and thatproperty no longer exists from PHPStan 2.2.6 on, so every Rector below 2.5.8 dies with
MissingPrivatePropertyExceptionbefore analysing a single file. That is what made thephpstan/phpstan2.1.45 -> 2.2.16 Dependabot bump (#6) faillintandci-ok. Rector 2.6.7requires
phpstan/phpstan ^2.2.14, so the two bumps cannot land apart.Dev dependencies stay pinned exactly, in the style the file already uses. The runtime
packagesarray in the lock is empty and unchanged; only
packages-devmoves.No source file changes. Rector 2.6.7 reports an empty autofix across
src,examplesandtestseven though 25 releases of rules apply to this config, so there is nothing to revert andno
CHANGELOG.mdentry: a dev-tool bump is not user-visible here.Closes #23
How it was tested
composer update rector/rector phpstan/phpstan --with-all-dependenciesresolves both pins;composer why phpstan/phpstanshowsrector/rector 2.6.7 requires phpstan/phpstan (^2.2.14).bin/lint.shgreen end to end: composer validate and audit, PHP-CS-Fixer, PHPStan level 9(
[OK] No errors), Rector dry run ([OK] Rector is done!), shellcheck.vendor/bin/phpunitgreen: 24 tests, 46 assertions (14 unit + 10 integration). The integrationsuite ran against a real libpiper built with
make build-libpiperon this host.temporary probe file made Rector fire
SimplifyIfReturnBoolRector,RemoveAlwaysElseRectorand
RemoveUnusedPrivateMethodRector, and a temporary return-type violation made PHPStan reportreturn.type. Both probes were deleted;git status src/is clean.the two bumps really are coupled.
Checklist
the existing suite covers it and was run)
CHANGELOG.mdupdated under[Unreleased](deliberately not: no user-visible change)feat: ...,fix: ...)