From 76319222f271a3ed4695466c1bb46dbd0a7885b1 Mon Sep 17 00:00:00 2001 From: Brad Fitzpatrick Date: Tue, 13 Jun 2017 20:24:43 +0000 Subject: [PATCH] doc: add more Go 1.9 notes Updates #20587 Change-Id: I7effe922242db45f3ce74882d07511aaaac2f634 Reviewed-on: https://go-review.googlesource.com/45613 Reviewed-by: Ian Lance Taylor --- doc/go1.9.html | 80 ++++++++++++++++++++++++++++++-------------------- 1 file changed, 48 insertions(+), 32 deletions(-) diff --git a/doc/go1.9.html b/doc/go1.9.html index 543a9ab74c0..3c2a1ce8fde 100644 --- a/doc/go1.9.html +++ b/doc/go1.9.html @@ -42,7 +42,8 @@ ul li { margin: 0.5em 0; } adds transparent monotonic time support, parallelizes compilation of functions within a package, better supports test helper functions, - and includes a new bit manipulation package. + includes a new bit manipulation package, + and has a new concurrent map type.

Changes to the language

@@ -225,6 +226,16 @@ type T1 = T2 line numbers for users.

+

Concurrent Map

+ +

+ The new 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 + concurrently. +

+

Minor changes to the library

@@ -245,14 +256,6 @@ type T1 = T2 -

crypto/aes
-
-

- TODO: https://golang.org/cl/38366: ARM assembly versions of encrypt, decrypt and expandKey -

- -
-
crypto/rand

@@ -269,7 +272,7 @@ type T1 = T2

- On UNIX systems the environment + On Unix systems the environment variables SSL_CERT_FILE and SSL_CERT_DIR can now be used to override the system default locations for the SSL certificate file and SSL @@ -362,14 +365,6 @@ type T1 = T2

-
go/build
-
-

- TODO: https://golang.org/cl/44291: make -I/-L options in cgo flags absolute -

- -
-
hash/fnv

@@ -528,7 +523,12 @@ type T1 = T2

net/http/fcgi

- TODO: https://golang.org/cl/40012: expose cgi env vars in request context + The new + ProcessEnv + function returns FastCGI environment variables associated with an HTTP request + for which there are no appropriate + http.Request + fields, such as REMOTE_USER.

@@ -536,7 +536,15 @@ type T1 = T2
net/http/httptest

- TODO: https://golang.org/cl/34639: add Client and Certificate to Server + The new + Server.Client + method returns an HTTP client configured for making requests to the test server. +

+ +

+ The new + Server.Certificate + method returns the test server's TLS certificate, if any.

@@ -564,19 +572,29 @@ type T1 = T2
os/exec

- TODO: https://golang.org/cl/37586: remove duplicate environment variables in Cmd.Start + The os/exec package now prevents child processes from being created with + any duplicate environment variables. + If Cmd.Env + contains duplicate environment keys, only the last + value in the slice for each duplicate key is used.

os/user
-

- TODO: https://golang.org/cl/33713: add Go implementation of LookupGroup, LookupGroupId +

+ Lookup and + LookupId now + work on Unix systems when CGO_ENABLED=0 by reading + the /etc/passwd file.

-

- TODO: https://golang.org/cl/37664: add non-cgo versions of Lookup, LookupId +

+ LookupGroup and + LookupGroupId now + work on Unix systems when CGO_ENABLED=0 by reading + the /etc/group file.

@@ -584,7 +602,9 @@ type T1 = T2
reflect

- TODO: https://golang.org/cl/38335: Add MakeMapWithSize for creating maps with size hint + The new + MakeMapWithSize + function creates a map with a capacity hint.

@@ -650,11 +670,7 @@ type T1 = T2
sync

- TODO: https://golang.org/cl/34310: make Mutex more fair -

- -

- TODO: https://golang.org/cl/36617: import Map from x/sync/syncmap + Mutex is now more fair.

@@ -664,7 +680,7 @@ type T1 = T2

The new field Credential.NoSetGroups - controls whether UNIX systems make a setgroups system call + controls whether Unix systems make a setgroups system call to set supplementary groups when starting a new process.