Upgrade Laravel 5.8 to Laravel 6.x

The Laravel 6.x Shift automates the upgrade of your Laravel application from Laravel 5.8 to Laravel 6.x. Using the Laravel 6.x Shift to automatically upgrade your Laravel application has an estimated time savings of 1 hour.

Requirements

  • A Laravel application running Laravel 5.8.0 or higher.
  • A server running PHP 7.2 or higher.

Core Upgrades

The Laravel 6.x Shift automates many of the upgrades listed in the Laravel Upgrade Guide, including:

  • Converting deprecated string and array helper functions to their respective Arr and Str methods.
  • Replacing usages of the Input facade with the Request facade.
  • Detecting deferred Service Providers.
  • Renaming core methods to their new names.
  • Detecting backward incompatibilities within your application code.
  • Updating composer.json for Laravel 6.x.

Additional Upgrades

In addition to the Core Upgrades, the Laravel 6.x Shift performs additional upgrade beyond those listed in the Laravel Upgrade Guide, including:

  • Adopting the Laravel code style.
  • Modernizing PHP syntax, such as the short array syntax.
  • Converting string based class references to ::class references.
  • Detecting deprecations and changes for PHPUnit 8 within your tests.
  • Updating core config files to their Laravel 6 versions.

Manual Upgrades

There are some upgrades the Laravel 6.x Shift can not perform automatically. When Shift detects these it adds a detailed comment on the Pull Request to help guide the manual upgrade.

While Shift attempts to detect and automate the updates for common community packages, you should review the changelog for your dependencies for any additional updates.

Still have questions? Message @laravelshift on Twitter or email shift@laravelshift.com.