Skip to main content
Voltar aos Notícias
Laravel

Laravel 13.36 traz construtores de regras de validação, DB::olap() e reset de conexões sticky

A versão 13.36.0 do Laravel introduz construtores de regras de validação, o método DB::olap() para consultas OLAP em PlanetScale/Vitess e a opção de resetar conexões sticky entre jobs de fila, além de ajustes em broadcasts Mercure e mailables.

PHP Belém Reporter
Conteúdo gerado por IA
3 minutos de leitura • 0 •14 Out 2026

A equipe do Laravel lançou a versão v13.36.0 em 14 de outubro de 2026, trazendo um conjunto de aprimoramentos que facilitam a escrita de validações, ampliam o suporte a bancos de dados distribuídos e melhoram o comportamento das filas. Entre as novidades, destacam‑se os construtores Rule:: para regras de validação que ainda não possuíam método dedicado, o método DB::olap() para cargas de trabalho OLAP em PlanetScale/Vitess e a opção de limpar conexões "sticky" entre jobs de fila.

"The Laravel team released v13.36.0 with Rule:: builders for the validation rules that only had string syntax, DB::olap() for large queries on PlanetScale and other Vitess databases, an opt-in reset of sticky database connections between queue jobs, synchronous Mercure broadcasts by default, and more." – Laravel News
  • Construtores Rule:: para regras como required_with, url, uuid e distinct;
  • Método DB::olap() que alterna a carga de trabalho para OLAP em conexões Vitess;
  • Flag Worker::$flushStickyConnections = true para resetar conexões sticky entre jobs;
  • Broadcasts Mercure agora síncronos por padrão, com opção MERCURE_ASYNC=true para manter o modo assíncrono;
  • Suporte a atributos #[DeleteWhenMissingModels] e #[FailOnTimeout] em mailables enfileirados;
  • Correções de escape em Markdown mail e diversas melhorias de desempenho.

Construtores de regras de validação: o pull request #61833 introduziu um método Rule:: para cada regra que antes só podia ser declarada como string. Isso permite autocompletar no IDE e evita a fragmentação de valores contendo vírgulas, pois parâmetros são passados como array ao validador.

DB::olap(): o pull request #61932 adiciona olap() e isVitess() à conexão MySQL. Em ambientes PlanetScale, onde consultas OLTP são limitadas a 100 mil linhas, o método executa o callback em modo OLAP, alterando temporariamente a carga de trabalho nas conexões de leitura e escrita. Em servidores MySQL padrão, o callback simplesmente roda, garantindo compatibilidade.

Reset de conexões sticky: ao habilitar sticky em conexões read/write, escritas posteriores podem ser redirecionadas para a conexão de escrita, o que afeta jobs subsequentes no mesmo worker. O novo flag, introduzido no pull request #61915, permite limpar esse estado antes de cada job, evitando leituras inconsistentes. O recurso permanece desativado por padrão para manter compatibilidade com fluxos que dependem do estado.

Broadcasts Mercure síncronos: a mudança feita por Kévin Dunglas (#61977) faz com que eventos direcionados ao hub Mercure sejam enviados imediatamente, similar ao comportamento de ShouldBroadcastNow. Para quem prefere o modelo assíncrono, basta definir MERCURE_ASYNC=true e configurar MERCURE_URL. A alteração também corrige falhas ao usar BROADCAST_CONNECTION=mercure sem URL.

Mailables enfileirados: os atributos #[DeleteWhenMissingModels] e #[FailOnTimeout] agora são respeitados (#61899), garantindo que jobs de email sejam removidos quando o modelo associado for excluído ou que falhas de timeout sejam marcadas como falhas ao invés de serem reprocessadas.

Fonte: Laravel News

Compartilhe este conteúdo
PHP Belém Reporter
Sobre o autor
PHP Belém Reporter
Colaborador da comunidade PHP Belém

Conteúdos relacionados

Continue lendo

Mais artigos técnicos, tutoriais e novidades da comunidade PHP de Belém.

Ver todos os artigos