
Go 1.25 mit experimentellem Garbage Collector und neuer JSON-API veröffentlicht
Go 1.25 bringt wichtige Toolchain- und Laufzeitverbesserungen mit sich, darunter experimentelle GC, Codierung/json v2 und neue Test-/Synctest-Unterstützung.
Eine Übersetzung von 🇬🇧 Linuxiac.com
Das Go-Team kündigte die offizielle Veröffentlichung der Programmiersprache Go 1.25 an, die pünktlich sechs Monate nach der Version 1.24 erscheint und eine Menge unter der Haube hat, die fast jede Ecke der Toolchain, der Laufzeit und der Standardbibliothek berührt.
Eine der auffälligsten Neuerungen ist der neue experimentelle Garbage Collector, der die Leistung beim Umgang mit kleinen Objekten verbessern und den GC-Overhead in realen Workloads möglicherweise um 10-40 %
senken soll.
Daneben gibt es ein weiteres experimentelles Feature, das Encoding/json/v2-Paket, das eine schnellere Decodierung und eine flexiblere Konfiguration verspricht. Beide sind vorerst opt-in
, um Entwicklern die Möglichkeit zu geben, sie frühzeitig auszuprobieren und Feedback zu geben, bevor sie finalisiert werden.
Go 1.25 bietet außerdem standardmäßig Container-kompatible GOMAXPROCS
, was bedeutet, dass Anwendungen, die in Umgebungen wie Kubernetes laufen, sich automatisch an CPU-Limits anpassen können, ohne dass manuelle Anpassungen erforderlich sind. Darüber hinaus wird der Compiler mit schnelleren Slice-Zuweisungen
und DWARF5-Debug-Informationen
intelligenter, was die Größe der Binärdateien reduziert und das Linking für große Projekte beschleunigt.
Auch den Werkzeugen wurde viel Aufmerksamkeit gewidmet: neue go vet
analyzers, die häufige Fallstricke aufspüren, und verschiedene Verbesserungen der go-Befehle, z. B. die Möglichkeit, Verzeichnisse in go.mod
zu ignorieren oder mit go doc -http
einen lokalen Dokumentationsserver einzurichten. Außerdem gibt es ein brandneues Testing/Synctest-Paket, das das Testen von nebenläufigem Code ohne die üblichen Kopfschmerzen erlaubt.
Und schließlich gibt es wie immer eine ganze Reihe von Verbesserungen in der Standardbibliothek - von kryptographischen Leistungssteigerungen bis hin zu konsistenterem ASN.1-Parsing und neuen Netzwerk- und TLS-Funktionen. Die Unterstützung für ältere macOS-Versionen wird eingestellt, und Go 1.25 markiert den letzten Halt für die kaputte 32-Bit-Windows/ARM-Portierung, bevor sie entfernt wird.
In der Ankündigung oder in den Versionshinweisen finden Sie einen ausführlichen Überblick über alle Änderungen.
Comments