2023-07-18 14:55:13 -06:00
|
|
|
<!--{
|
|
|
|
"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>
|
|
|
|
|
2023-08-25 17:41:17 -06:00
|
|
|
<h3 id="cgo">Cgo</h3>
|
|
|
|
|
|
|
|
<p><!-- CL 497837 --> The special comment that precedes
|
|
|
|
<code>import</code> <code>"C"</code> may now include two
|
|
|
|
new <code>#cgo</code> directives.
|
|
|
|
<ul>
|
|
|
|
<li>
|
|
|
|
<code>#cgo</code> <code>noescape</code> <code>cFunctionName</code>
|
|
|
|
tells cgo that Go pointers passed to the C function
|
|
|
|
<code>cFunctionName</code> do not escape.
|
|
|
|
</li>
|
|
|
|
<li>
|
|
|
|
<code>#cgo</code> <code>nocallback</code> <code>cFunctionName</code>
|
|
|
|
tells cgo that the C function <code>cFunctionName</code> does
|
|
|
|
not call any Go functions.
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
See <a href="/cmd/cgo#hdr-Optimizing_calls_of_C_code">the <code>cgo</code>
|
|
|
|
documentation</a> for more details.
|
|
|
|
</p>
|
|
|
|
|
2023-07-18 14:55:13 -06:00
|
|
|
<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>
|
|
|
|
|
2023-08-14 22:33:37 -06:00
|
|
|
<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>
|
|
|
|
|
2023-07-18 14:55:13 -06:00
|
|
|
<h2 id="ports">Ports</h2>
|
|
|
|
|
|
|
|
<p>
|
|
|
|
TODO: complete this section, or delete if not needed
|
|
|
|
</p>
|
|
|
|
|