diff options
| -rw-r--r-- | doc/go1.8.html | 102 | ||||
| -rw-r--r-- | doc/go1.8.txt | 100 |
2 files changed, 144 insertions, 58 deletions
diff --git a/doc/go1.8.html b/doc/go1.8.html index a88af0c077..9a33cee68d 100644 --- a/doc/go1.8.html +++ b/doc/go1.8.html @@ -33,7 +33,6 @@ We expect almost all Go programs to continue to compile and run as before. <p> The release <a href="#ports">adds support for 32-bit MIPS</a>, <a href="#compiler">updates the compiler back end</a> to generate more efficient code, -produces smaller binaries (TODO: link/numbers), <a href="#gc">reduces GC pauses</a> by eliminating stop-the-world stack rescanning, <a href="#h2push">adds HTTP/2 Push support</a>, <a href="#httpshutdown">adds HTTP graceful shutdown</a>, @@ -268,6 +267,7 @@ More work remains for Go 1.9. <h3 id="defer">Defer</h3> +<!-- CL 29656, CL 29656 --> <p><code>defer</code> calls are now about twice as fast.</p> <h3 id="cgoperf">Cgo</h3> @@ -327,7 +327,7 @@ in mind. <dl id="archive_tar"><dt><a href="/pkg/archive/tar/">archive/tar</a></dt> <dd> - <p> + <p> <!-- CL 28471, CL 31440, CL 31441, CL 31444, CL 28418, CL 31439 --> The tar implementation corrects many bugs in corner cases of the file format. The <a href="/pkg/archive/tar/#Reader"><code>Reader</code></a> is now able to process tar files in the PAX format with entries larger than 8GB. The <a href="/pkg/archive/tar/#Writer"><code>Writer</code></a> no longer produces invalid tar files in some situations involving long pathnames. @@ -336,11 +336,24 @@ in mind. </dd> </dl> +<dl id="archive_zip"><dt><a href="/pkg/archive/zip/">archive/zip</a></dt> + <dd> + + <p> <!-- CL 18274 --> + The zip <code>Reader</code> now supports modification times in + the NTFS, UNIX, and Extended Time Stamp metadata fields. + <!-- CL 30811 --> + When writing zip files, the Extended Time Stamp field is written + if TODO: validate implementation. + </p> + + </dd> +</dl> <dl id="compress_flate"><dt><a href="/pkg/compress/flate/">compress/flate</a></dt> <dd> - <p> + <p> <!-- CL 31640, CL 31174, CL 32149 --> There have been some minor fixes to the encoder to improve the compression ratio in certain situations. As a result, the exact encoded output of DEFLATE may be different from Go 1.7. Since @@ -357,6 +370,11 @@ in mind. method. </p> + <p> <!-- CL 28216 --> + The decoder, upon encountering an error, now returns any + buffered data it had uncompressed along with the error. + </p> + </dd> </dl> @@ -393,7 +411,33 @@ in mind. </dd> </dl> -<dl id="encoding_binary"><dt><a href="/pkg/encoding/">encoding/binary</a></dt> +<dl id="debug_pe"><dt><a href="/pkg/debug/pe/">debug/pe</a></dt> + <dd> + <p> <!-- CL 22720, CL 27212, CL 22181, CL 22332, CL 22336, Issue 15345 --> + TODO: describe Issue 15345 and CL 22181, CL 22332, CL 22336 + <pre>pkg debug/pe, method (*COFFSymbol) FullName(StringTable) (string, error) +pkg debug/pe, method (StringTable) String(uint32) (string, error) +pkg debug/pe, type File struct, COFFSymbols []COFFSymbol +pkg debug/pe, type File struct, StringTable StringTable +pkg debug/pe, type Reloc struct +pkg debug/pe, type Reloc struct, SymbolTableIndex uint32 +pkg debug/pe, type Reloc struct, Type uint16 +pkg debug/pe, type Reloc struct, VirtualAddress uint32 +pkg debug/pe, type Section struct, Relocs []Reloc +pkg debug/pe, type StringTable []uint8</pre> + </p> + </dd> +</dl> + +<dl id="encoding_base64"><dt><a href="/pkg/encoding/base64/">encoding/base64</a></dt> + <dd> + <p> <!-- CL 24964 --> + The new <a href="/pkg/encoding/base64/#Encoding.Strict"><code>Encoding.Strict</code></a> method returns an <code>Encoding</code> that causes the decoder to return an error when the trailing padding bits are not zero. + </p> + </dd> +</dl> + +<dl id="encoding_binary"><dt><a href="/pkg/encoding/binary/">encoding/binary</a></dt> <dd> <p> <!-- CL 28514 --> The package now supports boolean values. @@ -403,6 +447,46 @@ in mind. </dd> </dl> +<dl id="encoding_json"><dt><a href="/pkg/encoding/json/">encoding/json</a></dt> + <dd> + + <p> <!-- CL 18692 --> + <a href="/pkg/encoding/json/#UnmarshalTypeError"><code>UnmarshalTypeError</code></a> + now includes the struct and field name. + </p> + + <p> <!-- CL 31932 --> + A <code>nil</code> <a href="/pkg/encoding/json/#Marshaler"><code>Marshaler</code></a> + now marshals as a JSON "<code>null</code>" value. + </p> + + <p> <!-- CL 21811 --> + A <a href="/pkg/encoding/json/#RawMessage"><code>RawMessage</code></a> value now + marshals the same as its pointer type. + </p> + + <p> <!-- CL 30371 --> + Numbers are now formatted in the same floating point format as they are in ES6. + </p> + + <p> <!-- CL 30944 --> + Implementations + of <a href="/pkg/encoding/json/#Unmarshaler"><code>Unmarshaler</code></a> + are now called with the literal "<code>null</code>" and can + decide what to do with it. + </p> + + </dd> +</dl> + +<dl id="encoding_pem"><dt><a href="/pkg/encoding/pem/">encoding/pem</a></dt> + <dd> + <p> <!-- CL 27391 --> + The PEM decoder is now strict about the format of the ending line. + </p> + </dd> +</dl> + <dl id="expvar"><dt><a href="/pkg/expvar/">expvar</a></dt> <dd> <p> <!-- CL 30917 --> @@ -423,6 +507,7 @@ in mind. </dd> </dl> + <dl id="image_png"><dt><a href="/pkg/image/png/">image/png</a></dt> <dd> <p> <!-- CL 32143, CL 32140 --> @@ -512,7 +597,8 @@ in mind. <a href="/pkg/net/url/#PathEscape"><code>PathEscape</code></a> and <a href="/pkg/net/url/#PathUnescape"><code>PathUnescape</code></a> - deal with path escaping.</p> + are similar to the query escaping and unescaping functions but + don't treat spaces specially.</p> <p> <!-- CL 28933 --> The new methods <a href="/pkg/net/url/#URL.Hostname"><code>URL.Hostname</code></a> @@ -581,6 +667,12 @@ in mind. addition to days that are too large. </p> + <p> <!-- CL 33029 --> + The <code>tzdata</code> database has been updated to version + 2016i for systems that don't already have a local time zone + database. + </p> + <p> </dd> </dl> diff --git a/doc/go1.8.txt b/doc/go1.8.txt index 65fe180d27..588d56d5e0 100644 --- a/doc/go1.8.txt +++ b/doc/go1.8.txt @@ -13,16 +13,6 @@ go: can set secure/insecure GIT schemes using GIT_ALLOW_PROTOCOL env var (CL 301 API additions and behavior changes: -archive/tar: fix and cleanup readOldGNUSparseMap (CL 28471) -archive/tar: fix parsePAX to be POSIX.1-2001 compliant (CL 31440) -archive/tar: fix parsePAXTime (CL 31441) -archive/tar: make Reader handle GNU format properly (CL 31444) -archive/tar: reapply Header.Size to regFileReader after merging (CL 28418) -archive/tar: validate sparse headers in parsePAX (CL 31439) - -archive/zip: handle mtime in NTFS/UNIX/ExtendedTS extra fields (CL 18274) -archive/zip: only use Extended Timestamp on non-zero MS-DOS timestamps (CL 30811) - cmd/cgo: add #line directives to avoid printing bogus references to Go source files (CL 32613) cmd/cgo: add -srcdir option (CL 32354) cmd/cgo: don't ignore qualifiers, don't cast to void* (CL 33097) @@ -34,16 +24,10 @@ cmd/compile, runtime: add go:yeswritebarrierrec pragma (CL 30938) cmd/compile/internal/gc: add runtime/trace support (CL 25354) cmd/compile/internal/gc: enable new parser by default (CL 27203) cmd/compile/internal/syntax: fast Go syntax trees, initial commit (CL 27195) -cmd/compile: add SSA backend for s390x and enable by default (CL 28978) cmd/compile: add compiler phase timing (CL 24462) -cmd/compile: add go:notinheap type pragma (CL 30939) cmd/compile: add inline explainer (CL 22782) -cmd/compile: do more type conversion inline (CL 32313) cmd/compile: enable flag-specified dump of specific phase+function (CL 23044) -cmd/compile: fail gracefully on export format skew (CL 27814) -cmd/compile: inline convI2E (CL 31260) cmd/compile: remove -A flag (CL 31497) -cmd/compile: remove support for textual export format (CL 27171) cmd/cover: Fix compiler directives handling (CL 30161) cmd/cover: change covered block for switch/select case to exclude expression (CL 32612) @@ -105,15 +89,7 @@ cmd/vet: improve asmdecl parameter handling (CL 27150) cmd/vet: properly handle indexed arguments in printf (CL 24391) cmd/vet: skip printf check for non-constant format string during failed import (CL 29014) -compress/flate: always return uncompressed data in the event of error (CL 28216) -compress/flate: level 1 (best speed) match across blocks (CL 31640) -compress/flate: make compression level 0 consistent (CL 31174) -compress/flate: tighten the BestSpeed max match offset bound. (CL 32149) -compress/gzip, compress/zlib: add HuffmanOnly as compression levels. (CL 31186) -compress/gzip: only encode MTIME if it is valid (CL 32325) - crypto/cipher: enforce message size limits for GCM (CL 28410) -crypto/rsa: ensure that generating toy RSA keys doesn't loop (CL 28969) crypto/tls: add CloseWrite method to Conn (CL 25159, 31318) crypto/tls: add Config.Clone (CL 28075) @@ -132,6 +108,7 @@ crypto/tls: set Conn.ConnectionState.ServerName unconditionally (CL 22862) crypto/tls: support AES-128-CBC cipher suites with SHA-256 (CL 27315) crypto/tls: support ChaCha20-Poly1305. (CL 30957) crypto/tls: support X25519 (CL 30824, CL 30825) +crypto/{tls,cipher,internal/cryptohw}: prioritise AES-GCM when hardware support is present. (CL 32871) crypto/x509: Fix bug in UnknownAuthorityError.Error (CL 27992) crypto/x509: allow a leaf certificate to be specified directly as root (CL 27393) @@ -148,8 +125,6 @@ crypto/x509: return error for missing SerialNumber (CL 27238) crypto/x509: support PSS signatures (CL 24743) crypto/x509: support RHEL 7 cert bundle (CL 30375) -crypto/{cipher,tls,internal/cryptohw}: prioritise AES-GCM when hardware support is present. (CL 32871) - database/sql: accept nil pointers to Valuers implemented on value receivers (CL 31259) database/sql: add Pinger interface to driver Conn (CL 32136) database/sql: add context helper methods and transaction types (CL 31258) @@ -159,32 +134,20 @@ database/sql: add support for multiple result sets (CL 30592) database/sql: don't hang if the driver Exec method panics (CL 23576) database/sql: support returning query database types (CL 29961) -debug/elf: add sparc64 relocations (CL 30870) -debug/pe: revert CL 22720 (CL 27212) encoding/asn1: return error for unexported fields in Marshal, Unmarshal (CL 31540) -encoding/base64: add Encoding.Strict (CL 24964) - -encoding/json: add struct and field name to UnmarshalTypeError message (CL 18692) -encoding/json: encode nil Marshaler as "null" (CL 31932) -encoding/json: fix decoding of null into Unmarshaler, TextUnmarshaler (CL 30944) -encoding/json: marshal the RawMessage value type the same as its pointer type (CL 21811) -encoding/json: use standard ES6 formatting for numbers during marshal (CL 30371) - -encoding/pem: be stricter about the ending line (CL 27391) - encoding/xml: add wildcard support for collecting all attributes (CL 30946) encoding/xml: prevent omitempty from omitting non-nil pointers to empty values (CL 15684) -flag: arrange for FlagSet.Usage to be non-nil by default (CL 31576) fmt: document and adjust Scanf space handling to eliminate a few paradoxes (CL 30611) go/build: allow % in ${SRCDIR} expansion for Jenkins (CL 31611) go/build: do not record go:binary-only-package if build tags not satisfied (CL 31577) go/build: implement default GOPATH (CL 32019) + go/doc: add IsPredeclared function (CL 29870) go/doc: allow ToHTML to properly handle URLs containing semicolons (CL 25385) -go/internal/gcimporter: fail gracefully on export format skew (CL 27816) + go/printer: don't drop required semi/linebreak after /*-comment (CL 33016) go/token: fix race in FileSet.PositionFor. (CL 25345) go/types: expose Default function, which converts untyped T to T (CL 30715) @@ -194,16 +157,12 @@ html/template: check "type" attribute in <script> (CL 14336) internal/trace: fix analysis of EvGoWaiting/EvGoInSyscall events (CL 25572) -lib/time: update tzdata to 2016i (CL 33029) -math/big: Rat.SetString to report error if input is not consumed entirely (CL 30472) math/big: add (*Int).Sqrt (CL 30706) math/big: implement Float.Scan, type assert fmt interfaces to enforce docs (CL 30723) math/big: support negative numbers in ModInverse (CL 29299) -math/big: test and optimize Exp(2, y, n) for large y, odd n (CL 30708) mime: preserve unnecessary backslash escapes as literals (CL 32175) -net/http, net/http/httptest: make http2's TrailerPrefix work for http1 (CL 32479) net/http/httptest: fill ContentLength in recorded Response (CL 28302) net/http/httptrace: add ClientTrace.TLSHandshakeStart & TLSHandshakeDone (CL 30359) net/http/httputil: add ModifyResponse to reverseProxy (CL 32356) @@ -213,13 +172,13 @@ net/http/httputil: make ReverseProxy send nil Body requests when possible (CL 28 net/http/httputil: remove custom hop-by-hop headers from response in ReverseProxy (CL 28810) net/http/httputil: remove proxied headers mentioned in connection-tokens (CL 27970) +net/http, net/http/httptest: make http2's TrailerPrefix work for http1 (CL 32479) net/http: add ErrAbortHandler, make Server quiet if used as panic value (CL 33099) net/http: add NoBody, don't return nil from NewRequest on zero bodies (CL 31726) net/http: add Request.GetBody func for 307/308 redirects (CL 31733) net/http: add Server.Close & Server.Shutdown for forced & graceful shutdown (CL 32329) net/http: add Server.ReadHeaderTimeout, IdleTimeout, document WriteTimeout (CL 32024) net/http: add Transport.ProxyConnectHeader to control headers to proxies (CL 32481) -net/http: add an interface for HTTP/2 server push (CL 32012) net/http: allow Handlers to test Hijacked conn without spamming error log (CL 30812) net/http: don't sniff Request.Body on 100-continue requests in Transport (CL 30151) net/http: handle 3xx redirects properly (CL 29852) @@ -243,14 +202,13 @@ net/http: update bundled http2, add h2 Transport.IdleConnTimeout tests (CL 30078 net: add (*UnixListener).SetUnlinkOnClose (CL 32099) net: add Buffers type, do writev on unix (CL 29951) + net: implement Buffers on windows (CL 32371) net: add Resolver type, Dialer.Resolver, and DefaultResolver (CL 29440) net: apply tcp4/tcp6 restrictions to literals in ResolveTCPAddr (CL 32100) net: break up >1GB reads and writes on stream connections (CL 31584) net: bring domain name length checks into RFC compliance (CL 31722) net: fix Dial(":80") on Windows (CL 32101) -net: implement Buffers on windows (CL 32371) net: implement network interface API for Solaris (CL 29892) -net: make LookupPort and lookupProtocol work on nacl (CL 28951) net: only remove Unix domain socket file on the first call to Close (CL 32098) net: remove parsing of negative decimals in IPv4 literal (CL 28414) net: respect resolv.conf rotate option (CL 29233) @@ -265,9 +223,7 @@ os: consider only files from #M as regular on Plan 9 (CL 32152) os: don't let File.Readdir return an empty slice and nil error (CL 28056) os: make IsExist report true on ERROR_DIR_NOT_EMPTY on Windows (CL 29753) os: make Windows readConsole handle input and output correctly (CL 29493) -os: prevent infinite symlink loop of Stat on Windows (CL 27580) os: reject Rename("old", "new") where new is a directory (CL 31358) -os: use GetConsoleCP() instead of GetACP() (CL 27575) os: use extended-length paths on Windows when possible (CL 32451) path/filepath: don't return SkipDir at top (CL 24780) @@ -322,6 +278,8 @@ bytes: improve WriteRune performance (CL 28816) bytes: improve performance for bytes.Compare on ppc64x (CL 30949) bytes: make IndexRune faster (CL 28537) cmd/asm, go/build: invoke cmd/asm only once per package (CL 27636) +cmd/compile: do more type conversion inline (CL 32313) +cmd/compile: inline convI2E (CL 31260) cmd/compile, cmd/link: more efficient typelink generation (CL 31772) cmd/compile, cmd/link: stop generating unused go.string.hdr symbols. (CL 31030) cmd/compile,runtime: redo how map assignments work (CL 30815) @@ -375,14 +333,14 @@ encoding/asn1: reduce allocations in Marshal (CL 27030) encoding/csv: avoid allocations when reading records (CL 24723) encoding/hex: change lookup table from string to array (CL 27254) encoding/json: Use a lookup table for safe characters (CL 24466) -hash/crc32: improve the AMD64 implementation using SSE4.2 (CL 24471) -hash/crc32: improve the AMD64 implementation using SSE4.2 (CL 27931) +hash/crc32: improve the AMD64 implementation using SSE4.2 (CL 24471, CL 27931) hash/crc32: improve the processing of the last bytes in the SSE4.2 code for AMD64 (CL 24470) image/color: improve speed of RGBA methods (CL 31773) image/draw: optimize drawFillOver as drawFillSrc for opaque fills (CL 28790) math/big: 10%-20% faster float->decimal conversion (CL 31250, CL 31275) math/big: avoid allocation in float.{Add, Sub} when there's no aliasing (CL 23568) math/big: make division faster (CL 30613) +math/big: test and optimize Exp(2, y, n) for large y, odd n (CL 30708) math/big: use array instead of slice for deBruijn lookups (CL 26663) math/big: uses SIMD for some math big functions on s390x (CL 32211) math: speed up Gamma(+Inf) (CL 31370) @@ -392,7 +350,6 @@ reflect: avoid zeroing memory that will be overwritten (CL 28011) regexp: avoid alloc in QuoteMeta when not quoting (CL 31395) regexp: reduce mallocs in Regexp.Find* and Regexp.ReplaceAll* (CL 23030) runtime: cgo calls are about 100ns faster (CL 29656, CL 30080) -runtime: defer is now 2X faster (CL 29656) runtime: implement getcallersp in Go (CL 29655) runtime: improve memmove for amd64 (CL 22515, CL 29590) runtime: increase malloc size classes (CL 24493) @@ -401,7 +358,6 @@ runtime: make append only clear uncopied memory (CL 30192) runtime: make assists perform root jobs (CL 32432) runtime: memclr perf improvements on ppc64x (CL 30373) runtime: minor string/rune optimizations (CL 27460) -runtime: optimize defer code (CL 29656) runtime: remove a load and shift from scanobject (CL 22712) runtime: remove defer from standard cgo call (CL 30080) runtime: speed up StartTrace with lots of blocked goroutines (CL 25573) @@ -427,13 +383,33 @@ cmd/compile, runtime: stop padding stackmaps to 4 bytes (CL 30817) Probably omit: (too minor, or just bug fixes) all: freeze net/rpc and reword the 'frozen' message in other frozen packages (CL 32112) +archive/tar: fix and cleanup readOldGNUSparseMap (CL 28471) +archive/tar: fix parsePAX to be POSIX.1-2001 compliant (CL 31440) +archive/tar: fix parsePAXTime (CL 31441) +archive/tar: make Reader handle GNU format properly (CL 31444) +archive/tar: reapply Header.Size to regFileReader after merging (CL 28418) +archive/tar: validate sparse headers in parsePAX (CL 31439) +archive/zip: handle mtime in NTFS/UNIX/ExtendedTS extra fields (CL 18274) +archive/zip: only use Extended Timestamp on non-zero MS-DOS timestamps (CL 30811) +cmd/compile: add go:notinheap type pragma (CL 30939) +cmd/compile: fail gracefully on export format skew (CL 27814) +cmd/compile: remove support for textual export format (CL 27171) cmd/gofmt: don't eat source if -w fails (CL 33018) +compress/gzip, compress/zlib: add HuffmanOnly as compression levels. (CL 31186) +crypto/rsa: ensure that generating toy RSA keys doesn't loop (CL 28969) +debug/elf: add sparc64 relocations (CL 30870) +flag: arrange for FlagSet.Usage to be non-nil by default (CL 31576) +go/internal/gcimporter: fail gracefully on export format skew (CL 27816) image/color: tweak the formula for converting to gray. (CL 31538) io: fix infinite loop bug in MultiReader (CL 27397) io: make MultiReader nil exhausted Readers for earlier GC (CL 28533) +math/big: Rat.SetString to report error if input is not consumed entirely (CL 30472) math/cmplx: prevent infinite loop in tanSeries (CL 31952) math: fix Gamma(-171.5) on all platforms (CL 30540) net/http/internal: don't block unnecessarily in ChunkedReader (CL 31329) +net: make LookupPort and lookupProtocol work on nacl (CL 28951) +os: prevent infinite symlink loop of Stat on Windows (CL 27580) +os: use GetConsoleCP() instead of GetACP() (CL 27575) reflect: fix DeepEqual for some cyclic corner cases (CL 31588) runtime/race: don't crash on invalid PCs (CL 29714) spec: update language on type switches to match implementations (CL 27356) @@ -450,22 +426,38 @@ HTMLified: all: many more examples in documentations (many CLs) all: plugin build mode & package (many CLs) +cmd/compile: add SSA backend for s390x and enable by default (CL 28978) cmd/compile: args no longer live until end of function - use runtime.KeepAlive instead (CL 28310) cmd/compile: make ssa compilation unconditional (CL 29155) cmd/compile: remove old lexer and parser (CL 32020) cmd/doc: ensure summaries truly are only one line (CL 25420) cmd/doc: perform type grouping for constants and variables (CL 25419) cmd/doc: show documentation for interface methods when requested explicitly (CL 31852) +compress/flate: always return uncompressed data in the event of error (CL 28216) +compress/flate: level 1 (best speed) match across blocks (CL 31640) +compress/flate: make compression level 0 consistent (CL 31174) +compress/flate: tighten the BestSpeed max match offset bound. (CL 32149) +compress/gzip: only encode MTIME if it is valid (CL 32325) context: make DeadlineExceeded implement net.Error (CL 30370) +debug/pe: revert CL 22720 (CL 27212) +encoding/base64: add Encoding.Strict (CL 24964) encoding/binary: add bool support (CL 28514) +encoding/json: add struct and field name to UnmarshalTypeError message (CL 18692) +encoding/json: encode nil Marshaler as "null" (CL 31932) +encoding/json: fix decoding of null into Unmarshaler, TextUnmarshaler (CL 30944) +encoding/json: marshal the RawMessage value type the same as its pointer type (CL 21811) +encoding/json: use standard ES6 formatting for numbers during marshal (CL 30371) +encoding/pem: be stricter about the ending line (CL 27391) expvar: add Value methods (CL 30917) expvar: export http.Handler (CL 24722) image/png: implement grayscale transparency. (CL 32143) image/png: implement truecolor transparency. (CL 32140) image/png: improve compression by skipping filter for paletted images (CL 29872) +lib/time: update tzdata to 2016i (CL 33029) math/rand: add Rand.Uint64 (CL 27253) mime/quotedprintable: accept = not followed by 2 hex digits as literal equals (CL 32174) mime/quotedprintable: accept trailing soft line-break at the end of message (CL 27530) +net/http: add an interface for HTTP/2 server push (CL 32012) net/mail: allow empty quoted string name in address again (CL 32176) net/mail: expose ParseDate, for use parsing Resent-Date headers (CL 31581) net/smtp: make Client.Auth trim final space if Auth.Start toServer is empty (CL 33143) @@ -489,6 +481,8 @@ ports: plan9: various fixes (Close unblocks Read, I/O deadline maybe?) reflect: add Swapper func (CL 30088) reflect: ignore struct tags when converting structs (CL 30191) runtime: Hybrid barrier. <100us GC pauses. +runtime: defer is now 2X faster (CL 29656) +runtime: optimize defer code (CL 29656) runtime: runtime.MemStats has much more detailed documentation (CL 28972) sort: add Slice, SliceStable, and SliceIsSorted (CL 27321) spec: ignore struct tags when converting structs (CL 24190) |
