Manter um projeto atualizado, visando proporcionar segurança aos usuários e permitir, como desenvolvedor, tirar proveito de novas funcionalidades de um framework é algo essencial. Ressalta-se ainda que podem existir exceções como sistemas críticos, que devido a questões de estabilidade, permanecem em versões anteriores por algum tempo, até que uma nova versão alcance certo nível de maturidade.
Dito isto, vamos direto aos passos que devem ser feitos para que seu aplicativo esteja na versão mais recente do Laravel, repetindo os passos descritos na documentação.
Obs: se você está tentando atualizar e está recebendo o erro “Script @php artisan package:discover — ansi handling the post-autoload-dump event returned with error code 255”, a solução pode estar no 2º Passo.
1º Passo: Alterar o arquivo composer.json
Dentro do arquivo composer.json, precisamos atualizar 5 das nossas dependências:
1- Laravel/framework: “⁶.0” para Laravel/framework: “⁷.0”
2- Nunomaduro/collision: “³.0” para nunomaduro/collision: “⁴.1”
3- Phpunit/phpunit: “⁸.0” para nunomaduro/collision: “⁸.5”
4- Laravel/tinker: “¹.x” para laravel/tinker: “².0”
5- Facade/ignition: “¹.4” para facade/ignition: “².0”
2º Passo: Alterar o arquivo App\Exceptions\Handler.php
Onde estiver:
Use Exception;
Troque para:
Use Throwable;
Nos métodos report(…) e render(…) também:
public function report(Throwable $exception);
public function render($request, Throwable $exception);
Feito as alterações, na raiz do projeto mande o composer atualizar as dependências.
Composer update
Considerações Finais
Se você utiliza bibliotecas como Envoy, Horizon, Scout pode ser necessário atualizá-las também, basta seguir a documentação do Laravel (link na referência). Espero que possa ter sido útil, qualquer dúvida podem deixar nos comentários que farei o possível para ajudar.
Referências