Foi publicada a primeira versão do novo ramo principal nginx 1.29.0, no qual o desenvolvimento de novas funcionalidades continuará. No ramo estável suportado 1.28.x, são feitas apenas alterações relacionadas à correção de erros graves e vulnerabilidades. No próximo ano, a partir do ramo principal 1.29.x, será formada a versão estável 1.30. O código do projeto é escrito em C e é distribuído sob a licença BSD.
No novo lançamento:
- Foi adicionada a diretiva «early_hints» e implementado suporte ao código HTTP 103 nas respostas dos backends proxy e gRPC. O código 103 permite informar ao cliente sobre o conteúdo de alguns cabeçalhos HTTP imediatamente após a solicitação, sem esperar até que servidor todas as operações relacionadas com a solicitação sejam concluídas e o conteúdo comece a ser entregue. Dessa forma, é possível enviar dicas sobre elementos relacionados à página a ser entregue, que podem ser pré-carregados (por exemplo, links para o CSS e JavaScript utilizados na página). Ao receber informações sobre esses recursos, o navegador começará a fazê-los download sem esperar a entrega da página principal, o que reduz o tempo total de processamento da solicitação.
- Fornecida a capacidade de carregar chaves criptográficas de tokens de hardware, usando a biblioteca OpenSSL como provedor.
- Na plataforma macOS, foi implementado suporte ao parâmetro «so_keepalive» na diretiva «listen».
- O nível de erros que ocorrem durante a negociação da conexão usando o protocolo QUIC foi alterado de «error» para «crit» para problemas críticos com SSL e para «info» para outros problemas com SSL.
- Na construção da versão para Windows, foi utilizado o Windows SDK 10.
- Foram resolvidos problemas na construção dos módulos ngx_http_v2_module e ngx_http_v3_module, usando GCC 15, assim como problemas na construção do módulo ngx_http_v3_module com as otimizações «-O3 -flto» no GCC 14.
- O suporte ao HTTP/3 foi aprimorado.
Fonte: opennet.ru
