Skip to content

Commit 5d1c601

Browse files
committed
doc: more go1.8.html updates
TBR=See https://golang.org/cl/33244 Updates #17929 Change-Id: I648df63aeb67aa2229c7b4fc23676a78b31140a0 Reviewed-on: https://go-review.googlesource.com/33657 Reviewed-by: Brad Fitzpatrick <[email protected]>
1 parent 0c5c7c3 commit 5d1c601

File tree

1 file changed

+51
-20
lines changed

1 file changed

+51
-20
lines changed

doc/go1.8.html

+51-20
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,8 @@ <h2 id="language">Changes to the language</h2>
4949
<p> <!-- CL 17711 -->
5050
The language specification now only requires that implementations
5151
support up to 16-bit exponents in floating-point constants. This does not affect
52-
either the <code>gc</code> or <code>gccgo</code> compilers, both of
52+
either the “<a href="/cmd/compile/"><code>gc</code></a>” or
53+
<code>gccgo</code> compilers, both of
5354
which still support 32-bit exponents.
5455
</p>
5556

@@ -214,8 +215,10 @@ <h3 id="compiler">Compiler Toolchain</h3>
214215
and provides a better platform for optimizations
215216
such as bounds check elimination.
216217
The new back end reduces the CPU time required by
217-
<a href="https://golang.org/test/bench/go1/">our benchmark programs</a> by N-M%.
218-
TODO: ARM binary size & perf numbers.
218+
<a href="https://golang.org/test/bench/go1/">our benchmark programs</a> by 20-30%
219+
on 32-bit ARM systems. For 64-bit x86 systems, which already used the SSA backend in
220+
Go 1.7, the gains are a more modest 0-10%. Other architectures will likely
221+
see improvements closer to the 32-bit ARM numbers.
219222
</p>
220223

221224
<p>
@@ -234,15 +237,10 @@ <h3 id="compiler">Compiler Toolchain</h3>
234237
The compiler and linker have been optimized and run faster in this
235238
release than in Go 1.7, although they are still slower than we would
236239
like and will continue to be optimized in future releases.
240+
Compared to the previous release, Go 1.8 is
241+
<a href="https://dave.cheney.net/2016/11/19/go-1-8-toolchain-improvements">about 15% faster</a>.
237242
</p>
238243

239-
<p>
240-
Due to changes across the compiler toolchain and standard library,
241-
binaries built with this release should typically be smaller than
242-
binaries built with Go 1.7, sometimes by as much as TODO numbers.
243-
</p>
244-
245-
246244
<h3 id="cmd_cgo">Cgo</h3>
247245

248246
<p>TODO</p>
@@ -308,6 +306,12 @@ <h3 id="liveness">Argument Liveness</h3>
308306
function added in Go 1.7.
309307
</p>
310308

309+
<p>
310+
<i>Updating:</i> Users of finalizers should see the example
311+
in the <a href="/pkg/runtime/#KeepAlive"><code>KeepAlive</code> documentation</a>
312+
to see where a call to <code>KeepAlive</code> might be needed.
313+
</p>
314+
311315
<h3 id="memstats">MemStats Documentation</h3>
312316

313317
<p> <!-- CL 28972 -->
@@ -358,7 +362,7 @@ <h3 id="defer">Defer</h3>
358362

359363
<h3 id="cgoperf">Cgo</h3>
360364

361-
<p>Calls from Go into C are now TODO% faster.</p>
365+
<p>The overhead of calls from Go into C has been reduced by about half.</p>
362366

363367
<h2 id="library">Standard library</h2>
364368

@@ -644,7 +648,8 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
644648
<dl id="encoding_pem"><dt><a href="/pkg/encoding/pem/">encoding/pem</a></dt>
645649
<dd>
646650
<p> <!-- CL 27391 -->
647-
The PEM decoder is now strict about the format of the ending line.
651+
<a href="/pkg/encoding/pem/#Decode"><code>Decode</code></a>
652+
is now strict about the format of the ending line.
648653
</p>
649654
</dd>
650655
</dl>
@@ -673,10 +678,13 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
673678
<dl id="image_png"><dt><a href="/pkg/image/png/">image/png</a></dt>
674679
<dd>
675680
<p> <!-- CL 32143, CL 32140 -->
676-
The PNG decoder now supports truecolor and grayscale transparency.
681+
<a href="/pkg/image/png/#Decode"><code>Decode</code></a>
682+
(and <code>DecodeConfig</code>)
683+
now supports True Color and grayscale transparency.
677684
</p>
678685
<p> <!-- CL 29872 -->
679-
The PNG encoder is now faster and creates smaller output
686+
<a href="/pkg/image/png/#Encoder"><code>Encoder</code></a>
687+
is now faster and creates smaller output
680688
when encoding paletted images.
681689
</p>
682690
</dd>
@@ -702,19 +710,38 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
702710
<dd>
703711

704712
<p>
705-
The package's parsing has been relaxed in two ways to accept
713+
The
714+
<a href="/pkg/mime/quotedprintable/#Reader"><code>Reader</code></a>'s
715+
parsing has been relaxed in two ways to accept
706716
more input seen in the wild. First, it now accepts
707717
a <code>=</code> sign even if it's not followed by two hex
708718
digits. <!-- CL 32174 -->
709719

710720
Second, it accepts a trailing soft line-break at the end of a
711-
message. <!-- CL 27530 -->. That is, the final byte of the
721+
message. <!-- CL 27530 --> That is, the final byte of the
712722
message may be a <code>=</code> sign and it will now be ignored.
713723
</p>
714724

715725
</dd>
716726
</dl>
717727

728+
<dl id="net"><dt><a href="/pkg/net/">net</a></dt>
729+
<dd>
730+
731+
<p><!-- CL 30164, CL 33473 -->
732+
The <a href="/pkg/net/#Conn"><code>Conn</code></a> documentation
733+
has been updated to clarify expectations of an interface
734+
implementation. Updates in the <code>net/http</code> packages
735+
depend on implementations obeying the documentation.
736+
</p>
737+
<p><i>Updating:</i> implementations of the <code>Conn</code> interface should verify
738+
they implement the documented semantics. TODO: https://golang.org/cl/18097
739+
</p>
740+
741+
<p>TODO: many other net changes</p>
742+
743+
</dd>
744+
</dl>
718745

719746
<dl id="net_http"><dt><a href="/pkg/net/http/">net/http</a></dt>
720747
<dd>
@@ -758,7 +785,9 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
758785
middle of a slow request, the <code>Handler</code> can now
759786
detect that the user is gone. This complements the
760787
existing <a href="/pkg/net/http/#CloseNotifier"><code>CloseNotifier</code></a>
761-
support.
788+
support. This functionality requires that the underlying
789+
<a href="/pkg/net/#Conn"><code>net.Conn</code></a> implements
790+
<a href="#net">recently-clarified interface documentation</a>.
762791
</li>
763792

764793
<li><!-- CL 32479 -->
@@ -794,7 +823,7 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
794823
now copies most request headers on redirect. Authentication-specific
795824
headers are only sent to the same origin or subdomains thereof.
796825
Cookies are not sent again, unless they were set explicitly.
797-
TODO: verify this, and link to docs once https://github.com/golang/go/issues/18096
826+
TODO: verify this, and link to docs once https://golang.org/issue/18096
798827
is fixed.
799828
</li>
800829

@@ -973,8 +1002,10 @@ <h3 id="minor_library_changes">Minor changes to the library</h3>
9731002
</p>
9741003

9751004
<p> <!-- CL 33429 -->
976-
<code>Parse</code> now validates days that are too small, in
977-
addition to days that are too large.
1005+
<a href="/pkg/time/#Parse"><code>Parse</code></a>
1006+
now rejects dates before the start of a month, such as June 0;
1007+
it already rejected dates beyond the end of the month, such as
1008+
June 31 and July 32.
9781009
</p>
9791010

9801011
<p> <!-- CL 33029 -->

0 commit comments

Comments
 (0)