mirror of
https://github.com/golang/go
synced 2024-11-11 22:20:22 -07:00
doc/go1.13: runtime release notes, some compiler release notes
Change-Id: Icc5083a3de0c6b737bfc20b573ed785651910148 Reviewed-on: https://go-review.googlesource.com/c/go/+/182461 Reviewed-by: Andrew Bonventre <andybons@golang.org>
This commit is contained in:
parent
52572afa20
commit
bd7d1bb8f3
100
doc/go1.13.html
100
doc/go1.13.html
@ -44,12 +44,26 @@ TODO
|
||||
TODO
|
||||
</p>
|
||||
|
||||
<p><!-- CL 158719 -->
|
||||
TODO: <a href="https://golang.org/cl/158797">https://golang.org/cl/158797</a>: implement shifts by signed amounts
|
||||
</p>
|
||||
|
||||
<h2 id="ports">Ports</h2>
|
||||
|
||||
<p>
|
||||
TODO
|
||||
</p>
|
||||
|
||||
<p><!-- CL 174457 -->
|
||||
TODO: <a href="https://golang.org/cl/174457">https://golang.org/cl/174457</a>: add new GOOS=illumos, split out of GOOS=solaris
|
||||
</p>
|
||||
|
||||
<h3 id="android">Android</h3>
|
||||
|
||||
<p><!-- CL 170127 -->
|
||||
Go programs are now compatible with Android Q.
|
||||
</p>
|
||||
|
||||
<h3 id="darwin">Darwin</h3>
|
||||
|
||||
<p>
|
||||
@ -67,18 +81,64 @@ TODO
|
||||
FreeBSD 12.0 or later requires a kernel with the COMPAT_FREEBSD11 option set (this is the default).
|
||||
</p>
|
||||
|
||||
<h3 id="aix-ppc64">AIX on PPC64</h3>
|
||||
|
||||
<p><!-- CL 164003 -->
|
||||
AIX on PPC64 now supports cgo and external linking.
|
||||
</p>
|
||||
|
||||
<h2 id="tools">Tools</h2>
|
||||
|
||||
<p>
|
||||
TODO
|
||||
</p>
|
||||
|
||||
<h2 id="runtime">Runtime</h2>
|
||||
<h3 id="compiler">Compiler toolchain</h3>
|
||||
|
||||
<p>
|
||||
TODO
|
||||
<p><!-- CL 170448 -->
|
||||
The compiler has a new implementation of escape analysis that is
|
||||
more precise. For most Go code should be an improvement (in other
|
||||
words, more Go variables and expressions allocated on the stack
|
||||
instead of heap). However, this increased precision may also break
|
||||
invalid code that happened to work before (for example, code that
|
||||
violates
|
||||
the <a href="/pkg/unsafe/#Pointer"><code>unsafe.Pointer</code>
|
||||
safety rules</a>). If you notice any regressions that appear
|
||||
related, the old escape analysis pass can be re-enabled
|
||||
with <code>go</code> <code>build</code> <code>-gcflags=all=-newescape=false</code>.
|
||||
The option to use the old escape analysis will be removed in a
|
||||
future release.
|
||||
</p>
|
||||
|
||||
<p><!-- CL 161904 -->
|
||||
The compiler no longer emits floating point or complex constants
|
||||
to <code>go_asm.h</code> files. These have always been emitted in a
|
||||
form that could not be used as numeric constant in assembly code.
|
||||
</p>
|
||||
|
||||
<h2 id="runtime">Runtime</h2>
|
||||
|
||||
<p><!-- CL 161477 -->
|
||||
Out of range panic messages now include the index that was out of
|
||||
bounds and the length (or capacity) of the slice. For
|
||||
example, <code>s[3]</code> on a slice of length 1 will panic with
|
||||
"runtime error: index out of range [3] with length 1".
|
||||
</p>
|
||||
|
||||
<p><!-- CL 171758 -->
|
||||
This release improves performance of most uses of <code>defer</code>
|
||||
by 30%.
|
||||
</p>
|
||||
|
||||
<p><!-- CL 142960 -->
|
||||
The runtime is now more aggressive at returning memory to the
|
||||
operating system to make it available to co-tenant applications.
|
||||
Previously, the runtime could retain memory for five or more minutes
|
||||
following a spike in the heap size. It will now begin returning it
|
||||
promptly after the heap shrinks. However, on many OSes, including
|
||||
Linux, the OS itself reclaims memory lazily, so process RSS will not
|
||||
decrease until the system is under memory pressure.
|
||||
</p>
|
||||
|
||||
<h2 id="library">Core library</h2>
|
||||
|
||||
@ -105,9 +165,6 @@ TODO; link to <a href="/doc/go1.12#tls_1_3">Go 1.12 notes</a>.
|
||||
TODO
|
||||
</p>
|
||||
|
||||
<!-- CL 161904: https://golang.org/cl/161904: cmd/compile: do not export float or complex constants with -asmhdr -->
|
||||
|
||||
<!-- CL 170448: https://golang.org/cl/170448: cmd/compile: enable -newescape by default -->
|
||||
<!-- CL 174125: https://golang.org/cl/174125: cmd/dist: add support for openbsd/arm64 -->
|
||||
<!-- CL 177797: https://golang.org/cl/177797: cmd/doc: always print package clause except for commands -->
|
||||
<!-- CL 173345: https://golang.org/cl/173345: cmd/go: add -trimpath build flag -->
|
||||
@ -115,14 +172,6 @@ TODO
|
||||
<!-- CL 175983: https://golang.org/cl/175983: cmd/go: set the "generate" build tag in go generate, per design doc -->
|
||||
<!-- CL 167747: https://golang.org/cl/167747: 'go get' in module mode now supports the version suffix '@patch'.: cmd/go/internal/modget: support the suffix '@patch' in 'go get' -->
|
||||
|
||||
<dl id="all"><dt><a href="/pkg/all/">all</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 174457 -->
|
||||
TODO: <a href="https://golang.org/cl/174457">https://golang.org/cl/174457</a>: add new GOOS=illumos, split out of GOOS=solaris
|
||||
</p>
|
||||
|
||||
</dl><!-- all -->
|
||||
|
||||
<dl id="bytes"><dt><a href="/pkg/bytes/">bytes</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 161760 -->
|
||||
@ -175,7 +224,12 @@ TODO
|
||||
<dl id="debug/dwarf"><dt><a href="/pkg/debug/dwarf/">debug/dwarf</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 158797 -->
|
||||
TODO: <a href="https://golang.org/cl/158797">https://golang.org/cl/158797</a>: more graceful handling of unsupported types
|
||||
The <a href="/pkg/debug/dwarf/#Data.Type"><code>Data.Type</code></a>
|
||||
method no longer panics if it encounters an unknown DWARF tag in
|
||||
the type graph. Instead, it represents that component of the
|
||||
type with
|
||||
an <a href="/pkg/debug/dwarf/#UnsupportedType"><code>UnsupportedType</code></a>
|
||||
object.
|
||||
</p>
|
||||
|
||||
</dl><!-- debug/dwarf -->
|
||||
@ -312,22 +366,6 @@ TODO
|
||||
|
||||
</dl><!-- runtime -->
|
||||
|
||||
<dl id="runtime, internal/poll, net"><dt><a href="/pkg/runtime, internal/poll, net/">runtime, internal/poll, net</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 166497 -->
|
||||
TODO: <a href="https://golang.org/cl/166497">https://golang.org/cl/166497</a>: report event scanning error on read event
|
||||
</p>
|
||||
|
||||
</dl><!-- runtime, internal/poll, net -->
|
||||
|
||||
<dl id="runtime/cgo"><dt><a href="/pkg/runtime/cgo/">runtime/cgo</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 170127 -->
|
||||
TODO: <a href="https://golang.org/cl/170127">https://golang.org/cl/170127</a>: look for android_get_device_api_level in libc.so
|
||||
</p>
|
||||
|
||||
</dl><!-- runtime/cgo -->
|
||||
|
||||
<dl id="strings"><dt><a href="/pkg/strings">strings</a></dt>
|
||||
<dd>
|
||||
<p><!-- CL 142003 -->
|
||||
|
Loading…
Reference in New Issue
Block a user