第6章 Go Toolset 1.24 の変更点
Go Toolset は、RHSA-2025:10677 アドバイザリーのリリースでバージョン 1.24.4 に更新されました。
言語:
- 汎用型エイリアスが完全にサポートされるようになり、汎用的な柔軟性を高めるために型エイリアスをパラメーター化できるようになりました。
ツール:
-
Go モジュールシステムは、
go.mod
ファイルのツール
ディレクティブをサポートし、実行可能な依存関係の直接管理を可能にします。 -
go build
、go install
、およびgo テスト
コマンドが、構造化された出力の the-json
フラグをサポートするようになりました。 -
新規の
GOAUTH
環境変数により、プライベートモジュールの認証が強化されます。
-
Go モジュールシステムは、
ランタイムおよびパフォーマンス:
- ランタイムの改善により、CPU オーバーヘッドの平均で 2 ~ 3% 削減されます。
- 注目すべき変更には、Swiss Tablesテーブルに基づく新しいマップ実装や、より効率的なメモリー割り当てが含まれます。
標準ライブラリー:
-
新しい
os.Root
タイプは、ディレクトリーが制限されたファイルシステムアクセスを有効にします。 -
testing.B.Loop
メソッドにより、ベンチマークが改善されました。 -
runtime.AddCleanup
関数は、より柔軟なファイナライズメカニズムを提供します。 -
新しい
弱いパッケージにより、弱い
ポインターが導入されました。
-
新しい
暗号:
-
クォンタム後の鍵交換(
crypto/mlkem
)、HKDF、PBKDF2、および SHA-3 用の新規パッケージが利用可能になりました。 - Go Cryptographic Module は、FIPS 140-3 認定についてレビューされるようになりました。
-
クォンタム後の鍵交換(
追加更新:
-
vet
ツールには、テストおよび例の一般的なエラーを検出するための新しいアナライザーが含まれています。 - objdump ツールが、より多くのアーキテクチャーをサポートするようになりました。
-
Cgo
では、パフォーマンスと正確性を向上させるアノテーションが導入されています。
-
詳細は、upstream release notes を参照してください。
Go Toolset は Rolling Application Stream であり、Red Hat は最新バージョンのみをサポートします。詳細は、Red Hat Enterprise Linux Application Streams ライフサイクル ドキュメントを参照してください。