Skip to content

chore: bump rector/rector from 2.7.0 to 2.8.2 - #89

Merged
dpoposki merged 1 commit into
mainfrom
dependabot/composer/rector/rector-2.8.2
Nov 4, 2026
Merged

dpoposki merged 1 commit into
mainfrom
dependabot/composer/rector/rector-2.8.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Bumps rector/rector from 2.7.0 to 2.8.2.

Release notes

Sourced from rector/rector's releases.

Released Rector 2.8.2

Leaner PHPDoc stack and a fluent composer-based config 🚀

This release leans on phpstan/phpdoc-parser directly: Rector drops its own forked parser, printer, token iterator and type-node subclasses, and reuses the upstream parser, format-preserving printer, node traverser and type nodes. Fewer moving parts, one source of truth for PHPDoc handling, and it rides the PHPStan 2.3.3 bump. Thanks @​ondrejmirtes.

On the config side, withComposerBased() now auto-detects installed packages when called with no argument, and a fluent withComposerBasedRule() builder lands across core and the rector-* sets.

New features 🥳

  • Add withComposerBasedRule() to the fluent RectorConfig::configure() builder (#8875)
  • [Configuration] Auto-detect installed packages in withComposerBased() called with no argument (#8748) Thanks @​MadBox-99
  • [TypeDeclaration] Prefer same-namespace classes over global PHPDoc types (#8869) Thanks @​MohannadElemary
  • [dx] Report rule-scoped skips that matched a file but never changed it (#8853)

Performance Improvements 🚀

  • Reduce memory usage on the LPT bucket by recycling workers and keeping files in discovery order (#8867) Thanks @​samsonasik
  • Cache skip-filtered rules per node class for the current file in RectorRegistry::forNodeAndFile() (#8860) Thanks @​samsonasik
  • Remove unneeded array_values() when arrays are already lists or called too early (#8857) Thanks @​samsonasik

Bugfixes 🐛

  • [Php80] TernaryToNullsafeCoalesceRector: fix a redundant nullsafe property access under coalesce (#8864)
  • [Php71] BinaryOpBetweenNumberAndStringRector: skip an array dim fetch (#8862)
  • Resolve the item type of a union of arrays in ArrayCallbackParamTypeResolver (#8874) Thanks @​SanderMuller
  • Sort root files in withRootFiles() to keep the cache hash stable (#8870) Thanks @​M-arcus
  • Keep fixture lock files out of fixture directories (#8873) Thanks @​localheinz
  • Check the configuration cache only in the main process (#8851) Thanks @​SanderMuller
  • Restore preload-split-package.php to fix a PHPStan Turbo notice on rector-* packages (#8865) Thanks @​samsonasik
  • Fix Windows CI tests under PHPStan Turbo (#8866, #8868) Thanks @​samsonasik

Internals ⚙️

  • Use the phpstan/phpdoc-parser stack directly: parser without subclass, format-preserving printer, NodeTraverser, and move union dedup/array printing into type mappers (#8871, #8863, #8855, #8858) Thanks @​ondrejmirtes
  • Remove the forked BetterTokenIterator, the BracketsAwareIntersectionTypeNode, and type-node subclasses that only changed __toString() (#8856, #8876, #8872) Thanks @​ondrejmirtes
  • Bump to PHPStan 2.3.3 and remove stale workarounds (#8859) Thanks @​ondrejmirtes
  • [cs] Apply the no-slash rule (#8852)

rector-doctrine 🟠

... (truncated)

Commits
  • 03a365d Rector 2.8.2
  • f5c6ce3 Updated Rector to commit bb468100badd8b7748466395cd0d9be89a042656
  • 50fcdc5 Updated Rector to commit bb468100badd8b7748466395cd0d9be89a042656
  • ccc0033 Updated Rector to commit 0bd315b21ef1f81c4bec3f39e806427adad11aaf
  • fd0abe1 Updated Rector to commit 0bd315b21ef1f81c4bec3f39e806427adad11aaf
  • 90572b3 Updated Rector to commit 30895a06b85e867f64a21c3d4c8cbe8ea9ac584a
  • 3229890 Updated Rector to commit 66649dc0aef713bf3e437308b6ad7cd07b64f4f5
  • 3b62dea Updated Rector to commit 6d207283128188853de50a3d3b46e97af32fb3b4
  • a7dd784 Updated Rector to commit 1dcde919ca88e013b6558ed98b111018d1743875
  • f8b90b1 Updated Rector to commit 80ce9c2040bd156b7b34f209820789891955fdb9
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file php Pull requests that update php code labels Nov 4, 2026
@dpoposki

dpoposki commented Nov 4, 2026

Copy link
Copy Markdown
Contributor

@dependabot rebase

Bumps [rector/rector](https://github.com/rectorphp/rector) from 2.7.0 to 2.8.2.
- [Release notes](https://github.com/rectorphp/rector/releases)
- [Commits](rectorphp/rector@2.7.0...2.8.2)

---
updated-dependencies:
- dependency-name: rector/rector
  dependency-version: 2.8.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/composer/rector/rector-2.8.2 branch from ad20a8b to d59294d Compare November 4, 2026 22:05
@dpoposki
dpoposki merged commit 2645c84 into main Nov 4, 2026
5 of 6 checks passed
@dpoposki
dpoposki deleted the dependabot/composer/rector/rector-2.8.2 branch November 4, 2026 22:14
dpoposki added a commit that referenced this pull request Nov 5, 2026
…QA failed (#97)

Rector 2.8.2 (#89) with PHPStan 2.3.5 (already in the lock) stops on
almost every file: "CallableTypeNode::__construct(): Argument #1
($identifier) must be of type IdentifierTypeNode, FullyQualifiedNameNode
given". 2.8.4 reads them. The constraint's floor is raised to ^2.8.4 so
the broken pair can't come back.

<!-- Thanks for contributing! For a bigger change, please link the issue
where the approach was agreed. -->

## What and why

<!-- What changes, and why. Link the issue, e.g. "Fixes #123". -->

## How it was tested

<!-- The tests you added, and anything you checked by hand. -->

## Checklist

- [ ] Tests cover the change (a fix has a test that fails without it)
- [ ] `composer qa` passes
- [ ] User-facing changes are documented in `docs/` or the README
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file php Pull requests that update php code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant