RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Go開發(fā)團(tuán)隊正式宣布推出Go 1.11版本

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-08-27 09:03 ? 次閱讀

Go開發(fā)團(tuán)隊正式宣布推出Go 1.11版本。新版本在工具鏈、運行時和庫等方面有很多變化和改進(jìn),特別是增加了模塊支持和WebAssembly支持兩個新特性。

今天,Go開發(fā)團(tuán)隊宣布推出Go 1.11正式版。

下載地址:https://golang.org/dl

這距離Go 1.10的發(fā)布已經(jīng)過去六個月。

新版本在工具鏈、運行時和庫等方面有很多變化和改進(jìn),兼容性方面也依然會兼容舊版本。此外,新版本增加了兩個最激動人心的新特性:對模塊(modules)和WebAssembly的支持。

模塊、軟件包版本控制和依賴關(guān)系管理

Go 1.11版本增加了對“模塊”(modules)這個新概念的初步支持,這是GOPATH的替代方案,集成了對版本控制和軟件包分發(fā)的支持。

使用modules,開發(fā)人員將不再局限于在GOPATH中工作,版本依賴性信息是顯式而且輕量級的,并且構(gòu)建項更具可靠性和可重復(fù)性。

模塊支持功能目前仍處于實驗性階段,根據(jù)Go 1.11用戶的反饋,細(xì)節(jié)可能會發(fā)生變化,Go開發(fā)團(tuán)隊也在計劃增加更多工具。模塊支持可能仍有一些可能影響使用的問題,因此請充分利用問題跟蹤器進(jìn)行反饋或查閱解決方案。

WebAssembly

Go 1.11還為WebAssembly(js/wasm)添加了一個實驗端口。這允許程序員將Go程序編譯為與四種主流Web瀏覽器兼容的二進(jìn)制格式。

目前,Go程序編譯為一個WebAssembly模塊,該模塊包括Go runtime,用于goroutine scheduling,garbage collection,maps等。因此,其大小至少約為2 MB,或壓縮為500 KB。Go程序可以使用新的實驗性syscall/js包調(diào)用JavaScript。二進(jìn)制大小和與其他語言的互操作還不是優(yōu)先級的,但可能在將來的版本中解決。

由于添加了新的GOOS值“js”和GOARCH值“wasm”,Go工具現(xiàn)在將忽略名為* _js.go或* _wasm.go的Go文件,除非使用了那些GOOS/GOARCH值。如果你的現(xiàn)有文件名與這些模式一致,則需要重命名它們。

你可以在webassembly.org上閱讀有關(guān)WebAssembly(縮寫為“Wasm”)的更多信息,并查看這個Wiki頁面,了解如何開始使用Wasm with Go。

其他工具

導(dǎo)入路徑限制

由于 Go 模塊支持在命令行操作中為符號@指定了特殊含義,因此該Go命令現(xiàn)在不允許使用包含@符號的導(dǎo)入路徑。goget從未允許這種導(dǎo)入路徑,因此該限制只會影響用戶通過其他方式構(gòu)建自定義 GOPATH 樹。

Package 加載

新的軟件包golang.org/x/tools/go/packages提供了一個簡單的API來定位和加載Go源代碼包。雖然它還不是標(biāo)準(zhǔn)庫的一部分,但對于許多任務(wù),它有效地替代了go/build包,后者的API無法完全支持模塊。這個AIP支持構(gòu)建分析工具,這些工具與Bazel和Buck等替代構(gòu)建系統(tǒng)同樣有效。

構(gòu)建緩存要求

Go 1.11 將是支持設(shè)置環(huán)境變量GOCACHE=off以禁用構(gòu)建緩存的最后一個版本。從 Go 1.12 開始,將需要構(gòu)建緩存,作為消除$GOPATH/pkg的步驟。

編譯器工具鏈

默認(rèn)情況下,現(xiàn)在更多函數(shù)可以進(jìn)行內(nèi)聯(lián),包括調(diào)用panic的函數(shù)。編譯器工具鏈現(xiàn)在支持行指令中的列信息。引入了新的包導(dǎo)出數(shù)據(jù)格式。

匯編

匯編程序amd64現(xiàn)在接受 AVX512 指令。

調(diào)試

編譯器現(xiàn)在可以為優(yōu)化的二進(jìn)制文件生成更精確的調(diào)試信息,包括可變位置信息、行號和斷點位置。這將使調(diào)試沒有-N -l編譯的二進(jìn)制文件成為可能。Go 1.11添加了在調(diào)試器中調(diào)用Go函數(shù)的實驗性支持。

測試

從Go 1.10開始,Go test命令在被測試的包上運行Go vet,以便在運行測試之前識別問題。因為vet在運行前用go/type檢查代碼,所以不檢查類型的測試將會失敗。

Vet

go vet命令現(xiàn)在在分析包未進(jìn)行類型檢查時會報告致命錯誤。一起,類型檢查錯誤只會導(dǎo)致打印警告,并以狀態(tài)1退出vet。

跟蹤

使用新的runtime/trace包的用戶注釋API,用戶可以在執(zhí)行跟蹤中記錄應(yīng)用程序級別的信息,并創(chuàng)建相關(guān)的goroutines組。go tool trace這個命令在跟蹤視圖和新用戶任務(wù)/區(qū)域分析頁面中顯示此信息。

Runtime

runtime現(xiàn)在使用稀疏堆布局,因此不再限制Go堆的大小(以前的限制是512GiB)。這也解決了使用-race編譯的混合Go/C二進(jìn)制文件或二進(jìn)制文件中的“address space conflict”故障。

在macOS和iOS上,運行時現(xiàn)在使用libSystem.so,而不是直接調(diào)用內(nèi)核。這應(yīng)該使Go二進(jìn)制文件與未來版本的macOS和iOS更加兼容。syscall package仍然可以進(jìn)行直接的系統(tǒng)調(diào)用。

此外,Go 1.11正式版對核心庫也有更改,不過所有更改都比較小。具體請見Release Notes。

Google 的 Go 工程師AndrewBonventre在博客中特別感謝了Richard Musiol為WebAssembly端口做出的貢獻(xiàn),以及感謝為這個新版本做出貢獻(xiàn)的所有人,包括編寫代碼,提交錯誤,提供反饋和/或測試測試版和發(fā)布候選版本。如果你在使用中發(fā)現(xiàn)任何問題,請?zhí)峤粏栴}。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 模塊
    +關(guān)注

    關(guān)注

    7

    文章

    2695

    瀏覽量

    47431
  • Go
    Go
    +關(guān)注

    關(guān)注

    0

    文章

    43

    瀏覽量

    12248
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1623

    瀏覽量

    49108

原文標(biāo)題:入坑搞定Python多種任務(wù),Go 1.11 新版本正式發(fā)布!

文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    影目科技發(fā)布全球首款同傳翻譯眼鏡INMO GO2

    近日,搭載紫光展銳W517芯片平臺的INMO GO2由影目科技正式推出。作為全球首款專為商務(wù)場景設(shè)計的智能翻譯眼鏡,INMO GO2 以“快、準(zhǔn)、穩(wěn)”三大核心優(yōu)勢,突破傳統(tǒng)翻譯產(chǎn)品局限,為全球商務(wù)人士帶來高效、自然、穩(wěn)定的跨語言
    的頭像 發(fā)表于 12-11 10:00 ?174次閱讀

    在學(xué)習(xí)go語言的過程踩過的坑

    作為一個5年的phper,這兩年公司和個人都在順應(yīng)技術(shù)趨勢,新項目慢慢從php轉(zhuǎn)向了go語言,從2021年到現(xiàn)在,筆者手上也先后開發(fā)了兩個go項目。在學(xué)習(xí)go語言的過程中也學(xué)習(xí)并總結(jié)了
    的頭像 發(fā)表于 11-11 09:22 ?158次閱讀

    go語言如何解決并發(fā)問題

    作為一個后端開發(fā),日常工作中接觸最多的兩門語言就是PHP和GO了。無可否認(rèn),PHP確實是最好的語言(手動狗頭哈哈),寫起來真的很舒爽,沒有任何心智負(fù)擔(dān),字符串和整型壓根就不用區(qū)分,開發(fā)速度真的是比
    的頭像 發(fā)表于 10-23 13:38 ?133次閱讀
    <b class='flag-5'>go</b>語言如何解決并發(fā)問題

    三十分鐘入門基礎(chǔ)Go Java小子版

    前言 Go語言定義 Go(又稱 Golang)是 Google 的 Robert Griesemer,Rob Pike 及 Ken Thompson 開發(fā)的一種靜態(tài)、強(qiáng)類型、編譯型語言。Go
    的頭像 發(fā)表于 08-12 14:32 ?721次閱讀
    三十分鐘入門基礎(chǔ)<b class='flag-5'>Go</b> Java小子版

    聯(lián)想將推出搭載AMD Z1系列處理器的Legion Go拯救者掌機(jī)“Lite”版

     據(jù)WindowsCentral報道,相關(guān)知情人士透露,聯(lián)想正研發(fā)Legion Go拯救者掌機(jī)的“Lite”版本,將采用AMD Z1系列處理器,性能較上一代有所提升。
    的頭像 發(fā)表于 05-27 17:45 ?814次閱讀

    求助,關(guān)于PSoC4000S POWER_DRILL2GO下降壓擺率的疑問求解

    我不確定來自哪個版本,但數(shù)據(jù)表中列出了 PSoC4000S POWER_DRILL2GO下降壓擺率。(1V/ms 最小,最大 67V/ms) 目前的設(shè)計并不能滿足這個要求
    發(fā)表于 05-21 08:14

    請問STVP+COSMIC環(huán)境下的go to definition怎么用?

    STVP+COSMIC環(huán)境下的go to definition怎么用? 我現(xiàn)在go to definition在一個宏定義的時候有效果,但是函數(shù)什么的沒用,是怎么回事呢,是不是工程里面沒有設(shè)置好,求大家?guī)蛶兔Γ?/div>
    發(fā)表于 05-11 06:11

    為什么無法使用STVD右鍵跳轉(zhuǎn)到Go to definition of功能?

    我的STVD右鍵跳轉(zhuǎn)到 Go to definition of xx功能不能用 跳轉(zhuǎn)不過去 是怎么回事 找函數(shù)好麻煩
    發(fā)表于 05-08 08:28

    關(guān)于go中接口類型的表示方法

    go是一個靜態(tài)性語言,每個變量都有靜態(tài)的類型,因此每個變量在編譯階段中有明確的變量類型,比如像:int、float32、MyType。
    的頭像 發(fā)表于 04-28 10:13 ?363次閱讀

    在CYT4BF中從Deepsleep轉(zhuǎn)換到Active時,POWER_DRILL2GO的穩(wěn)定時間是多少?

    我想知道 CYT4BF 中從 DeepSleep 轉(zhuǎn)換到 Active 時核心POWER_DRILL2GO穩(wěn)定時間。 我根據(jù)數(shù)據(jù)表中的時鐘檢查了POWER_DRILL2GO模式轉(zhuǎn)換時間。 并且在
    發(fā)表于 03-06 07:58

    PMG1 PoR復(fù)位時POWER_DRILL2GO什么時候進(jìn)入?

    我有兩個關(guān)于 PMG1 PoR 的問題。 1.復(fù)位時POWER_DRILL2GO什么時候進(jìn)入? 也許您想在電壓低于預(yù)設(shè)值時強(qiáng)制 EZ-PD? PMG1-S1 MCU 設(shè)備復(fù)位
    發(fā)表于 03-06 06:03

    Arduino IDE中是否有與Xmc2Go兼容的LoRaWAN庫?

    我想問一下 Arduino IDE 中是否有與 Xmc2Go 兼容的 LoRaWAN 庫? 我正在嘗試使用連接到 Xmc2Go 的 RFM95W Lora 模塊通過 LoRaWAN 將數(shù)據(jù)傳輸
    發(fā)表于 02-27 06:05

    MiniProg4在POWER_DRILL2GO周期后失去與PC的連接的原因?

    你好我使用 MiniProg4 作為 I2C 橋接器(通過 12 引腳)和 PSoC? 編程器(通過 5 引腳端口)。 我正在用 Python 開發(fā)一個代碼,以控制 MiniProg4 和用于
    發(fā)表于 01-19 07:55

    請問復(fù)制BSP的文件為何無法go def跳轉(zhuǎn)是灰色?

    請問復(fù)制BSP的文件為何無法go def跳轉(zhuǎn)是灰色 路徑并無中文,也無數(shù)字開頭。。。 請大家看看是為何
    發(fā)表于 01-15 07:51

    Go配置TM 軟件中心用戶指南

    電子發(fā)燒友網(wǎng)站提供《Go配置TM 軟件中心用戶指南.pdf》資料免費下載
    發(fā)表于 01-03 09:48 ?0次下載
    <b class='flag-5'>Go</b>配置TM 軟件中心用戶指南
    RM新时代网站-首页