Error fatal al actualizar Laravel 5.1 a 5.2

Estoy siguiendo la guía de actualización oficial de 5.1 a 5.2. La primera subsección dice:

Si está instalando una versión beta de Laravel 5.2, agregue "minimum-stability": "beta" a su archivo composer.json.

Actualice su archivo composer.json para que apunte a laravel/framework 5.2.* .

Agrega symfony/dom-crawler ~3.0 y symfony/css-selector ~3.0 a la sección require-dev de tu archivo composer.json.

Ahora, después de introducir los cambios anteriores y ejecutar la composer update , recibo los siguientes errores:

 PHP Fatal error: Class 'Illuminate\Routing\ControllerServiceProvider' not found in /home/vagrant/Code/myproject/vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 146 

y

 [Symfony\Component\Debug\Exception\FatalErrorException] Class 'Illuminate\Routing\ControllerServiceProvider' not found 

y

 [RuntimeException] Error Output: PHP Fatal error: Class 'Illuminate\Routing\ControllerServiceProvider' not found in /home/vagrant/Code/myproject/vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 146 

Los errores se lanzan después de que se realiza la actualización y se lleva a cabo la “Generación de archivos de carga automática”.

¿Qué podría estar mal?

No parece un problema de paquete personalizado, sino un problema central. ¿Debo continuar con la guía de actualización y ejecutar la composer update DESPUÉS de que todo se haya ajustado para que se adapte a la nueva versión del marco?

ACTUALIZAR

Al ejecutar el composer dump-autoload no se producen los errores descritos anteriormente. Aún confuso, sin embargo.

Ya no existe Illuminate\Routing\ControllerServiceProvider .

Si yo fuera tú, compararía mi proyecto de aplicación con https://github.com/laravel/laravel/commits/develop , si por ejemplo miras https://github.com/laravel/laravel/blob/develop/config/app.php verá proveedores predeterminados para Laravel 5.2:

 Illuminate\Auth\AuthServiceProvider::class, Illuminate\Broadcasting\BroadcastServiceProvider::class, Illuminate\Bus\BusServiceProvider::class, Illuminate\Cache\CacheServiceProvider::class, Illuminate\Foundation\Providers\ConsoleSupportServiceProvider::class, Illuminate\Cookie\CookieServiceProvider::class, Illuminate\Database\DatabaseServiceProvider::class, Illuminate\Encryption\EncryptionServiceProvider::class, Illuminate\Filesystem\FilesystemServiceProvider::class, Illuminate\Foundation\Providers\FoundationServiceProvider::class, Illuminate\Hashing\HashServiceProvider::class, Illuminate\Mail\MailServiceProvider::class, Illuminate\Pagination\PaginationServiceProvider::class, Illuminate\Pipeline\PipelineServiceProvider::class, Illuminate\Queue\QueueServiceProvider::class, Illuminate\Redis\RedisServiceProvider::class, Illuminate\Auth\Passwords\PasswordResetServiceProvider::class, Illuminate\Session\SessionServiceProvider::class, Illuminate\Translation\TranslationServiceProvider::class, Illuminate\Validation\ValidationServiceProvider::class, Illuminate\View\ViewServiceProvider::class, /* * Application Service Providers... */ App\Providers\AppServiceProvider::class, App\Providers\AuthServiceProvider::class, App\Providers\EventServiceProvider::class, App\Providers\RouteServiceProvider::class, 

Al actualizar de 5.1 a 5.2 en proyectos existentes, encontramos que la composer update ejecutando antes y después de eliminar las líneas para los proveedores.

Illuminate\Routing\ControllerServiceProvider::class Illuminate\Foundation\Providers\ArtisanServiceProvider::class

fue una secuencia necesaria para completar la actualización de laravel.

Ejecutar antes permitiría a laravel descargar y actualizar las dependencias de la biblioteca del marco actual y luego ejecutarse después de la eliminación (el compositor pudo completar sin problemas)

También encontramos que cualquier valor en el archivo .env no puede tener espacios y debe estar rodeado de comillas para que funcione.

Elimine los dos proveedores de servicios de config / app.php

 Illuminate\Foundation\Providers\ArtisanServiceProvider::class, Illuminate\Routing\ControllerServiceProvider::class, 

Actualizar el archivo app.php en config / solucionó un problema, pero con la introducción de la carpeta bootstrap / cache probablemente continuará ejecutando el mismo error.

Ejecuté la actualización del compositor Antes de eliminar el archivo guardado en la caché, seguí golpeando el mismo error. Asegúrese de eliminar primero el archivo bootstrap / cache / services.php.

Puede haber un comando artesanal para esto, pero omití totalmente este paso en la documentación.

He encontrado la solución aquí:

https://laravel.com/docs/5.2/upgrade#upgrade-5.2.0

Proveedores de servicio

El Illuminate \ Foundation \ Providers \ ArtisanServiceProvider debe eliminarse de su lista de proveedores de servicios en su archivo de configuración app.php.

El Illuminate \ Routing \ ControllerServiceProvider debe eliminarse de su lista de proveedores de servicios en su archivo de configuración app.php.

Elimina packages.php y config.php de la carpeta de caché de arranque después de ejecutar composer dump-autoload