PHPackages                             muhammadsadeeq/laravel-upgrades-rector - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. muhammadsadeeq/laravel-upgrades-rector

ActiveRector-extension[Database &amp; ORM](/categories/database)

muhammadsadeeq/laravel-upgrades-rector
======================================

Automated Laravel version upgrade rules for Rector. Supports Laravel 10 through 13 with 64 rules covering breaking changes, dependency updates, and contract migrations.

v1.0.2(1mo ago)01↓100%MITPHPPHP ^8.3CI passing

Since Apr 8Pushed 4w agoCompare

[ Source](https://github.com/MuhammadSadeeq/laravel-upgrades-rector)[ Packagist](https://packagist.org/packages/muhammadsadeeq/laravel-upgrades-rector)[ Docs](https://github.com/muhammadsadeeq/laravel-upgrades-rector)[ RSS](/packages/muhammadsadeeq-laravel-upgrades-rector/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (4)Dependencies (3)Versions (2)Used By (0)

 [![Laravel Upgrades Rector Logo](https://camo.githubusercontent.com/915fed77f5ccb9897c3ae50b022590d450f773c7335c93886947ff7535743978/68747470733a2f2f7777772e7361646565712e6465762f696d616765732f7061636b616765732f6c61726176656c2d75706772616465732d726563746f722f6c6f676f2f6c6f676f2e737667)](https://camo.githubusercontent.com/915fed77f5ccb9897c3ae50b022590d450f773c7335c93886947ff7535743978/68747470733a2f2f7777772e7361646565712e6465762f696d616765732f7061636b616765732f6c61726176656c2d75706772616465732d726563746f722f6c6f676f2f6c6f676f2e737667)

Laravel Upgrades Rector
=======================

[](#laravel-upgrades-rector)

 [![Latest Version on Packagist](https://camo.githubusercontent.com/f0920c0d722cb04a4afd04b04ff4b80050fb7abd6a2594e52ee4663dcd34ae9f/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6d7568616d6d61647361646565712f6c61726176656c2d75706772616465732d726563746f722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/muhammadsadeeq/laravel-upgrades-rector) [![Total Downloads](https://camo.githubusercontent.com/7bc666edf1d3cab738e7fc6dfbca5dc01130cc9c723a19bdccbc721d3e6d5e5e/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6d7568616d6d61647361646565712f6c61726176656c2d75706772616465732d726563746f722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/muhammadsadeeq/laravel-upgrades-rector) [![Tests](https://camo.githubusercontent.com/a37c46c411f997d86b4948d168c186700fb766b49a7c45cbd46353423df9df02/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6d7568616d6d61647361646565712f6c61726176656c2d75706772616465732d726563746f722f74657374732e796d6c3f6272616e63683d6d61696e266c6162656c3d7465737473267374796c653d666c61742d737175617265)](https://github.com/muhammadsadeeq/laravel-upgrades-rector/actions)

 **Automate your Laravel upgrades** with 64 Rector rules covering Laravel 10 through 13.

---

Installation
------------

[](#installation)

```
composer require --dev muhammadsadeeq/laravel-upgrades-rector
```

Usage
-----

[](#usage)

Preview changes:

```
vendor/bin/rector process --dry-run --config=vendor/muhammadsadeeq/laravel-upgrades-rector/config/laravel-13.php
```

Apply changes:

```
vendor/bin/rector process --config=vendor/muhammadsadeeq/laravel-upgrades-rector/config/laravel-13.php
```

Replace `laravel-13.php` with `laravel-12.php` or `laravel-11.php` for older upgrades. These config names and set constants refer to the target upgrade version, so `laravel-13.php` / `LaravelUpgradeSetList::LARAVEL_13` means “upgrade the project to Laravel 13.” The Laravel 11, Laravel 12, and Laravel 13 sets can also rewrite the nearest project `composer.json` when a supported dependency update applies. They do not update `composer.lock` or install new packages for you. The ready-to-use config files run only this package's Laravel upgrade rules; they do not enable Rector's generic PHP modernization/code-style sets. Generated files under `bootstrap/cache` are skipped.

Recommended Upgrade Flow
------------------------

[](#recommended-upgrade-flow)

```
# 1. Rewrite application code and supported config patterns
vendor/bin/rector process --config=vendor/muhammadsadeeq/laravel-upgrades-rector/config/laravel-11.php

# 2. Install the upgraded framework and package versions
composer update

# 3. Run your test suite and application checks
php artisan test
```

After Rector and Composer finish, review any generated advisory comments and TODO stubs before considering the upgrade complete.

Rule Types
----------

[](#rule-types)

- Auto-fix rules rewrite code or configuration when the upgrade can be applied safely
- Advisory rules add comments when the package can identify a Laravel upgrade concern but cannot safely rewrite project-specific behavior
- Contract stub rules add required interface methods, often with TODO comments where implementation is application-specific

Examples of advisory/manual-review areas include `change()` migrations, relationship methods named `casts()`, custom password rehashing behavior, and other behavior-sensitive upgrade-guide items.

Supported Versions
------------------

[](#supported-versions)

Upgrade PathRulesLaravel 12 → 1320 rulesLaravel 11 → 1214 rulesLaravel 10 → 1131 rulesCumulative sets are available to upgrade across multiple versions at once.

Custom Configuration
--------------------

[](#custom-configuration)

```
