This page summarizes the changes between official stable releases of Go. The change log has the full details.
To update to a specific release, use:
git pull git checkout release-branch
Each major Go release obsoletes and ends support for the previous one. For example, if Go 1.5 has been released, then it is the current release and Go 1.4 and earlier are no longer supported. We fix critical problems in the current release as needed by issuing minor revisions (for example, Go 1.5.1, Go 1.5.2, and so on).
As a special case, we issue minor revisions for critical security problems in both the current release and the previous release. For example, if Go 1.5 is the current release then we will issue minor revisions to fix critical security problems in both Go 1.4 and Go 1.5 as they arise. See the security policy for more details.
Go 1.7 is a major release of Go. Read the Go 1.7 Release Notes for more information.
go1.7.1 (released 2016/09/07) includes fixes to the compiler, runtime,
documentation, and the compress/flate
, hash/crc32
,
io
, net
, net/http
,
path/filepath
, reflect
, and syscall
packages.
See the Go
1.7.1 milestone on our issue tracker for details.
Go 1.6 is a major release of Go. Read the Go 1.6 Release Notes for more information.
go1.6.1 (released 2016/04/12) includes two security fixes. See the Go 1.6.1 milestone on our issue tracker for details.
go1.6.2 (released 2016/04/20) includes fixes to the compiler, runtime, tools,
documentation, and the mime/multipart
, net/http
, and
sort
packages.
See the Go
1.6.2 milestone on our issue tracker for details.
go1.6.3 (released 2016/07/17) includes security fixes to the
net/http/cgi
package and net/http
package when used in
a CGI environment. This release also adds support for macOS Sierra.
See the Go
1.6.3 milestone on our issue tracker for details.
Go 1.5 is a major release of Go. Read the Go 1.5 Release Notes for more information.
go1.5.1 (released 2015/09/08) includes bug fixes to the compiler, assembler, and
the fmt
, net/textproto
, net/http
, and
runtime
packages.
See the Go
1.5.1 milestone on our issue tracker for details.
go1.5.2 (released 2015/12/02) includes bug fixes to the compiler, linker, and
the mime/multipart
, net
, and runtime
packages.
See the Go
1.5.2 milestone on our issue tracker for details.
go1.5.3 (released 2016/01/13) includes a security fix to the math/big
package
affecting the crypto/tls
package.
See the release announcement for details.
go1.5.4 (released 2016/04/12) includes two security fixes. It contains the same fixes as Go 1.6.1 and was released at the same time. See the Go 1.6.1 milestone on our issue tracker for details.
Go 1.4 is a major release of Go. Read the Go 1.4 Release Notes for more information.
go1.4.1 (released 2015/01/15) includes bug fixes to the linker and the log
, syscall
, and runtime
packages.
See the Go 1.4.1 milestone on our issue tracker for details.
go1.4.2 (released 2015/02/17) includes bug fixes to the go
command, the compiler and linker, and the runtime
, syscall
, reflect
, and math/big
packages.
See the Go 1.4.2 milestone on our issue tracker for details.
go1.4.3 (released 2015/09/22) includes security fixes to the net/http
package and bug fixes to the runtime
package.
See the Go 1.4.3 milestone on our issue tracker for details.
Go 1.3 is a major release of Go. Read the Go 1.3 Release Notes for more information.
go1.3.1 (released 2014/08/13) includes bug fixes to the compiler and the runtime
, net
, and crypto/rsa
packages.
See the change history for details.
go1.3.2 (released 2014/09/25) includes bug fixes to cgo and the crypto/tls packages. See the change history for details.
go1.3.3 (released 2014/09/30) includes further bug fixes to cgo, the runtime package, and the nacl port. See the change history for details.
Go 1.2 is a major release of Go. Read the Go 1.2 Release Notes for more information.
go1.2.1 (released 2014/03/02) includes bug fixes to the runtime
, net
, and database/sql
packages.
See the change history for details.
go1.2.2 (released 2014/05/05) includes a security fix that affects the tour binary included in the binary distributions (thanks to Guillaume T).
Go 1.1 is a major release of Go. Read the Go 1.1 Release Notes for more information.
go1.1.1 (released 2013/06/13) includes several compiler and runtime bug fixes. See the change history for details.
go1.1.2 (released 2013/08/13) includes fixes to the gc
compiler
and cgo
, and the bufio
, runtime
,
syscall
, and time
packages.
See the change history for details.
If you use package syscall's Getrlimit
and Setrlimit
functions under Linux on the ARM or 386 architectures, please note change
11803043
that fixes issue 5949.
Go 1 is a major release of Go that will be stable in the long term. Read the Go 1 Release Notes for more information.
It is intended that programs written for Go 1 will continue to compile and run correctly, unchanged, under future versions of Go 1. Read the Go 1 compatibility document for more about the future of Go 1.
The go1 release corresponds to
weekly.2012-03-27
.
go1.0.1 (released 2012/04/25) was issued to fix an escape analysis bug that can lead to memory corruption. It also includes several minor code and documentation fixes.
go1.0.2 (released 2012/06/13) was issued to fix two bugs in the implementation of maps using struct or array keys: issue 3695 and issue 3573. It also includes many minor code and documentation fixes.
go1.0.3 (released 2012/09/21) includes minor code and documentation fixes.
See the go1 release branch history for the complete list of changes.
See the Pre-Go 1 Release History page for notes on earlier releases.