mirror of
https://github.com/golang/go
synced 2024-11-17 23:14:49 -07:00
607e020150
Go 1.21 and earlier do not understand this line, causing "go mod vendor" of //go:build go1.22-tagged code that uses this feature to fail. The solution is to include the go/build change to skip over the line in Go 1.22 (making "go mod vendor" from Go 1.22 onward work with this change) and then wait to deploy the cgo change until Go 1.23, at which point Go 1.21 and earlier will be unsupported. For #56378. Fixes #63293. Change-Id: Ifa08b134eac5a6aa15d67dad0851f00e15e1e58b Reviewed-on: https://go-review.googlesource.com/c/go/+/539235 LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Bryan Mills <bcmills@google.com>
106 lines
2.5 KiB
HTML
106 lines
2.5 KiB
HTML
<!--{
|
|
"Title": "Go 1.22 Release Notes",
|
|
"Path": "/doc/go1.22"
|
|
}-->
|
|
|
|
<!--
|
|
NOTE: In this document and others in this directory, the convention is to
|
|
set fixed-width phrases with non-fixed-width spaces, as in
|
|
<code>hello</code> <code>world</code>.
|
|
Do not send CLs removing the interior tags from such phrases.
|
|
-->
|
|
|
|
<style>
|
|
main ul li { margin: 0.5em 0; }
|
|
</style>
|
|
|
|
<h2 id="introduction">DRAFT RELEASE NOTES — Introduction to Go 1.22</h2>
|
|
|
|
<p>
|
|
<strong>
|
|
Go 1.22 is not yet released. These are work-in-progress
|
|
release notes. Go 1.22 is expected to be released in February 2024.
|
|
</strong>
|
|
</p>
|
|
|
|
<h2 id="language">Changes to the language</h2>
|
|
|
|
<p>
|
|
TODO: complete this section
|
|
</p>
|
|
|
|
<h2 id="tools">Tools</h2>
|
|
|
|
<h3 id="go-command">Go command</h3>
|
|
|
|
<p>
|
|
TODO: complete this section, or delete if not needed
|
|
</p>
|
|
|
|
<h3 id="cgo">Cgo</h3>
|
|
|
|
<!-- CL 497837 reverted -->
|
|
|
|
<h2 id="runtime">Runtime</h2>
|
|
|
|
<p>
|
|
TODO: complete this section, or delete if not needed
|
|
</p>
|
|
|
|
<h2 id="compiler">Compiler</h2>
|
|
|
|
<p>
|
|
TODO: complete this section, or delete if not needed
|
|
</p>
|
|
|
|
<h2 id="linker">Linker</h2>
|
|
|
|
<p>
|
|
TODO: complete this section, or delete if not needed
|
|
</p>
|
|
|
|
<h2 id="library">Core library</h2>
|
|
|
|
<h3 id="minor_library_changes">Minor changes to the library</h3>
|
|
|
|
<p>
|
|
As always, there are various minor changes and updates to the library,
|
|
made with the Go 1 <a href="/doc/go1compat">promise of compatibility</a>
|
|
in mind.
|
|
There are also various performance improvements, not enumerated here.
|
|
</p>
|
|
|
|
<p>
|
|
TODO: complete this section
|
|
</p>
|
|
|
|
<dl id="database/sql"><dt><a href="/pkg/database/sql/">database/sql</a></dt>
|
|
<dd>
|
|
<p><!-- https://go.dev/issue/60370, CL 501700 -->
|
|
The new <a href="/pkg/database/sql/#Null"><code>Null[T]</code></a> type
|
|
provide a way to scan nullable columns for any column types.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
|
|
<dl id="reflect"><dt><a href="/pkg/reflect/">reflect</a></dt>
|
|
<dd>
|
|
<p><!-- https://go.dev/issue/61827, CL 517777 -->
|
|
The <a href="/pkg/reflect/#Value.IsZero"><code>Value.IsZero</code></a>
|
|
method will now return true for a floating-point or complex
|
|
negative zero, and will return true for a struct value if a
|
|
blank field (a field named <code>_</code>) somehow has a
|
|
non-zero value.
|
|
These changes make <code>IsZero</code> consistent with comparing
|
|
a value to zero using the language <code>==</code> operator.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
|
|
<h2 id="ports">Ports</h2>
|
|
|
|
<p>
|
|
TODO: complete this section, or delete if not needed
|
|
</p>
|
|
|