Atualizando o Laravel de 4.1 para 4.2

Atualizando o Laravel de 4.1 para 4.2

Nesta dica vou reproduzir as informações da documentação do Laravel sobre como atualizar uma aplicação que esteja na versão 4.1 para a versão 4.2. Logo depois vou publicar mais um artigo mostrando como atualizar para a versão 5.0. Também vou comentar as atualizações necessárias para o tutorial Desenvolvendo com Laravel.

Documentação

Aqui está uma reprodução quase exata da documentação oficial sobre a atualização.

PHP 5.4 ou posterior

A versão 4.2 do Laravel precisa da versão 5.4.0 do PHP ou uma versão mais atual.

Padrão de Criptografia

Adicione uma nova opção no seu arquivo de configuração app/config/app.php. O valor desta opção deve ser MCRYPT_RIJNDAEL_256 se você quer manter a compatibilidade com os seus cookies atuais.

Essa configuração pode ser usada para controlar a codificação padrão para as funcionalidades de encriptação do Laravel. O padrão do Laravel 4.2 é na realidade o MCRYPT_RIJNDAEL_128 (AES), mas é necessário usar o MCRYPT_RIJNDAEL_256 por questões de compatibilidade com os cookies antigos. Caso você possa reiniciar os seus cookies sem problema, pode utilizar MCRYPT_RIJNDAEL_128.

Modelos com Soft Delete

O soft delete no Laravel 4.1 era implementado com uma flag $softDelete. Na versão 4.2 foi alterado para usar Traits. Portanto, se você usava a propriedade $softDelete, agora ela foi removida. É necessário utilizar o SoftDeletingTrait da seguinte maneira:

Como você viu no código, também é necessário adicionar a coluna deleted_at manualmente na propriedade $dates.

Classes de View e Paginação

Se você utiliza diretamente as classes Illuminate\View\Environment ou Illuminate\Pagination\Environment, atualize essas referencias para Illuminate\View\Factory e Illuminate\Pagination\Factory.

Parâmetro Adicional na Paginação

Se você extendeu a classe Illuminate\Pagination\Presenter, a assinatura do método abstrato getPageLinkWrapper foi modificado para adicionar o argumento rel:

Fila de Encriptação Iron.Io

Se você está usando o driver do Iron.io, você vai precisar adicionar uma nova opção no arquivo de configuração app/config/queue.php:

Caso Prático

Agora vamos para um caso prático, atualizado nosso aplicativo disponível em https://github.com/oscardias/desenvolvendo_com_laravel (esta é a versão antes da atualização). A primeira coisa que vamos fazer é atualizar nosso composer.json:

Após atualizar o arquivo execute um composer update. Depois que o composer finalizar, abra o arquivo app/config/app.php e adicione o novo cipher depois da entrada key:

Como nós não usamos cookies para nada além de lembrar o login, podemos reiniciar estes cookies usando o novo cipher. E é só isso. O resto não é necessário na nossa aplicação.

Conclusão

Esta foi uma rápida reprodução da documentação do Laravel sobre como atualizar a versão 4.1 para 4.2. Também atualizamos o aplicativo do tutorial sobre desenvolvimento Laravel.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *