Programmiersprache: Go 1.13 ist da und setzt standardmäßig auf TLS 1.3

Google hat am 3. September 2019 Version 1.13 der Programmiersprache Go veröffentlicht. Das Release erscheint rund sechs Monate nach Go 1.12 und bringt eine überarbeitete Zahlenliteral-Syntax, standardmäßig aktives TLS 1.3 sowie deutliche Verbesserungen am Modulsystem.

Die auffälligste Sprachänderung betrifft die Zahlenliterale. Das Go-Team hat die Präfixe für Binär- und Oktalwerte eingeführt: 0b und 0B für binäre Integerliterale, 0o oder 0O für oktale. Fließkommazahlen im Hexadezimalsystem verwenden 0x oder 0X, zum Beispiel 0x1.0p-1021. Ziffernfolgen dürfen außerdem mit einem Unterstrich als Trennzeichen gegliedert werden, etwa 1_000_000 für eine Million. Das entspricht einem bereits verabschiedeten Vorschlag des Go-Teams. Gleichzeitig entfällt die bisherige Einschränkung, dass Shift Counts vorzeichenlos sein müssen; das erübrigt viele künstliche uint-Konvertierungen.

TLS 1.3 und Go-Module

Das crypto/tls-Paket aktiviert TLS 1.3 jetzt standardmäßig. Wer vorübergehend auf das ältere Verhalten zurückwechseln muss, kann über den Wert tls13=0 in der GODEBUG-Umgebungsvariable ausweichen. Diese Option fällt mit Go 1.14 weg. Für Dienste mit Netzwerkschnittstellen, darunter viele Backend-Systeme für Spiele und Online-Plattformen, ist der Wechsel ohne Codeänderungen wirksam.

Beim Modulsystem lädt der go-Befehl Abhängigkeiten jetzt standardmäßig über den Go Module Mirror herunter und prüft sie gegen die Go-Checksum-Datenbank. Die neue Umgebungsvariable GOPRIVATE gibt Modulpfade an, die nicht über den öffentlichen Mirror laufen sollen, und dient als übergeordneter Standardwert für GONOPROXY und GONOSUMDB. Das Verhalten von go get -u wurde ebenfalls angepasst: Das Update beschränkt sich jetzt auf den tatsächlich verwendeten Abhängigkeitssatz, nicht mehr auf alle transitiven Anforderungen. Die vollständigen Release Notes zu Go 1.13 listen weitere Änderungen an Standardbibliothek und Toolchain auf. Das Go-Projekt und seine Sprachentwicklung sind auf GitHub einsehbar. Go 1.13 setzt die Entwicklungslinie fort, die mit Go 1.8 ein neues Compiler-Backend für alle Architekturen einführte.

Weitere News

Weitere News

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein