Golang 1.11.4和1.10.7版本正式发布

Golang 1.11.4和1.10.7版本正式发布 收到邮件内容如下…

亲爱的 Gopher 们:

我们刚刚发布了 Go 1.11.4 和 1.10.7 版本,这两个都是小型补丁版本。

这些版本修复了 cgo、编译器、链接器、运行时、文档、go 命令以及 net/http 和 go/types 包中的问题。它们还修复了在 Go 1.11.3 和 Go 1.10.6 中引入的一个错误,该错误导致包含 “…” 的导入路径模式无法执行 “go get”。

查看发布说明以获取更多信息:
https://golang.org/doc/devel/release.html#go1.11.minor

您可以从 Go 官网下载二进制和源代码发行版:
https://golang.org/dl/

如果通过 Git 克隆编译源代码,请使用以下命令更新到该版本:

git checkout go1.11.4

然后照常进行构建。

感谢所有为本次发布做出贡献的人。

下次再见,
Go 团队 Filippo


更多关于Golang 1.11.4和1.10.7版本正式发布的实战教程也可以访问 https://www.itying.com/category-94-b0.html

1 回复

更多关于Golang 1.11.4和1.10.7版本正式发布的实战系列教程也可以访问 https://www.itying.com/category-94-b0.html


Go 1.11.4 和 1.10.7 的发布主要解决了几个关键问题,特别是修复了 go get 在处理包含 "..." 的导入路径模式时的错误。以下是一个示例,展示在修复前可能遇到的问题以及如何验证修复:

在 Go 1.11.3 或 1.10.6 中,尝试使用 go get 获取一个包含通配符的包可能会失败。例如,假设有一个模块路径包含 ...

go get github.com/example/project/...

在旧版本中,这个命令可能无法正确执行,导致错误如 “pattern …: invalid use of …”。现在,在 1.11.4 或 1.10.7 中,这个操作应该正常完成。

此外,这些版本还修复了 net/http 包中的问题。例如,在之前的版本中,处理某些 HTTP 请求时可能出现竞争条件或内存泄漏。以下是一个简单的 HTTP 服务器代码示例,用于演示修复后的稳定性:

package main

import (
    "fmt"
    "net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, Gopher! Running on Go %s\n", r.URL.Path)
}

func main() {
    http.HandleFunc("/", handler)
    fmt.Println("Starting server on :8080")
    err := http.ListenAndServe(":8080", nil)
    if err != nil {
        fmt.Printf("Server failed: %v\n", err)
    }
}

在 Go 1.11.4 中,这个服务器在处理并发请求时应该更稳定,减少了之前版本中可能出现的运行时错误。

要升级到新版本,请从 https://golang.org/dl/ 下载二进制文件,或使用 Git 命令切换到相应标签后重新构建。例如:

git checkout go1.11.4
./all.bash

这些修复提升了整体可靠性和性能,建议用户尽快更新以避免已知问题。

回到顶部