Yes. A lot more.
The Laravel Upgrade Guide focuses on new features and breaking changes, treating the rest as optional. Over time, only following the steps outlined in the Laravel Upgrade Guide will accumulate technical debt.
Shift upgrades all changes. This ensures your Laravel application is fully up-to-date with your version of Laravel and there are no future surprises. The goal is for your Laravel application to be as if it were running that version of Laravel all along.
Probably not everything.
Shift attempts to upgrade your Laravel application so you just need to run
composer update. However, given the dynamic nature of PHP, the infinite possibilities of code customizations, and changes within third-party dependencies, this is not always possible. When Shift can not reliably perform a change, a detailed comment will be added to the PR for you to review. You are also encouraged to review the
CHANGELOG or Upgrade Guide for your third-party dependencies.
To improve context and focus, Shifts are run incrementally. Doing so allows you to verify each upgrade to ensure you don't miss anything.
Currently, these are the services which allow Shift to quickly connect to your Laravel application.
All of these services offer free private repositories. You may always push a temporary copy of your repository to one of these services in order to run Shift.
Shift requires write access to create a new branch and open a Pull Request. This allows the process to be seamlessly automated from start to finish.
Once you merge the Pull Request, you are welcome to deauthorize the Laravel Shift application.
Your code only lives on the Shift server while the upgrade process is running - less than a minute on average. After it completes, your code is forcefully removed from the Shift server. We're talking
rm -rf *.
Some code comes with policies or agreements which prevent you from sharing it. No worries. That's why there's Shift for Docker - so you may run any Shift against one of your Laravel applications locally.
Start your order. Once you reach checkout, send payment via PayPal to firstname.lastname@example.org and include your Shift number.
All Shifts are single use. This is by design. For example, you don't need to upgrade to Laravel 10 twice.
Of course if there is an issue, or you believe the automation might be improved by making some changes first, you may request a rerun by sending your Shift number to email@example.com.
Some Shifts automatically apply the Laravel code style. This helps improve the automation by ensuring a consistent code format.
Of course code style can be a very personal thing. You may configure Shift to apply your own code style by adding a PHP Code Sniffer, PHP CS Fixer, or Pint configuration in your project root folder. Shift will automatically detect and apply your code style when formatting.
For more details, watch our short video on customizing the code style.
Shift will automatically find your Laravel application based on the location of common files. For example, for Laravel applications, Shift will look for
artisan. For projects using Tailwind, it will look for
If you have restructured your Laravel application or have multiple Laravel applications within your repository, you may control which one Shift chooses by creating a
.shiftrc file in the desired project folder. This file does not need to contain any configuration options. The presence of this file alone is enough to force Shift to choose that project.
If a Shift fails, you will receive immediate feedback on how to resolve common problems yourself. Once you have, you may rerun your Shift again. If the rerun fails, you will need to contact contact support for more help.
Any pending Shift or unused subscription purchased within the last 30 days is eligible for a refund, less the payment processing fees.
Any completed Shift or used subscription purchased within the last 14 days may be eligible for a prorated refund.
You may contact support with your order information to request a refund.
For basic support feel free to email firstname.lastname@example.org.
If you want hands-on support with upgrading your Laravel application, check out the Human Shifts.
Sign in with any of the following services to connect Shift with your Laravel project.
Don't use one of these services?
Temporarily push your project to a free, private repository on one of these cloud-based services or upgrade your project locally with Shift for Docker.