Em 10 de novembro de 2024, celebramos o 16º aniversário do lançamento open source do Go!
Lançamos o Go 1.24 em fevereiro e o Go 1.25 em agosto, seguindo nossa cadência de releases bem estabelecida. Continuando nossa missão de construir a plataforma de linguagem mais produtiva para sistemas de produção, essas versões incluíram novas APIs para software robusto e confiável, avanços significativos em segurança, e melhorias importantes sob o capô.
Melhorias na Linguagem e Biblioteca Padrão
testing/synctest
O novo pacote testing/synctest, lançado experimentalmente no Go 1.24 e graduado no Go 1.25, simplifica significativamente a escrita de testes para código concorrente e assíncrono. O pacote funciona virtualizando o próprio tempo, transformando testes que eram lentos e instáveis em testes confiáveis e quase instantâneos.
testing.B.Loop
A nova API testing.B.Loop é mais fácil de usar que a original testing.B.N e resolve muitas armadilhas tradicionais ao escrever benchmarks em Go.
Containers e Go
Go 1.25 lançou o agendamento container-aware, ajustando transparentemente o paralelismo de workloads Go em containers, prevenindo throttling de CPU que pode impactar a latência.
Flight Recorder
O novo flight recorder do Go 1.25 permite insights profundos sobre o comportamento dinâmico de sistemas em produção, como uma pequena máquina do tempo.
Desenvolvimento de Software Seguro
Auditoria de Segurança
Uma auditoria de segurança conduzida pela Trail of Bits obteve excelentes resultados, com apenas uma descoberta de baixa severidade.
Certificação FIPS 140-3
Através de um esforço colaborativo entre a Go Security Team e Geomys, os pacotes de criptografia alcançaram certificação CAVP, pavimentando o caminho para a certificação completa FIPS 140-3.
os.Root
A API os.Root, adicionada no Go 1.24, permite acesso ao sistema de arquivos resistente a traversal, combatendo vulnerabilidades onde atacantes poderiam manipular programas para acessar arquivos que deveriam ser inacessíveis.
Melhorias Sob o Capô
Swiss Table Maps
No Go 1.24, redesenhamos completamente a implementação de maps, baseando-nos nas últimas ideias em design de hash tables. Essa mudança traz melhorias significativas em performance, menor latência de cauda, e em alguns casos até ganhos de memória.
Green Tea GC
O Go 1.25 inclui um avanço experimental significativo no garbage collector chamado Green Tea. O Green Tea reduz o overhead do GC em muitas aplicações em pelo menos 10% e às vezes até 40%. Será habilitado por padrão no Go 1.26.
IA e o Futuro
O time Go está aplicando sua mentalidade cuidadosa aos problemas e oportunidades trazidos pela IA generativa, trabalhando para trazer a abordagem production-ready do Go para construir integrações, produtos, agentes e infraestrutura de IA robustos.
Traduzido e adaptado do Go Blog