Every release, what shipped in it, and whether it's worth an unscheduled upgrade.
go1.27.0
Go 1.27 adds generic methods and other small language refinements, ships new encoding/json/v2, post-quantum crypto/mldsa, and experimental SIMD packages, speeds up small allocations, and makes goroutine leak profiling generally available—an incremental, compatibility-preserving upgrade.
August 19, 2026
go1.26.7
Contains fixes to the net/http package.
August 19, 2026
go1.25.14
A minimal release containing only fixes to the net/http package.
August 19, 2026
go1.26.6
Delivers security fixes for the go command, crypto/tls, encoding/asn1, encoding/xml, html/template, net, net/http, and net/url, plus bug fixes.
August 13, 2026
go1.25.13
Ships security fixes to the go command and packages like crypto/tls, html/template, and net/url, plus compiler and runtime bug fixes.
August 13, 2026
go1.26.5
Fixes security issues in crypto/tls and os, plus bug fixes to the compiler, runtime, go command, net, os, and syscall.
July 7, 2026
go1.25.12
Includes security fixes to crypto/tls and os, along with bug fixes to the compiler, go command, and net and os packages.
July 7, 2026
go1.26.4
Patches security issues in crypto/x509, mime, and net/textproto, along with bug fixes to the compiler, runtime, go fix, and crypto/fips140.
June 2, 2026
go1.25.11
Fixes security issues in crypto/x509, mime, and net/textproto, plus bug fixes to the compiler and runtime.
June 2, 2026
go1.26.3
Includes security fixes for the go command, pack tool, html/template, net, net/http, net/http/httputil, net/mail, and syscall, plus bug fixes.
May 7, 2026
go1.25.10
A broad release with security fixes to the go command, pack tool, and networking packages, plus compiler, linker, and runtime bug fixes.
May 7, 2026
go1.26.2
Adds security fixes to the go command, compiler, archive/tar, crypto/tls, crypto/x509, html/template, and os, alongside several bug fixes.
April 7, 2026
go1.25.9
Provides security fixes to the go command, compiler, and packages like crypto/tls, crypto/x509, and html/template, plus runtime bug fixes.
April 7, 2026
go1.26.1
Ships security fixes for crypto/x509, html/template, net/url, and os, plus bug fixes to the go command, go fix, the compiler, os, and reflect.
March 6, 2026
go1.25.8
Delivers security fixes to html/template, net/url, and os, along with bug fixes to the go command, compiler, and os.
March 6, 2026
go1.26.0
Go 1.26 adds two small language extensions (new(expr), self-referential generic constraints), a rewritten go fix with automated "modernizers," a default-on Green Tea GC (10-40% less GC overhead), faster cgo calls, heap-address randomization, and tighter crypto/net defaults — all compatible with existing code.
February 10, 2026
go1.25.7
Includes security fixes to the go command and crypto/tls, plus bug fixes to the compiler and crypto/x509 package.
February 4, 2026
go1.24.13
Fixes security issues in the go command and crypto/tls package, plus bug fixes to crypto/x509.
February 4, 2026
go1.25.6
Adds security fixes to the go command plus archive/zip, crypto/tls, and net/url, along with compiler, runtime, and library bug fixes.
January 15, 2026
go1.24.12
Fixes security issues in the go command, archive/zip, crypto/tls, and net/url, plus bugs in the compiler, runtime, crypto/tls, and os.
January 15, 2026
go1.25.5
Patches two security issues in crypto/x509 and fixes bugs in the mime and os packages.
December 2, 2025
go1.24.11
Fixes two security issues in crypto/x509 plus bug fixes to the runtime.
December 2, 2025
go1.25.4
Fixes the compiler, runtime, and the crypto/subtle, encoding/pem, net/url, and os packages.
November 5, 2025
go1.24.10
Fixes issues in the encoding/pem and net/url packages.
November 5, 2025
go1.25.3
A small release containing only fixes to the crypto/x509 package.
October 13, 2025
go1.24.9
Fixes issues in the crypto/x509 package.
October 13, 2025
go1.25.2
Ships security fixes across nine packages including crypto/tls, crypto/x509, and net/http, plus assorted compiler, runtime, and library bug fixes.
October 7, 2025
go1.24.8
Fixes security issues across archive/tar, crypto/tls, crypto/x509, encoding/asn1, encoding/pem, net/http, net/mail, net/textproto, and net/url.
October 7, 2025
go1.25.1
Delivers security fixes for net/http plus bug fixes for the go command and the net, os, os/exec, and testing/synctest packages.
September 3, 2025
go1.24.7
Delivers non-security fixes to the go command and the net and os/exec packages.
September 3, 2025
go1.25.0
Go 1.25 has no language changes but adds container-aware GOMAXPROCS, an experimental low-overhead garbage collector, DWARF5 debug info by default, and a compiler bugfix that makes some previously-passing but spec-violating nil-check code now panic. It also graduates testing/synctest to stable and adds an experimental encoding/json/v2.
August 12, 2025
go1.24.6
Fixes security issues in database/sql and os/exec, plus bug fixes to the runtime.
August 6, 2025
go1.23.12
Security fixes for database/sql and os/exec packages, plus bug fixes to the runtime.
August 6, 2025
go1.24.5
Fixes a go command security issue and bugs in the compiler, linker, runtime, and the go command itself.
July 8, 2025
go1.23.11
Security fix for the go command, plus bug fixes to the compiler, the linker, and the runtime.
July 8, 2025
go1.24.4
Fixes security issues in crypto/x509, net/http, and os, plus bugs in the linker, go command, hash/maphash, and os.
June 5, 2025
go1.23.10
Security fixes for net/http and os packages, plus bug fixes to the linker.
June 5, 2025
go1.24.3
Fixes an os package security issue and bugs in the runtime, compiler, linker, go command, and crypto/tls and os packages.
May 6, 2025
go1.23.9
Fixes to the runtime and the linker.
May 6, 2025
go1.24.2
Fixes a net/http security issue and bugs in the compiler, runtime, go command, crypto/tls, go/types, net/http, and testing.
April 1, 2025
go1.23.8
Security fix for net/http, plus bug fixes to the runtime and the go command.
April 1, 2025
go1.24.1
Fixes a net/http security issue and bugs in cgo, the compiler, the go command, and the reflect, runtime, and syscall packages.
March 4, 2025
go1.23.7
Security fix for net/http, plus bug fixes to cgo, the compiler, and the reflect, runtime, and syscall packages.
March 4, 2025
go1.24.0
Go 1.24 (Feb 2025) is mostly a toolchain/runtime/library release: full generic type aliases, go.mod tool dependency tracking, faster maps and allocator, a new os.Root sandboxed filesystem API, testing.B.Loop, weak pointers, and new post-quantum/FIPS-oriented crypto packages, all under the usual Go 1 compatibility guarantee.
February 11, 2025
go1.23.6
Security fix for crypto/elliptic, plus bug fixes to the compiler and the go command.
February 4, 2025
go1.22.12
A security fix for crypto/elliptic, plus bug fixes to the compiler and the go command.
February 4, 2025
go1.23.5
Security fixes for crypto/x509 and net/http, plus bug fixes to the compiler, runtime, and net package.
January 16, 2025
go1.22.11
Security fixes for crypto/x509 and net/http, plus bug fixes to the runtime.
January 16, 2025
go1.23.4
Fixes to the compiler, the runtime, the trace command, and the syscall package.
December 3, 2024
go1.22.10
Fixes to the runtime and the syscall package.
December 3, 2024
go1.23.3
Fixes to the linker, the runtime, and the net/http, os, and syscall packages.
November 6, 2024
go1.22.9
Fixes to the linker.
November 6, 2024
go1.23.2
Fixes to the compiler, cgo, the runtime, and the maps, os, os/exec, time, and unique packages.
October 1, 2024
go1.22.8
Fixes to cgo, and the maps and syscall packages.
October 1, 2024
go1.23.1
Security fixes for encoding/gob, go/build/constraint, and go/parser, plus bug fixes to the compiler, go command, runtime, and other packages.
September 5, 2024
go1.22.7
Security fixes for encoding/gob, go/build/constraint, and go/parser, plus bug fixes to the fix command and the runtime.
September 5, 2024
go1.23.0
Go 1.23 adds range-over-func iterators as a language feature, a preview of generic type aliases, an opt-in telemetry system, new unique/iter/structs packages, and changes Timer/Ticker GC and channel behavior (version-gated via go.mod).
August 13, 2024
go1.22.6
Bug fixes to the go command, compiler, linker, trace command, covdata command, and the bytes, go/types, and os/exec packages.
August 6, 2024
go1.21.13
Includes fixes to the go command, the covdata command, and the bytes package.
August 6, 2024
go1.22.5
A security fix for net/http, plus bug fixes to the compiler, cgo, go command, linker, runtime, crypto/tls, go/types, net, net/http, and os/exec.
July 2, 2024
go1.21.12
Fixes a security issue in net/http, plus bug fixes across the compiler, go command, runtime, crypto/x509, net/http, net/netip, and os.
July 2, 2024
go1.22.4
Security fixes for archive/zip and net/netip, plus bug fixes to the compiler, go command, linker, runtime, and os package.
June 4, 2024
go1.21.11
Fixes security issues in archive/zip and net/netip, plus bug fixes to the compiler, go command, runtime, and os package.
June 4, 2024
go1.22.3
Security fixes for the go command and net package, plus bug fixes to the compiler, runtime, and net/http.
May 7, 2024
go1.21.10
Fixes security issues in the go command plus bug fixes to the net/http package.
May 7, 2024
go1.22.2
A security fix for net/http, plus bug fixes to the compiler, go command, linker, encoding/gob, go/types, net/http, and runtime/trace.
April 3, 2024
go1.21.9
Fixes a security issue in net/http plus bug fixes to the linker, go/types, and net/http.
April 3, 2024
go1.22.1
Security fixes for crypto/x509, html/template, net/http, net/http/cookiejar, and net/mail, plus bug fixes across the compiler, go command, runtime, trace, go/types, and net/http.
March 5, 2024
go1.21.8
Fixes security issues in crypto/x509, html/template, net/http, net/http/cookiejar, and net/mail, plus go command and runtime bug fixes.
March 5, 2024
go1.22.0
Go 1.22 changes for-loop semantics so each iteration gets its own variables, adds range-over-integers, and ships math/rand/v2 plus method/wildcard-based net/http routing, alongside PGO devirtualization gains, new vet checks, and a rebuilt execution tracer.
February 6, 2024
go1.21.7
Includes bug fixes to the compiler, the go command, the runtime, and the crypto/x509 package.
February 6, 2024
go1.20.14
Fixes to the crypto/x509 package.
February 6, 2024
go1.21.6
Includes bug fixes to the compiler, runtime, and the crypto/tls, maps, and runtime/pprof packages.
January 9, 2024
go1.20.13
Fixes to the runtime and the crypto/tls package.
January 9, 2024
go1.21.5
Fixes security issues in the go command, net/http, and path/filepath, plus bug fixes across several packages.
December 5, 2023
go1.20.12
Security fixes for the go command and the net/http and path/filepath packages, plus bug fixes to the compiler and go command.
December 5, 2023
go1.21.4
Fixes a security issue in path/filepath plus bug fixes to the linker, runtime, compiler, go/types, net/http, and runtime/cgo.
November 7, 2023
go1.20.11
Security fixes for the path/filepath package, plus bug fixes to the linker and the net/http package.
November 7, 2023
go1.21.3
Delivers a single security fix to the net/http package.
October 10, 2023
go1.20.10
A security fix for the net/http package.
October 10, 2023
go1.21.2
Fixes one security issue in cmd/go along with bug fixes to the compiler, go command, linker, runtime, and runtime/metrics.
October 5, 2023
go1.20.9
One security fix for the cmd/go package, plus bug fixes to the go command and the linker.
October 5, 2023
go1.21.1
Fixes four security issues in cmd/go, crypto/tls, and html/template, plus bug fixes across the compiler, linker, runtime, and several packages.
September 6, 2023
go1.20.8
Two security fixes for html/template, plus bug fixes to the compiler, go command, runtime, and crypto/tls, go/types, net/http, and path/filepath packages.
September 6, 2023
go1.19.13
Fixes to the go command and the crypto/tls and net/http packages, with no security fixes mentioned.
September 6, 2023
go1.21.0
Go 1.21 adds min/max/clear builtins, much stronger generics type inference, and a formally defined package init order, while overhauling toolchain handling so go.mod's go line is a strict minimum and GODEBUG preserves old behavior on upgrade. It also ships log/slog, slices, maps, and cmp packages, production-ready PGO, and notable GC latency improvements.
August 8, 2023
go1.20.7
A security fix for crypto/tls, along with bug fixes to the assembler and the compiler.
August 1, 2023
go1.19.12
A security fix for the crypto/tls package plus bug fixes to the assembler and the compiler.
August 1, 2023
go1.20.6
A security fix for net/http, plus bug fixes across the compiler, cgo, cover tool, go command, runtime, and several other packages.
July 11, 2023
go1.19.11
A security fix for net/http plus bug fixes to cgo, the cover tool, the go command, the runtime, and go/printer.
July 11, 2023
go1.20.5
Four security fixes for cmd/go and the runtime, plus bug fixes to the compiler, go command, runtime, and crypto/rsa, net, and os packages.
June 6, 2023
go1.19.10
Four security fixes to the cmd/go and runtime packages plus bug fixes to the compiler, go command, and runtime.
June 6, 2023
go1.20.4
Three security fixes for html/template, plus bug fixes to the compiler, runtime, and the crypto/subtle, crypto/tls, net/http, and syscall packages.
May 2, 2023
go1.19.9
Three security fixes to html/template plus bug fixes to the compiler, runtime, crypto/tls, and syscall packages.
May 2, 2023
go1.20.3
Security fixes for go/parser, html/template, mime/multipart, net/http, and net/textproto, plus bug fixes to the compiler, linker, runtime, and time package.
April 4, 2023
go1.19.8
Security fixes for go/parser, html/template, mime/multipart, net/http, and net/textproto, plus bug fixes to the linker, runtime, and time.
April 4, 2023
go1.20.2
A security fix for crypto/elliptic, along with bug fixes to the compiler, covdata, linker, runtime, and several crypto/os/syscall packages.
March 7, 2023
go1.19.7
A security fix for the crypto/elliptic package plus bug fixes to the linker, runtime, crypto/x509, and syscall packages.
March 7, 2023
go1.20.1
Security fixes for crypto/tls, mime/multipart, net/http, and path/filepath, plus bug fixes to the compiler, go command, linker, runtime, and time package.
February 14, 2023
go1.19.6
Security fixes for crypto/tls, mime/multipart, net/http, and path/filepath, plus bug fixes to the go command, linker, runtime, crypto/x509, net/http, and time.
February 14, 2023
go1.20.0
Go 1.20 has no major new language syntax but brings a preview of profile-guided optimization, coverage instrumentation for full binaries, cgo-disabled-by-default builds, multi-error wrapping (errors.Join), and several crypto packages moving to slower but constant-time implementations.
February 1, 2023
go1.19.5
Bug fixes to the compiler, linker, and the crypto/x509, net/http, sync/atomic, and syscall packages, with no security fixes noted.
January 10, 2023
go1.18.10
Bug fixes only, covering cgo, the compiler, the linker, and the crypto/x509, net/http, and syscall packages, with no security fixes noted.
January 10, 2023
go1.19.4
Security fixes for net/http and os, plus bug fixes to the compiler, runtime, crypto/x509, os/exec, and sync/atomic.
December 6, 2022
go1.18.9
Security fixes for net/http and os packages, plus bug fixes to cgo, the compiler, runtime, and crypto/x509 and os/exec packages.
December 6, 2022
go1.19.3
Security fixes for os/exec and syscall packages, along with bug fixes to the compiler and runtime.
November 1, 2022
go1.18.8
Security fixes for os/exec and syscall packages, along with a bug fix to the runtime.
November 1, 2022
go1.19.2
Security fixes for archive/tar, net/http/httputil, and regexp, plus bug fixes to the compiler, linker, runtime, and go/types.
October 4, 2022
go1.18.7
Security fixes for archive/tar, net/http/httputil, and regexp, plus bug fixes to the compiler, linker, and go/types package.
October 4, 2022
go1.19.1
Security fixes for net/http and net/url plus bug fixes to the compiler, go command, pprof, linker, runtime, crypto/tls, and crypto/x509.
September 6, 2022
go1.18.6
A security fix for net/http, plus bug fixes to the compiler, go command, pprof command, runtime, and crypto/tls, encoding/xml, and net packages.
September 6, 2022
go1.19.0
Go 1.19 is mostly a toolchain/runtime/library release: a new soft memory limit (GOMEMLIMIT), new atomic types, better doc-comment formatting, LoongArch and faster RISC-V support, plus security-hardening changes to PATH lookups and several crypto packages. Only one trivial language change; full backward compatibility maintained.
August 2, 2022
go1.18.5
Security fixes for encoding/gob and math/big, along with bug fixes to the compiler, go command, runtime, and testing package.
August 1, 2022
go1.17.13
Fixes security issues in encoding/gob and math/big, plus bugs in the compiler and runtime.
August 1, 2022
go1.18.4
Security fixes across compress/gzip, encoding/gob, encoding/xml, go/parser, io/fs, net/http, and path/filepath, plus several tooling bug fixes.
July 12, 2022
go1.17.12
Fixes security issues in compress/gzip, encoding/gob, encoding/xml, go/parser, io/fs, net/http, and path/filepath, plus compiler, go command, runtime, and runtime/metrics bugs.
July 12, 2022
go1.18.3
Security fixes for crypto/rand, crypto/tls, os/exec, and path/filepath, plus bug fixes to the compiler and two other packages.
June 1, 2022
go1.17.11
Fixes security issues in crypto/rand, crypto/tls, os/exec, and path/filepath, plus a bug fix in crypto/tls.
June 1, 2022
go1.18.2
Security fix for the syscall package, along with bug fixes to the compiler, runtime, go command, and several standard library packages.
May 10, 2022
go1.17.10
Fixes a security issue in the syscall package, plus bugs in the compiler, runtime, crypto/x509, and net/http/httptest.
May 10, 2022
go1.18.1
Security fixes for crypto/elliptic, crypto/x509, and encoding/pem, plus bug fixes to the compiler, linker, runtime, go command, vet, and other packages.
April 12, 2022
go1.17.9
Fixes security issues in crypto/elliptic and encoding/pem, plus bugs in the linker and runtime.
April 12, 2022
go1.18.0
Go 1.18 introduces generics (type parameters, constraints, any/comparable) as a major but proceed-with-caution language change, adds native fuzzing to go test, and ships numerous toolchain, runtime, and library updates including net/netip, go.work workspaces, and stricter compiler checks.
March 15, 2022
go1.17.8
Fixes a security issue in regexp/syntax and bugs in the compiler, runtime, go command, crypto/x509, and net packages.
March 3, 2022
go1.16.15
Adds a security fix to regexp/syntax plus bug fixes to the compiler, runtime, go command, and net package.
March 3, 2022
go1.17.7
Fixes security issues in the go command, crypto/elliptic, and math/big, plus bugs in the compiler, linker, runtime, go command, debug/macho, debug/pe, and net/http/httptest.
February 9, 2022
go1.16.14
Adds security fixes to the go command, crypto/elliptic, and math/big, plus bug fixes to the compiler, linker, runtime, go command, debug/macho, debug/pe, net/http/httptest, and testing.
February 9, 2022
go1.17.6
Fixes bugs in the compiler, linker, runtime, and the crypto/x509, net/http, and reflect packages.
January 6, 2022
go1.16.13
Fixes issues in the compiler, linker, runtime, and the net/http package.
January 6, 2022
go1.17.5
Fixes security issues in the net/http and syscall packages.
December 9, 2021
go1.16.12
Delivers security fixes to the net/http and syscall packages.
December 9, 2021
go1.17.4
Fixes bugs in the compiler, linker, runtime, and the go/types, net/http, and time packages.
December 2, 2021
go1.16.11
Fixes issues in the compiler, runtime, and the net/http, net/http/httptest, and time packages.
December 2, 2021
go1.17.3
Fixes security issues in archive/zip and debug/macho, plus bugs in the compiler, linker, runtime, go command, misc/wasm, net/http, and syscall.
November 4, 2021
go1.16.10
Adds security fixes to archive/zip and debug/macho, plus bug fixes to the compiler, linker, runtime, misc/wasm, and net/http.
November 4, 2021
go1.17.2
Fixes security issues in the linker and misc/wasm, plus bugs in the compiler, runtime, go command, text/template, and time.
October 7, 2021
go1.16.9
Adds security fixes to the linker and misc/wasm directory, plus bug fixes to runtime and text/template.
October 7, 2021
go1.17.1
Fixes a security issue in archive/zip and bugs in the compiler, linker, go command, crypto/rand, embed, go/types, html/template, and net/http.
September 9, 2021
go1.16.8
Adds a security fix to archive/zip plus bug fixes to archive/zip, go/internal/gccgoimporter, html/template, net/http, and runtime/pprof.
September 9, 2021
go1.17.0
Go 1.17 adds small language features (slice-to-array-pointer conversion, unsafe.Add/Slice), a register-based calling convention that speeds up compiled code (~5%) and shrinks binaries on amd64, and module graph pruning for go.mod. It also tightens defaults in net/url, net/http, and crypto/tls — some of which are behavior-changing and worth checking before upgrading.
August 16, 2021
go1.16.7
Adds a security fix to net/http/httputil plus bug fixes to the compiler, linker, runtime, go command, and net/http.
August 4, 2021
go1.15.15
Includes a security fix to net/http/httputil plus bug fixes to the compiler, runtime, go command, and net/http package.
August 4, 2021
go1.16.6
Adds a security fix to crypto/tls plus bug fixes to the compiler and the net and net/http packages.
July 12, 2021
go1.15.14
Includes a security fix to the crypto/tls package plus bug fixes to the linker and the net package.
July 12, 2021
go1.16.5
Adds security fixes to archive/zip, math/big, net, and net/http/httputil, plus bug fixes to the linker, go command, and net/http.
June 3, 2021
go1.15.13
Delivers security fixes to archive/zip, math/big, net, and net/http/httputil, plus bug fixes to the linker, go command, math/big, and net/http.
June 3, 2021
go1.16.4
Adds a security fix to net/http plus bug fixes to the compiler, runtime, archive/zip, syscall, and time.
May 6, 2021
go1.15.12
Includes a security fix to net/http plus bug fixes to the compiler, runtime, archive/zip, syscall, and time packages.
May 6, 2021
go1.16.3
Fixes issues in the compiler, linker, runtime, the go command, and the testing and time packages.
April 1, 2021
go1.15.11
Fixes cgo, the compiler, linker, runtime, the go command, and the database/sql and net/http packages.
April 1, 2021
go1.16.2
Fixes issues in cgo, the compiler, linker, the go command, and the syscall and time packages.
March 11, 2021
go1.15.10
Fixes the compiler, the go command, and the net/http, os, syscall, and time packages.
March 11, 2021
go1.16.1
Delivers security fixes to the archive/zip and encoding/xml packages.
March 10, 2021
go1.15.9
Delivers a security fix to the encoding/xml package.
March 10, 2021
go1.16.0
Go 1.16 adds native file embedding (//go:embed, embed package) and a new io/fs filesystem abstraction, makes module mode the default, adds Apple Silicon (darwin/arm64) support, deprecates io/ioutil, and stops go build/test from silently editing go.mod/go.sum.
February 16, 2021
go1.15.8
Fixes the compiler, linker, runtime, the go command, and the net/http package.
February 4, 2021
go1.14.15
Delivers fixes to the compiler, runtime, the go command, and the net/http package.
February 4, 2021
go1.15.7
Delivers security fixes to the go command and the crypto/elliptic package.
January 19, 2021
go1.14.14
Provides security fixes to the go command and the crypto/elliptic package.
January 19, 2021
go1.15.6
Fixes the compiler, linker, runtime, the go command, and the io package.
December 3, 2020
go1.14.13
Delivers fixes to the compiler, runtime, and the go command.
December 3, 2020
go1.15.5
Delivers security fixes to the go command and the math/big package.
November 12, 2020
go1.14.12
Provides security fixes to the go command and the math/big package.
November 12, 2020
go1.15.4
Fixes cgo, the compiler, linker, runtime, and the compress/flate, net/http, reflect, and time packages.
November 5, 2020
go1.14.11
Delivers fixes to the runtime, and the net/http and time packages.
November 5, 2020
go1.15.3
Fixes cgo, the compiler, runtime, the go command, and the bytes, plugin, and testing packages.
October 14, 2020
go1.14.10
Delivers fixes to the compiler, runtime, and the plugin and testing packages.
October 14, 2020
go1.15.2
Fixes the compiler, runtime, documentation, the go command, and the net/mail, os, sync, and testing packages.
September 9, 2020
go1.14.9
Delivers fixes to the compiler, linker, runtime, documentation, and the net/http and testing packages.
September 9, 2020
go1.15.1
Delivers security fixes to the net/http/cgi and net/http/fcgi packages.
September 1, 2020
go1.14.8
Provides security fixes to the net/http/cgi and net/http/fcgi packages.
September 1, 2020
go1.15.0
Go 1.15 has no language changes; it's mainly a toolchain and runtime release with a much faster, leaner linker, better small-object allocator performance, and tighter security defaults (X.509 CommonName, net/http parsing). Full Go 1 compatibility is maintained, so upgrading should be low-risk for most programs.
August 11, 2020
go1.14.7
Provides a security fix to the encoding/binary package.
August 6, 2020
go1.13.15
Security fixes for the encoding/binary package.
August 6, 2020
go1.14.6
Delivers fixes to the go command, compiler, linker, vet, and database/sql, encoding/json, net/http, reflect, and testing packages.
July 16, 2020
go1.13.14
Fixes to the compiler, vet, and the database/sql, net/http, and reflect packages.
July 16, 2020
go1.14.5
Provides security fixes to the crypto/x509 and net/http packages.
July 14, 2020
go1.13.13
Security fixes for the crypto/x509 and net/http packages.
July 14, 2020
go1.14.4
Delivers fixes to the go doc command, the runtime, and the encoding/json and os packages.
June 1, 2020
go1.13.12
Fixes to the runtime, and the go/types and math/big packages.
June 1, 2020
go1.14.3
Delivers fixes to cgo, the compiler, the runtime, and the go/doc and math/big packages.
May 14, 2020
go1.13.11
Fixes to the compiler.
May 14, 2020
go1.14.2
Delivers fixes to cgo, the go command, the runtime, and the os/exec and testing packages.
April 8, 2020
go1.13.10
Fixes to the go command, the runtime, and the os/exec and time packages.
April 8, 2020
go1.14.1
Delivers fixes to the go command, tools, and the runtime.
March 19, 2020
go1.13.9
Fixes to the go command, tools, the runtime, the toolchain, and the crypto/cypher package.
March 19, 2020
go1.14.0
Go 1.14 declares modules production-ready with new vendoring rules and flags, adds asynchronous goroutine preemption to fix scheduler/GC stalls in tight loops, and cuts defer overhead to near zero, alongside a language change allowing overlapping embedded interface methods.
February 25, 2020
go1.13.8
Fixes to the runtime, and the crypto/x509 and net/http packages.
February 12, 2020
go1.12.17
Includes a fix to the runtime.
February 12, 2020
go1.13.7
Two security fixes for the crypto/x509 package.
January 27, 2020
go1.12.16
Includes two security fixes to the crypto/x509 package.
January 27, 2020
go1.13.6
Fixes to the runtime and the net/http package.
January 9, 2020
go1.12.15
Includes fixes to the runtime and the net/http package.
January 9, 2020
go1.13.5
Fixes to the go command, runtime, linker, and the net/http package.
December 4, 2019
go1.12.14
Includes a fix to the runtime.
December 4, 2019
go1.13.4
Fixes to net/http and syscall, plus a macOS 10.15 Catalina Gatekeeper rejection issue for installers/binaries.
October 31, 2019
go1.12.13
Fixes an issue where non-notarized installers and binaries were rejected by Gatekeeper on macOS 10.15 Catalina; only affected macOS users need to update.
October 31, 2019
go1.13.3
Fixes to the go command, toolchain, runtime, and the crypto/ecdsa, net, net/http, and syscall packages.
October 17, 2019
go1.13.2
Security fixes for the compiler and the crypto/dsa package.
October 17, 2019
go1.12.12
Includes fixes to the go command, runtime, and the net and syscall packages.
October 17, 2019
go1.12.11
Includes a security fix to the crypto/dsa package.
October 17, 2019
go1.13.1
Security fixes for the net/http and net/textproto packages.
September 25, 2019
go1.12.10
Includes security fixes to the net/http and net/textproto packages.
September 25, 2019
go1.13.0
Go 1.13 adds new number literal syntax and signed shift counts, introduces error wrapping (%w, errors.Is/As/Unwrap), turns on TLS 1.3 by default, and overhauls module proxy/checksum defaults (GOPROXY, GOSUMDB, GOPRIVATE) alongside a 30% defer speedup.
September 3, 2019
go1.12.9
Includes fixes to the linker, and the math/big and os packages.
August 15, 2019
go1.12.8
Includes security fixes to the net/http and net/url packages.
August 13, 2019
go1.11.13
Security fixes to the net/http and net/url packages.
August 13, 2019
go1.12.7
Includes fixes to cgo, the compiler, and the linker.
July 8, 2019
go1.11.12
Fixes to the compiler and the linker.
July 8, 2019
go1.12.6
Includes fixes to the compiler, linker, go command, and the crypto/x509, net/http, and os packages.
June 11, 2019
go1.11.11
A fix to the crypto/x509 package.
June 11, 2019
go1.12.5
Includes fixes to the compiler, linker, go command, runtime, and the os package.
May 6, 2019
go1.11.10
Security fixes to the runtime plus bug fixes to the linker.
May 6, 2019
go1.12.4
Fixes a cgo linking failure caused by using prebuilt binaries on older GNU/Linux versions; only affected Linux users need to update.
April 11, 2019
go1.11.9
Fixes cgo linking failures when using prebuilt binaries on older GNU/Linux versions.
April 11, 2019
go1.12.3
Was accidentally released without its intended fix, making it identical to go1.12.2 except for the version number.
April 8, 2019
go1.11.8
Accidentally released without its intended fix; identical to go1.11.7 except for the version number.
April 8, 2019
go1.12.2
Includes security fixes to the runtime plus bug fixes to the compiler, go command, and doc, net, net/http/httputil, and os packages.
April 5, 2019
go1.11.7
Fixes to the runtime and the net package.
April 5, 2019
go1.12.1
Fixes cgo, the compiler, the go command, and the fmt, net/smtp, os, path/filepath, sync, and text/template packages.
March 14, 2019
go1.11.6
Fixes to cgo, compiler, linker, runtime, go command, and the crypto/x509, encoding/json, net, and net/url packages.
March 14, 2019
go1.12.0
Go 1.12 makes no language changes but improves the toolchain: opt-in TLS 1.3, a now-mandatory build cache, better module support outside module directories, faster GC sweeping and more aggressive memory release, and a rewritten go vet. It's also the last release supporting FreeBSD 10.x, macOS 10.10, and binary-only packages.
February 25, 2019
go1.11.5
A security fix to the crypto/elliptic package.
January 23, 2019
go1.10.8
Delivered a security fix to the crypto/elliptic package.
January 23, 2019
go1.11.4
Fixes to cgo, compiler, linker, runtime, docs, go command, go/types, and net/http, plus a fix for a Go 1.11.3 "go get" regression with "..." patterns.
December 14, 2018
go1.10.7
Fixed a bug introduced in Go 1.10.6 that broke go get for import path patterns containing "...".
December 14, 2018
go1.11.3
Three security fixes affecting "go get" and the crypto/x509 package.
December 13, 2018
go1.10.6
Delivered three security fixes to "go get" and crypto/x509, matching Go 1.11.3, released simultaneously.
December 13, 2018
go1.11.2
Fixes to the compiler, linker, documentation, go command, and the database/sql and go/types packages.
November 2, 2018
go1.10.5
Fixed the go command, linker, runtime, and the database/sql package.
November 2, 2018
go1.11.1
Fixes to the compiler, docs, go command, runtime, crypto/x509, encoding/json, go/types, net, net/http, and reflect.
October 1, 2018
go1.11.0
Go 1.11 makes no language changes but adds experimental module support (an alternative to GOPATH with versioning) and an experimental WebAssembly port. It also removes the runtime's heap size limit, improves debug info and compiler optimizations, and drops support for older macOS/Windows/OpenBSD versions.
August 24, 2018
go1.10.4
Fixed the go command, linker, and the bytes, mime/multipart, net/http, and strings packages.
August 24, 2018
go1.10.3
Fixed the go command and crypto/tls, crypto/x509, and strings packages, plus added minimal support for the vgo transition.
June 6, 2018
go1.9.7
Go 1.9.7 fixes the go command and the crypto/x509 and strings packages, and adds minimal go command support for the vgo transition.
June 6, 2018
go1.10.2
Fixed bugs in the compiler, linker, and go command.
April 30, 2018
go1.9.6
Go 1.9.6 includes fixes to the compiler and go command.
April 30, 2018
go1.10.1
Fixed a security issue in the go command and bug fixes in the compiler, runtime, and several standard library packages.
March 29, 2018
go1.9.5
Go 1.9.5 provides security fixes to the go command along with bug fixes to the compiler, go command, and net/http/pprof package.
March 29, 2018
go1.10.0
Go 1.10 focuses on toolchain and library improvements: build/test caching speed up workflows, tests now auto-run vet, and cgo gains string passing and a security-hardening flag whitelist that may break some builds. No language changes; stdlib tweaks are minor but a few (bytes, net/url) can alter existing program behavior.
February 16, 2018
go1.9.4
Go 1.9.4 includes a security fix to the "go get" command.
February 7, 2018
go1.8.7
Delivered a security fix to "go get", matching Go 1.9.4 and released simultaneously with it.
February 7, 2018
go1.8.6
Applied the same math/big fix as Go 1.9.3 and was released at the same time.
January 23, 2018
go1.9.3
Go 1.9.3 delivers security fixes to net/url plus bug fixes to the compiler, runtime, and database/sql, math/big, and net/http packages.
January 22, 2018
go1.9.2
Go 1.9.2 fixes the compiler, linker, runtime, docs, go command, and crypto/x509, database/sql, log, and net/smtp packages, plus a Go 1.9.1 regression breaking go get of non-Git repos.
October 25, 2017
go1.8.5
Fixed the compiler, linker, runtime, docs, go command, crypto/x509, net/smtp, and a Go 1.8.4 regression breaking go get for non-Git repos.
October 25, 2017
go1.9.1
Go 1.9.1 includes two security fixes.
October 4, 2017
go1.8.4
Included two security fixes, matching Go 1.9.1 and released simultaneously with it.
October 4, 2017
go1.9.0
Go 1.9 adds type aliases and defines float op fusion rules to the language, plus transparent monotonic time tracking, a new sync.Map, math/bits package, parallel per-package compilation, and better test-helper support—while staying source-compatible per the Go 1 promise.
August 24, 2017
go1.8.3
Fixed the compiler, runtime, documentation, and the database/sql package.
May 24, 2017
go1.8.2
Delivered a security fix to the crypto/elliptic package.
May 23, 2017
go1.7.6
Go 1.7.6 (2017-05-23) shipped the same security fix as Go 1.8.2, released simultaneously.
May 23, 2017
go1.8.1
Fixed the compiler, linker, runtime, docs, go command, and several packages including crypto/tls and net/http.
April 7, 2017
go1.8.0
Go 1.8 ships a new SSA compiler back end for all architectures (toolchain ~15% faster), dramatically shorter GC pauses, and notable stdlib additions like HTTP/2 server push, graceful HTTP shutdown, wider context.Context support, and sort.Slice. Two small, low-impact language spec changes are included; upgrade is low-risk and worthwhile mainly for performance.
February 16, 2017
go1.7.5
Go 1.7.5 (2017-01-26) fixed the compiler, runtime, and the crypto/x509 and time packages.
January 26, 2017
go1.7.4
Go 1.7.4 (2016-12-01) delivered two security fixes.
December 1, 2016
go1.6.4
Released 2016-12-01, go1.6.4 includes two security fixes, matching the fixes released simultaneously in Go 1.7.4.
December 1, 2016
go1.7.3
Go 1.7.3 (2016-10-19) fixed the compiler, runtime, and packages including crypto/tls and net/http.
October 19, 2016
go1.7.2
Go 1.7.2 was tagged but never fully released after a last-minute bug report, so use 1.7.3 instead.
October 17, 2016
go1.7.1
Go 1.7.1 (2016-09-07) fixed the compiler, runtime, docs, and several packages including net/http and reflect.
September 7, 2016
go1.7.0
Go 1.7 brings a new SSA-based amd64 compiler backend that cuts CPU time 5-35% and shrinks binaries up to 20-30%, promotes the context package into the standard library, finalizes vendoring, and adds subtests/sub-benchmarks to testing—mostly toolchain and library work with one trivial language spec clarification.
August 15, 2016
go1.6.3
Released 2016-07-17, go1.6.3 patches security issues in net/http/cgi and in net/http when used in a CGI environment.
July 18, 2016
go1.6.2
Released 2016-04-20, go1.6.2 fixes the compiler, runtime, tools, docs, and the mime/multipart, net/http, and sort packages.
April 19, 2016
go1.6.1
Released 2016-04-12, go1.6.1 delivers two security fixes.
April 11, 2016
go1.5.4
Go 1.5.4 included two security fixes, matching Go 1.6.1 and released at the same time.
April 11, 2016
go1.6.0
Go 1.6 makes no language changes but adds automatic HTTP/2 support in net/http, enforced runtime rules for sharing Go pointers with C via cgo, default-on vendoring, and runtime detection of concurrent map misuse, plus numerous library fixes and performance gains.
February 17, 2016
go1.5.3
Go 1.5.3 delivered a security fix to math/big that affected the crypto/tls package.
January 13, 2016
go1.5.2
Go 1.5.2 fixed bugs in the compiler, linker, and the mime/multipart, net, and runtime packages.
December 3, 2015
go1.4.3
Fixed security issues in net/http and bug fixes in the runtime package.
September 23, 2015
go1.5.1
Go 1.5.1 fixed bugs in the compiler, assembler, and the fmt, net/textproto, net/http, and runtime packages.
September 9, 2015
go1.5.0
Go 1.5 is a major implementation overhaul: the compiler and runtime are now written in Go instead of C, GC pauses are drastically shorter via a new concurrent collector, and GOMAXPROCS defaults to all CPU cores instead of 1. Language compatibility is preserved, but scheduling-order and multicore-default changes can affect existing programs, and builds are about 2x slower.
August 19, 2015
go1.4.2
Fixed compiler security issues plus bugs in the go command, compiler, linker, runtime, syscall, reflect, and math/big packages.
February 18, 2015
go1.4.1
Fixed bugs in the linker and in the log, syscall, and runtime packages.
January 15, 2015
go1.4.0
Go 1.4 is mostly an internals release: the runtime was rewritten from C to Go, stacks became contiguous, and write barriers were added ahead of Go 1.5's concurrent GC, shrinking heaps 10-30%. It also has two small breaking changes (disallowed **T method calls, stricter file-name build tags) plus go generate, internal packages, and canonical import paths.
December 11, 2014
go1.3.3
Added further bug fixes to cgo, the runtime package, and the nacl port.
October 1, 2014
go1.3.2
Delivered security fixes for crypto/tls plus bug fixes to cgo.
September 25, 2014
go1.3.1
Fixed bugs in the compiler and the runtime, net, and crypto/rsa packages.
August 13, 2014
go1.3.0
Go 1.3 adds no language changes but delivers major implementation work: precise stack garbage collection, contiguous goroutine stacks, a refactored compiler/linker for faster builds, broad performance gains, new experimental OS/arch support, and a couple of behavior-breaking fixes (crypto/tls verification, cgo struct pointers, map iteration order).
June 19, 2014
go1.2.2
go1.2.2 fixed a security issue affecting the tour binary bundled in Go's binary distributions.
May 5, 2014
go1.2.1
go1.2.1 delivered bug fixes to the runtime, net, and database/sql packages.
March 3, 2014
go1.2.0
Go 1.2 is a compatible, moderate release: it adds three-index slicing, tightens the spec around nil pointer dereferences (may expose already-broken code), improves the scheduler's preemption, and ships go test coverage tooling plus several library and performance improvements.
November 28, 2013
go1.1.2
Go 1.1.2 fixes issues in the gc compiler, cgo, and the bufio, runtime, syscall, and time packages.
August 13, 2013
go1.1.1
Go 1.1.1 delivers a security fix to the compiler plus several bug fixes to the compiler and runtime.
June 13, 2013
go1.1.0
Go 1.1 stays fully Go 1-compatible while adding method values, a relaxed missing-return rule, 64-bit ints on 64-bit platforms, a built-in race detector, and broad speedups (often 30-40%) across the compiler, runtime, and GC.
May 13, 2013
go1.0.3
Included only minor code and documentation fixes.
September 21, 2012
go1.0.2
Fixed two bugs in maps using struct or array keys (issues 3695 and 3573), along with many minor code and documentation fixes.
June 14, 2012
go1.0.1
Fixed an escape analysis bug that could cause memory corruption, plus several minor code and documentation fixes.
April 26, 2012
go1.0.0
Go 1 locks in a long-term compatibility promise but breaks pre-1.0 code with substantial language and library cleanups (new error type, redesigned time package, rune type, delete(), reorganized packages); go fix automates most of the migration, and a new go command and packaged binaries debut.
March 28, 2012