// Copyright 2020 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// Package history stores historical data for the Go project.
package history

import "html/template"

// Releases summarizes the changes between official stable releases of Go.
// It contains entries for all releases of Go, but releases older than Go 1.9
// omit information about minor versions, which is instead hard-coded in
// _content/doc/devel/release.html.
//
// The table is sorted by date, breaking ties with newer versions first.
var Releases = []*Release{
	{
		Date: Date{2021, 6, 3}, Version: Version{1, 16, 5},
		CustomSummary: `includes security fixes to the
<code>archive/zip</code>, <code>math/big</code>,
<code>net</code>, and <code>net/http/httputil</code> packages,
as well as bug fixes to the linker, the <code>go</code> command,
and the <code>net/http</code> package. See the
<a href="https://github.com/golang/go/issues?q=milestone%3AGo1.16.5+label%3ACherryPickApproved">Go
1.16.5 milestone</a> on our issue tracker for details.`,
	},
	{
		Date: Date{2021, 6, 3}, Version: Version{1, 15, 13},
		CustomSummary: `includes security fixes to the
<code>archive/zip</code>, <code>math/big</code>,
<code>net</code>, and <code>net/http/httputil</code> packages,
as well as bug fixes to the linker, the <code>go</code> command,
and the <code>math/big</code> and <code>net/http</code> packages. See the
<a href="https://github.com/golang/go/issues?q=milestone%3AGo1.15.13+label%3ACherryPickApproved">Go
1.15.13 milestone</a> on our issue tracker for details.`,
	},
	{
		Date: Date{2021, 5, 6}, Version: Version{1, 16, 4},
		CustomSummary: `includes a security fix to the
<code>net/http</code> package, as well as bug fixes to the runtime,
the compiler, and the <code>archive/zip</code>, <code>time</code>,
and <code>syscall</code> packages. See the
<a href="https://github.com/golang/go/issues?q=milestone%3AGo1.16.4+label%3ACherryPickApproved">Go
1.16.4 milestone</a> on our issue tracker for details.`,
	},
	{
		Date: Date{2021, 5, 6}, Version: Version{1, 15, 12},
		CustomSummary: `includes a security fix to the
<code>net/http</code> package, as well as bug fixes to the runtime,
the compiler, and the <code>archive/zip</code>, <code>time</code>,
and <code>syscall</code> packages. See the
<a href="https://github.com/golang/go/issues?q=milestone%3AGo1.15.12+label%3ACherryPickApproved">Go
1.15.12 milestone</a> on our issue tracker for details.`,
	},
	{
		Date: Date{2021, 4, 1}, Version: Version{1, 16, 3},
		Components: []template.HTML{"the compiler", "linker", "runtime", "the <code>go</code> command"},
		Packages:   []string{"testing", "time"},
	},
	{
		Date: Date{2021, 4, 1}, Version: Version{1, 15, 11},
		Components: []template.HTML{"cgo", "the compiler", "linker", "runtime", "the <code>go</code> command"},
		Packages:   []string{"database/sql", "net/http"},
	},
	{
		Date: Date{2021, 3, 11}, Version: Version{1, 16, 2},
		Components: []template.HTML{"cgo", "the compiler", "linker", "the <code>go</code> command"},
		Packages:   []string{"syscall", "time"},
	},
	{
		Date: Date{2021, 3, 11}, Version: Version{1, 15, 10},
		Components: []template.HTML{"the compiler", "the <code>go</code> command"},
		Packages:   []string{"net/http", "os", "syscall", "time"},
	},
	{
		Date: Date{2021, 3, 10}, Version: Version{1, 16, 1}, Security: true,
		Packages: []string{"archive/zip", "encoding/xml"},
	},
	{
		Date: Date{2021, 3, 10}, Version: Version{1, 15, 9}, Security: true,
		Packages: []string{"encoding/xml"},
	},
	{
		Date: Date{2021, 2, 16}, Version: Version{1, 16, 0},
	},
	{
		Date: Date{2021, 2, 4}, Version: Version{1, 15, 8},
		Components: []template.HTML{"the compiler", "linker", "runtime", "the <code>go</code> command"},
		Packages:   []string{"net/http"},
	},
	{
		Date: Date{2021, 2, 4}, Version: Version{1, 14, 15},
		Components: []template.HTML{"the compiler", "runtime", "the <code>go</code> command"},
		Packages:   []string{"net/http"},
	},
	{
		Date: Date{2021, 1, 19}, Version: Version{1, 15, 7}, Security: true,
		Components: []template.HTML{"the <code>go</code> command"},
		Packages:   []string{"crypto/elliptic"},
	},
	{
		Date: Date{2021, 1, 19}, Version: Version{1, 14, 14}, Security: true,
		Components: []template.HTML{"the <code>go</code> command"},
		Packages:   []string{"crypto/elliptic"},
	},
	{
		Date: Date{2020, 12, 3}, Version: Version{1, 15, 6},
		Components: []template.HTML{"the compiler", "linker", "runtime", "the <code>go</code> command"},
		Packages:   []string{"io"},
	},
	{
		Date: Date{2020, 12, 3}, Version: Version{1, 14, 13},
		Components: []template.HTML{"the compiler", "runtime", "the <code>go</code> command"},
	},
	{
		Date: Date{2020, 11, 12}, Version: Version{1, 15, 5}, Security: true,
		Components: []template.HTML{"the <code>go</code> command"},
		Packages:   []string{"math/big"},
	},
	{
		Date: Date{2020, 11, 12}, Version: Version{1, 14, 12}, Security: true,
		Components: []template.HTML{"the <code>go</code> command"},
		Packages:   []string{"math/big"},
	},
	{
		Date: Date{2020, 11, 5}, Version: Version{1, 15, 4},
		Components: []template.HTML{"cgo", "the compiler", "linker", "runtime"},
		Packages:   []string{"compress/flate", "net/http", "reflect", "time"},
	},
	{
		Date: Date{2020, 11, 5}, Version: Version{1, 14, 11},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"net/http", "time"},
	},
	{
		Date: Date{2020, 10, 14}, Version: Version{1, 15, 3},
		Components: []template.HTML{"cgo", "the compiler", "runtime", "the <code>go</code> command"},
		Packages:   []string{"bytes", "plugin", "testing"},
	},
	{
		Date: Date{2020, 10, 14}, Version: Version{1, 14, 10},
		Components: []template.HTML{"the compiler", "runtime"},
		Packages:   []string{"plugin", "testing"},
	},
	{
		Date: Date{2020, 9, 9}, Version: Version{1, 15, 2},
		Components: []template.HTML{"the compiler", "runtime", "documentation", "the <code>go</code> command"},
		Packages:   []string{"net/mail", "os", "sync", "testing"},
	},
	{
		Date: Date{2020, 9, 9}, Version: Version{1, 14, 9},
		Components: []template.HTML{"the compiler", "linker", "runtime", "documentation"},
		Packages:   []string{"net/http", "testing"},
	},
	{
		Date: Date{2020, 9, 1}, Version: Version{1, 15, 1}, Security: true,
		Packages: []string{"net/http/cgi", "net/http/fcgi"},
	},
	{
		Date: Date{2020, 9, 1}, Version: Version{1, 14, 8}, Security: true,
		Packages: []string{"net/http/cgi", "net/http/fcgi"},
	},
	{
		Date: Date{2020, 8, 11}, Version: Version{1, 15, 0},
	},
	{
		Date: Date{2020, 8, 6}, Version: Version{1, 14, 7}, Security: true,
		Packages: []string{"encoding/binary"},
	},
	{
		Date: Date{2020, 8, 6}, Version: Version{1, 13, 15}, Security: true,
		Packages: []string{"encoding/binary"},
	},
	{
		Date: Date{2020, 7, 16}, Version: Version{1, 14, 6},
		Components: []template.HTML{"the <code>go</code> command", "the compiler", "the linker", "vet"},
		Packages:   []string{"database/sql", "encoding/json", "net/http", "reflect", "testing"},
	},
	{
		Date: Date{2020, 7, 16}, Version: Version{1, 13, 14},
		Components: []template.HTML{"the compiler", "vet"},
		Packages:   []string{"database/sql", "net/http", "reflect"},
	},
	{
		Date: Date{2020, 7, 14}, Version: Version{1, 14, 5}, Security: true,
		Packages: []string{"crypto/x509", "net/http"},
	},
	{
		Date: Date{2020, 7, 14}, Version: Version{1, 13, 13}, Security: true,
		Packages: []string{"crypto/x509", "net/http"},
	},
	{
		Date: Date{2020, 6, 1}, Version: Version{1, 14, 4},
		Components: []template.HTML{"the <code>go</code> <code>doc</code> command", "the runtime"},
		Packages:   []string{"encoding/json", "os"},
	},
	{
		Date: Date{2020, 6, 1}, Version: Version{1, 13, 12},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"go/types", "math/big"},
	},
	{
		Date: Date{2020, 5, 14}, Version: Version{1, 14, 3},
		Components: []template.HTML{"cgo", "the compiler", "the runtime"},
		Packages:   []string{"go/doc", "math/big"},
	},
	{
		Date: Date{2020, 5, 14}, Version: Version{1, 13, 11},
		Components: []template.HTML{"the compiler"},
	},
	{
		Date: Date{2020, 4, 8}, Version: Version{1, 14, 2},
		Components: []template.HTML{"cgo", "the go command", "the runtime"},
		Packages:   []string{"os/exec", "testing"},
	},
	{
		Date: Date{2020, 4, 8}, Version: Version{1, 13, 10},
		Components: []template.HTML{"the go command", "the runtime"},
		Packages:   []string{"os/exec", "time"},
	},
	{
		Date: Date{2020, 3, 19}, Version: Version{1, 14, 1},
		Components: []template.HTML{"the go command", "tools", "the runtime"},
	},
	{
		Date: Date{2020, 3, 19}, Version: Version{1, 13, 9},
		Components: []template.HTML{"the go command", "tools", "the runtime", "the toolchain"},
		Packages:   []string{"crypto/cypher"},
	},
	{
		Date: Date{2020, 2, 25}, Version: Version{1, 14, 0},
	},
	{
		Date: Date{2020, 2, 12}, Version: Version{1, 13, 8},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"crypto/x509", "net/http"},
	},
	{
		Date: Date{2020, 2, 12}, Version: Version{1, 12, 17},
		Quantifier: "a",
		Components: []template.HTML{"the runtime"},
	},
	{
		Date: Date{2020, 1, 28}, Version: Version{1, 13, 7}, Security: true,
		Quantifier: "two",
		Packages:   []string{"crypto/x509"},
	},
	{
		Date: Date{2020, 1, 28}, Version: Version{1, 12, 16}, Security: true,
		Quantifier: "two",
		Packages:   []string{"crypto/x509"},
	},
	{
		Date: Date{2020, 1, 9}, Version: Version{1, 13, 6},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"net/http"},
	},
	{
		Date: Date{2020, 1, 9}, Version: Version{1, 12, 15},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"net/http"},
	},
	{
		Date: Date{2019, 12, 4}, Version: Version{1, 13, 5},
		Components: []template.HTML{"the go command", "the runtime", "the linker"},
		Packages:   []string{"net/http"},
	},
	{
		Date: Date{2019, 12, 4}, Version: Version{1, 12, 14},
		Quantifier: "a",
		Components: []template.HTML{"the runtime"},
	},
	{
		Date: Date{2019, 10, 31}, Version: Version{1, 13, 4},
		Packages: []string{"net/http", "syscall"},
		More: `It also fixes an issue on macOS 10.15 Catalina
where the non-notarized installer and binaries were being
<a href="https://golang.org/issue/34986">rejected by Gatekeeper</a>.`,
	},
	{
		Date: Date{2019, 10, 31}, Version: Version{1, 12, 13},
		CustomSummary: `fixes an issue on macOS 10.15 Catalina
where the non-notarized installer and binaries were being
<a href="https://golang.org/issue/34986">rejected by Gatekeeper</a>.
Only macOS users who hit this issue need to update.`,
	},
	{
		Date: Date{2019, 10, 17}, Version: Version{1, 13, 3},
		Components: []template.HTML{"the go command", "the toolchain", "the runtime"},
		Packages:   []string{"syscall", "net", "net/http", "crypto/ecdsa"},
	},
	{
		Date: Date{2019, 10, 17}, Version: Version{1, 12, 12},
		Components: []template.HTML{"the go command", "runtime"},
		Packages:   []string{"syscall", "net"},
	},
	{
		Date: Date{2019, 10, 17}, Version: Version{1, 13, 2}, Security: true,
		Components: []template.HTML{"the compiler"},
		Packages:   []string{"crypto/dsa"},
	},
	{
		Date: Date{2019, 10, 17}, Version: Version{1, 12, 11}, Security: true,
		Packages: []string{"crypto/dsa"},
	},
	{
		Date: Date{2019, 9, 25}, Version: Version{1, 13, 1}, Security: true,
		Packages: []string{"net/http", "net/textproto"},
	},
	{
		Date: Date{2019, 9, 25}, Version: Version{1, 12, 10}, Security: true,
		Packages: []string{"net/http", "net/textproto"},
	},
	{
		Date: Date{2019, 9, 3}, Version: Version{1, 13, 0},
	},
	{
		Date: Date{2019, 8, 15}, Version: Version{1, 12, 9},
		Components: []template.HTML{"the linker"},
		Packages:   []string{"os", "math/big"},
	},
	{
		Date: Date{2019, 8, 13}, Version: Version{1, 12, 8}, Security: true,
		Packages: []string{"net/http", "net/url"},
	},
	{
		Date: Date{2019, 8, 13}, Version: Version{1, 11, 13}, Security: true,
		Packages: []string{"net/http", "net/url"},
	},
	{
		Date: Date{2019, 7, 8}, Version: Version{1, 12, 7},
		Components: []template.HTML{"cgo", "the compiler", "the linker"},
	},
	{
		Date: Date{2019, 7, 8}, Version: Version{1, 11, 12},
		Components: []template.HTML{"the compiler", "the linker"},
	},
	{
		Date: Date{2019, 6, 11}, Version: Version{1, 12, 6},
		Components: []template.HTML{"the compiler", "the linker", "the go command"},
		Packages:   []string{"crypto/x509", "net/http", "os"},
	},
	{
		Date: Date{2019, 6, 11}, Version: Version{1, 11, 11},
		Quantifier: "a",
		Packages:   []string{"crypto/x509"},
	},
	{
		Date: Date{2019, 5, 6}, Version: Version{1, 12, 5},
		Components: []template.HTML{"the compiler", "the linker", "the go command", "the runtime"},
		Packages:   []string{"os"},
	},
	{
		Date: Date{2019, 5, 6}, Version: Version{1, 11, 10},
		Components: []template.HTML{"the runtime", "the linker"},
	},
	{
		Date: Date{2019, 4, 11}, Version: Version{1, 12, 4},
		CustomSummary: `fixes an issue where using the prebuilt binary
releases on older versions of GNU/Linux
<a href="https://golang.org/issues/31293">led to failures</a>
when linking programs that used cgo.
Only Linux users who hit this issue need to update.`,
	},
	{
		Date: Date{2019, 4, 11}, Version: Version{1, 11, 9},
		CustomSummary: `fixes an issue where using the prebuilt binary
releases on older versions of GNU/Linux
<a href="https://golang.org/issues/31293">led to failures</a>
when linking programs that used cgo.
Only Linux users who hit this issue need to update.`,
	},
	{
		Date: Date{2019, 4, 8}, Version: Version{1, 12, 3},
		CustomSummary: `was accidentally released without its
intended fix. It is identical to go1.12.2, except for its version
number. The intended fix is in go1.12.4.`,
	},
	{
		Date: Date{2019, 4, 8}, Version: Version{1, 11, 8},
		CustomSummary: `was accidentally released without its
intended fix. It is identical to go1.11.7, except for its version
number. The intended fix is in go1.11.9.`,
	},
	{
		Date: Date{2019, 4, 5}, Version: Version{1, 12, 2},
		Components: []template.HTML{"the compiler", "the go command", "the runtime"},
		Packages:   []string{"doc", "net", "net/http/httputil", "os"},
	},
	{
		Date: Date{2019, 4, 5}, Version: Version{1, 11, 7},
		Components: []template.HTML{"the runtime"},
		Packages:   []string{"net"},
	},
	{
		Date: Date{2019, 3, 14}, Version: Version{1, 12, 1},
		Components: []template.HTML{"cgo", "the compiler", "the go command"},
		Packages:   []string{"fmt", "net/smtp", "os", "path/filepath", "sync", "text/template"},
	},
	{
		Date: Date{2019, 3, 14}, Version: Version{1, 11, 6},
		Components: []template.HTML{"cgo", "the compiler", "linker", "runtime", "go command"},
		Packages:   []string{"crypto/x509", "encoding/json", "net", "net/url"},
	},
	{
		Date: Date{2019, 2, 25}, Version: Version{1, 12, 0},
	},
	{
		Date: Date{2019, 1, 23}, Version: Version{1, 11, 5}, Security: true,
		Quantifier: "a",
		Packages:   []string{"crypto/elliptic"},
	},
	{
		Date: Date{2019, 1, 23}, Version: Version{1, 10, 8}, Security: true,
		Quantifier: "a",
		Packages:   []string{"crypto/elliptic"},
	},
	{
		Date: Date{2018, 12, 14}, Version: Version{1, 11, 4},
		Components: []template.HTML{"cgo", "the compiler", "linker", "runtime", "documentation", "go command"},
		Packages:   []string{"net/http", "go/types"},
		More: `It includes a fix to a bug introduced in Go 1.11.3 that broke <code>go</code>
<code>get</code> for import path patterns containing "<code>...</code>".`,
	},
	{
		Date: Date{2018, 12, 14}, Version: Version{1, 10, 7},
		// TODO: Modify to follow usual pattern, say it includes a fix to the go command.
		CustomSummary: `includes a fix to a bug introduced in Go 1.10.6
that broke <code>go</code> <code>get</code> for import path patterns containing
"<code>...</code>".
See the <a href="https://github.com/golang/go/issues?q=milestone%3AGo1.10.7+label%3ACherryPickApproved">
Go 1.10.7 milestone</a> on our issue tracker for details.`,
	},
	{
		Date: Date{2018, 12, 12}, Version: Version{1, 11, 3}, Security: true,
		Quantifier: "three",
		Components: []template.HTML{`"go get"`},
		Packages:   []string{"crypto/x509"},
	},
	{
		Date: Date{2018, 12, 12}, Version: Version{1, 10, 6}, Security: true,
		Quantifier: "three",
		Components: []template.HTML{`"go get"`},
		Packages:   []string{"crypto/x509"},
		More:       "It contains the same fixes as Go 1.11.3 and was released at the same time.",
	},
	{
		Date: Date{2018, 11, 2}, Version: Version{1, 11, 2},
		Components: []template.HTML{"the compiler", "linker", "documentation", "go command"},
		Packages:   []string{"database/sql", "go/types"},
	},
	{
		Date: Date{2018, 11, 2}, Version: Version{1, 10, 5},
		Components: []template.HTML{"the go command", "linker", "runtime"},
		Packages:   []string{"database/sql"},
	},
	{
		Date: Date{2018, 10, 1}, Version: Version{1, 11, 1},
		Components: []template.HTML{"the compiler", "documentation", "go command", "runtime"},
		Packages:   []string{"crypto/x509", "encoding/json", "go/types", "net", "net/http", "reflect"},
	},
	{
		Date: Date{2018, 8, 24}, Version: Version{1, 11, 0},
	},
	{
		Date: Date{2018, 8, 24}, Version: Version{1, 10, 4},
		Components: []template.HTML{"the go command", "linker"},
		Packages:   []string{"net/http", "mime/multipart", "ld/macho", "bytes", "strings"},
	},
	{
		Date: Date{2018, 6, 5}, Version: Version{1, 10, 3},
		Components: []template.HTML{"the go command"},
		Packages:   []string{"crypto/tls", "crypto/x509", "strings"},
		More: `In particular, it adds <a href="https://go.googlesource.com/go/+/d4e21288e444d3ffd30d1a0737f15ea3fc3b8ad9">
minimal support to the go command for the vgo transition</a>.`,
	},
	{
		Date: Date{2018, 6, 5}, Version: Version{1, 9, 7},
		Components: []template.HTML{"the go command"},
		Packages:   []string{"crypto/x509", "strings"},
		More: `In particular, it adds <a href="https://go.googlesource.com/go/+/d4e21288e444d3ffd30d1a0737f15ea3fc3b8ad9">
minimal support to the go command for the vgo transition</a>.`,
	},
	{
		Date: Date{2018, 5, 1}, Version: Version{1, 10, 2},
		Components: []template.HTML{"the compiler", "linker", "go command"},
	},
	{
		Date: Date{2018, 5, 1}, Version: Version{1, 9, 6},
		Components: []template.HTML{"the compiler", "go command"},
	},
	{
		Date: Date{2018, 3, 28}, Version: Version{1, 10, 1},
		Components: []template.HTML{"the compiler", "runtime"},
		Packages:   []string{"archive/zip", "crypto/tls", "crypto/x509", "encoding/json", "net", "net/http", "net/http/pprof"},
	},
	{
		Date: Date{2018, 3, 28}, Version: Version{1, 9, 5},
		Components: []template.HTML{"the compiler", "go command"},
		Packages:   []string{"net/http/pprof"},
	},
	{
		Date: Date{2018, 2, 16}, Version: Version{1, 10, 0},
	},
	{
		Date: Date{2018, 2, 7}, Version: Version{1, 9, 4}, Security: true,
		Quantifier: "a",
		Components: []template.HTML{`"go get"`},
	},
	{
		Date: Date{2018, 1, 22}, Version: Version{1, 9, 3},
		Components: []template.HTML{"the compiler", "runtime"},
		Packages:   []string{"database/sql", "math/big", "net/http", "net/url"},
	},
	{
		Date: Date{2017, 10, 25}, Version: Version{1, 9, 2},
		Components: []template.HTML{"the compiler", "linker", "runtime", "documentation", "<code>go</code> command"},
		Packages:   []string{"crypto/x509", "database/sql", "log", "net/smtp"},
		More: `It includes a fix to a bug introduced in Go 1.9.1 that broke <code>go</code> <code>get</code>
of non-Git repositories under certain conditions.`,
	},
	{
		Date: Date{2017, 10, 4}, Version: Version{1, 9, 1}, Security: true,
		Quantifier: "two",
	},
	{
		Date: Date{2017, 8, 24}, Version: Version{1, 9, 0},
	},

	// Older releases do not have point release information here.
	// See _content/doc/devel/release.html.
	{
		Date: Date{2017, 2, 16}, Version: Version{1, 8, 0},
	},
	{
		Date: Date{2016, 8, 15}, Version: Version{1, 7, 0},
	},
	{
		Date: Date{2016, 2, 17}, Version: Version{1, 6, 0},
	},
	{
		Date: Date{2015, 8, 19}, Version: Version{1, 5, 0},
	},
	{
		Date: Date{2014, 12, 10}, Version: Version{1, 4, 0},
	},
	{
		Date: Date{2014, 6, 18}, Version: Version{1, 3, 0},
	},
	{
		Date: Date{2013, 12, 1}, Version: Version{1, 2, 0},
	},
	{
		Date: Date{2013, 5, 13}, Version: Version{1, 1, 0},
	},
	{
		Date: Date{2012, 3, 28}, Version: Version{1, 0, 0},
	},
}
