Go 部落格
Go 1.17 釋出
Go 團隊很高興今天釋出 Go 1.17,您可以透過訪問下載頁面獲取。
此次釋出為編譯器帶來了額外的改進,即傳遞函式引數和返回值的新方法。此更改使 Go 程式效能提高了約 5%,並在 amd64 平臺上將二進位制檔案大小減小了約 2%。未來版本將支援更多平臺。
Go 1.17 還增加了對Windows 上的 64 位 ARM 架構的支援,讓 gophers 可以在更多裝置上原生執行 Go。
我們還在本次釋出中引入了修剪模組圖。在其 go.mod 檔案中指定 go 1.17 或更高版本的模組,其模組圖將僅包含其他 Go 1.17 模組的直接依賴項,而不是其完整的傳遞依賴項。這有助於避免下載或讀取無關依賴項的 go.mod 檔案,從而節省日常開發時間。
Go 1.17 附帶了三個對語言的小改動。前兩個是在 unsafe 包中的新函式,使程式更容易符合 unsafe.Pointer 規則:unsafe.Add 允許更安全的指標算術,而 unsafe.Slice 允許更安全地將指標轉換為切片。第三個改動是對語言型別轉換規則的擴充套件,允許從切片轉換為陣列指標,前提是切片在執行時至少與陣列一樣大。
最後,還有許多其他改進和錯誤修復,包括 crypto/x509 的驗證改進,以及對URL 查詢解析的修改。有關更改的完整列表以及有關上述改進的更多資訊,請參閱完整發布說明。
感謝所有透過編寫程式碼、提交 bug、分享反饋以及測試 beta 版和 release candidate 版為本次釋出做出貢獻的人。您的努力幫助確保 Go 1.17 儘可能穩定。一如既往,如果您發現任何問題,請提交 issue。
我們希望您喜歡這個新版本!
下一篇文章:整理 Go Web 體驗
上一篇文章:Stack Overflow 上的 Go Collective
部落格索引