From f4643972bd4c17a235559069fbfe75c4a7f47fea Mon Sep 17 00:00:00 2001
From: Russ Cox
Both GOARCH=ppc64 and GOARCH=ppc64le now
- require at least Power8 support. In previous releases,
- only GOARCH=ppc64le required Power8 and the big
+ require at least POWER8 support. In previous releases,
+ only GOARCH=ppc64le required POWER8 and the big
endian ppc64 architecture supported older
hardware.
@@ -143,7 +143,7 @@ type T1 = T2
The Go compiler now supports compiling a package's functions in parallel, taking
advantage of multiple cores. This is in addition to the go command's
existing support for parallel compilation of separate packages.
- Parallel compilation is on by default, but can be disabled by setting the
+ Parallel compilation is on by default, but it can be disabled by setting the
environment variable GO19CONCURRENTCOMPILATION to 0.
- The ARM MULA instruction is now assembled correctly
+ The four-operand ARM MULA instruction is now assembled correctly,
with the addend register as the third argument and the result
register as the fourth and final argument.
- In previous releases, the meanings of the two arguments were
- reversed. Code using MULA will need to be updated.
+ In previous releases, the two meanings were reversed.
+ The three-operand form, in which the fourth argument is implicitly
+ the same as the third, is unaffected.
+ Code using four-operand MULA instructions
+ will need to be updated, but we believe this form is very rarely used.
MULAWT and MULAWB were already
- using the correct order and are unchanged.
+ using the correct order in all forms and are unchanged.
@@ -205,8 +208,8 @@ type T1 = T2
- Viewing documentation on struct fields is now supported with
- go doc struct.field.
+ Viewing documentation on struct fields is now supported.
+ For example, go doc http.Client.Jar.
Go 1.9 includes a new package,
math/bits, with optimized
- implementations for manipulating bits. On most architectures
+ implementations for manipulating bits. On most architectures,
functions in this package are additionally recognized by the
compiler and treated as intrinsics for additional performance.
Map type
in the sync package
is a concurrent map with amortized-constant-time loads, stores, and
- deletes. It is safe for multiple goroutines to call a Map's methods
+ deletes. It is safe for multiple goroutines to call a Map's methods
concurrently.
@@ -454,7 +457,7 @@ version of gccgo.
certificate files directory, respectively.
- The FreeBSD path /usr/local/etc/ssl/cert.pem is
+
The FreeBSD file /usr/local/etc/ssl/cert.pem is
now included in the certificate search path.
The package now reports an error if a predefined escaper (one of - "html", "urlquery" and "js") is found in a pipeline and its - rewriting by the contextual auto-escaper could potentially lead - to security or correctness issues. + "html", "urlquery" and "js") is found in a pipeline and does not match + what the auto-escaper would have decided on its own. + This avoids certain security or correctness issues. + Now use of one of these escapers is always either a no-op or an error. + (The no-op case eases migration from text/template.)
@@ -765,8 +770,8 @@ version of gccgo. Theos package now uses the internal runtime poller
for file I/O.
This reduces the number of threads required for read/write
- operations on pipes, and eliminates races when one goroutine
- closes a file while another using it for I/O.
+ operations on pipes, and it eliminates races when one goroutine
+ closes a file while another is using the file for I/O.
In previous releases, using a nil
Config.Rand
- value caused the same deterministic random number generator to be used.
- It now uses a random number generator seeded on the current time.
- For the old behavior, use rand.New(rand.NewSource(0)).
+ value caused a fixed deterministic random number generator to be used.
+ It now uses a random number generator seeded with the current time.
+ For the old behavior, set Config.Rand to rand.New(rand.NewSource(0)).