Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

650
Visualizações
¿Cómo manejar las obsolescencias de Symfony 5.3?

Después de actualizar Symfony de 4.4 -> 5.3, obtengo algunas obsolescencias que no puedo encontrar para resolver.

Aquí hay 3 desaprobaciones como ejemplo:

 User Deprecated: Since symfony/framework-bundle 5.3: The "session.storage.factory.service" service is deprecated, use "session.storage.factory.native", "session.storage.factory.php_bridge" or "session.storage.factory.mock_file" instead. User Deprecated: Since symfony/security-core 5.3: The "Symfony\Component\Security\Core\Event\AuthenticationFailureEvent" class is deprecated, use "Symfony\Component\Security\Http\Event\LoginFailureEvent" User Deprecated: Since symfony/http-kernel 5.3: "Symfony\Component\HttpKernel\Event\KernelEvent::isMasterRequest()" is deprecated, use "isMainRequest()" instead.

Son solo 3 de más como 30 bajas. Mi pregunta es: ¿Cómo es la forma correcta de resolver estas advertencias? (Necesito resolver, porque tengo muchas solicitudes por minuto y cada vez que se escriben estas advertencias en dev.log, este archivo está explotando)

Quiero comenzar con la tercera advertencia. Aquí está el rastro:

 ../vendor/symfony/http-kernel/Event/KernelEvent.php:88 {▶} ../vendor/symfony/web-link/EventListener/AddLinkHeaderListener.php:41 {▶} ../vendor/symfony/event-dispatcher/Debug/WrappedListener.php:117 {▶} ../vendor/symfony/event-dispatcher/EventDispatcher.php:230 {▶} ../vendor/symfony/event-dispatcher/EventDispatcher.php:59 {▶} ../vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:151 {▶} ../vendor/symfony/http-kernel/HttpKernel.php:190 {▶} ../vendor/symfony/http-kernel/HttpKernel.php:178 {▶} ../vendor/symfony/http-kernel/HttpKernel.php:79 {▶} ../vendor/symfony/http-kernel/EventListener/ErrorListener.php:60 {▶} ../vendor/symfony/event-dispatcher/Debug/WrappedListener.php:117 {▶} ../vendor/symfony/event-dispatcher/EventDispatcher.php:230 {▶} ../vendor/symfony/event-dispatcher/EventDispatcher.php:59 {▶} ../vendor/symfony/event-dispatcher/Debug/TraceableEventDispatcher.php:151 {▶} ../vendor/symfony/http-kernel/HttpKernel.php:218 {▶} ../vendor/symfony/http-kernel/HttpKernel.php:90 {▶} ../vendor/symfony/http-kernel/Kernel.php:199 {▶} ../public/index.php:25 {▶}

Todos los archivos provienen directamente de Symfony, nada de mí, por eso mi pregunta por dónde empezar a resolver estas advertencias.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Ok, ahora estoy libre de obsolescencia, pero hay algunas cosas que hacer ahora después de actualizar de 4.4 a 5.3

Para encontrar todas las advertencias, creé un nuevo proyecto Symfony para comparar diferentes archivos.

  1. KernelEvent::isMasterRequest()" is deprecated, use "isMainRequest()

    eche un vistazo a su archivo src/Kernel.php - allí puede encontrar el método obsoleto

  2. The "session.storage.factory.service" service is deprecated

    abre tu framework.yaml y compáralo con el siguiente código. Tal vez te pueda ayudar:

     session: handler_id: session.handler.native_file save_path: '%kernel.project_dir%/var/sessions/%kernel.environment%' # 2 Days lifetime (172800 seconds) cookie_lifetime: 172800 cookie_secure: 'auto' cookie_samesite: 'lax' #storage_id: session.storage.mock_file storage_factory_id: session.storage.factory.native
  3. The "Symfony\Component\HttpFoundation\Session\SessionInterface are deprecated

    Encontré esto en mi antiguo LoginAuthenticator ('App\Security...' por defecto). Reemplácelo con use Symfony\Component\HttpFoundation\RequestStack; Ahora puede inyectarlo y hacerlo disponible como $this->requestStack y luego cambiar todo $this->session con $this->requestStack->getSession() ¡Listo!

  4. La mayoría de las demás desaprobaciones están relacionadas con el nuevo sistema basado en autenticadores que se introdujo en Symfony 5.1. Tienes que editar tu security.yaml . Os muestro mis cambios:

     security: enable_authenticator_manager: true password_hashers: Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto' providers: users_in_memory: { memory: null } app_user_provider: entity: class: App\Entity\User property: username firewalls: main: # default stuff provider: app_user_provider http_basic: ~ form_login: default_target_path: mission use_referer: true target_path_parameter: redirect_url login_path: login check_path: login entry_point: form_login access_denied_handler: App\Security\AccessDeniedHandler custom_authenticator: App\Security\CustomAuthenticator

    Para que las advertencias de autenticación sean más comprensibles, cree un nuevo CustomAuthenticator con el paquete maker. Ahora puede comparar su antiguo Autenticador con el nuevo y poner los nuevos métodos en su antiguo Autenticador. Hay algunos cambios que debes hacer.

Eso es todo. La mayoría de las depreciaciones deberían resolverse ahora.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda