github.com/sanprasirt/go@v0.0.0-20170607001320-a027466e4b6d/doc/go1.9.html (about)

     1  <!--{
     2  	"Title": "Go 1.9 Release Notes",
     3  	"Path":  "/doc/go1.9",
     4  	"Template": true
     5  }-->
     6  
     7  <!--
     8  NOTE: In this document and others in this directory, the convention is to
     9  set fixed-width phrases with non-fixed-width spaces, as in
    10  <code>hello</code> <code>world</code>.
    11  Do not send CLs removing the interior tags from such phrases.
    12  -->
    13  
    14  <style>
    15  ul li { margin: 0.5em 0; }
    16  </style>
    17  
    18  <h2 id="introduction">DRAFT RELEASE NOTES - Introduction to Go 1.9</h2>
    19  
    20  <p><strong>
    21      Go 1.9 is not yet released. These are work-in-progress
    22      release notes. Go 1.9 is expected to be released in August 2017.
    23  </strong></p>
    24  
    25  <p>
    26    The latest Go release, version 1.9, arrives six months after <a href="go1.8">Go 1.8</a>
    27    and is the tenth release in the <a href="https://golang.org/doc/devel/release.html">Go 1.x series</a>.
    28    Most of its changes are in the implementation of the toolchain, runtime, and libraries.
    29    There are no changes to the language specification.
    30    As always, the release maintains the Go 1 <a href="/doc/go1compat.html">promise of compatibility</a>.
    31    We expect almost all Go programs to continue to compile and run as before.
    32  </p>
    33  
    34  <p>
    35    The release
    36    adds <a href="#monotonic-time">transparent monotonic time support</a>,
    37    <a href="#parallel-compile">parallelizes compilation of functions</a> within a package,
    38    better supports <a href="#test-helper">test helper functions</a>,
    39    and includes a new <a href="#math-bits">bit manipulation package</a>.
    40  </p>
    41  
    42  <h2 id="ports">Ports</h2>
    43  
    44  <p>
    45    There are no new supported operating systems or processor
    46    architectures in this release.
    47  </p>
    48  
    49  <h3 id="power8">ppc64x requires Power8</h3>
    50  
    51  <p> <!-- CL 36725, CL 36832 -->
    52    Both <code>GOARCH=ppc64</code> and <code>GOARCH=ppc64le</code> now
    53    require at least Power8 support. In previous releases,
    54    only <code>GOARCH=ppc64le</code> required Power8 and the big
    55    endian <code>ppc64</code> architecture supported older
    56    hardware.
    57  <p>
    58  
    59  <h3 id="known_issues">Known Issues</h3>
    60  
    61  <p>
    62    There are some instabilities on FreeBSD that are known but not understood.
    63    These can lead to program crashes in rare cases.
    64    See <a href="https://golang.org/issue/15658">issue 15658</a>.
    65    Any help in solving this FreeBSD-specific issue would be appreciated.
    66  </p>
    67  
    68  <h2 id="tools">Tools</h2>
    69  
    70  <h3 id="parallel-compile">Parallel Compilation</h3>
    71  
    72  <p>
    73    The Go compiler now supports compiling a package's functions in parallel, taking
    74    advantage of multiple cores. This is in addition to the <code>go</code> command's
    75    existing support for parallel compilation of separate packages.
    76    Parallel compilation is on by default, but can be disabled by setting the
    77    environment variable <code>GO19CONCURRENTCOMPILATION</code> to <code>0</code>.
    78  </p>
    79  
    80  <!-- CL 42028: https://golang.org/cl/42028: cmd/asm: fix operand order of ARM's MULA instruction -->
    81  <!-- CL 36031: https://golang.org/cl/36031: cmd/doc: truncate long lists of arguments -->
    82  <!-- CL 38438: https://golang.org/cl/38438: cmd/doc: implement "go doc struct.field" -->
    83  <!-- CL 38745: https://golang.org/cl/38745: cmd/go: exclude vendored packages from ... matches -->
    84  <!-- CL 38757: https://golang.org/cl/38757: cmd/go: add -json flag to go env -->
    85  <!-- CL 40112: https://golang.org/cl/40112: cmd/go: allow full flag processing in go vet -->
    86  <!-- CL 43855: https://golang.org/cl/43855: cmd/go: include GOARM and GO386 in computed build ID -->
    87  <!-- CL 44210: https://golang.org/cl/44210: cmd/internal/dwarf: update to DWARF4, emit frame_base -->
    88  <!-- CL 42990: https://golang.org/cl/42990: cmd/internal/obj/x86: add ADDSUBPS/PD -->
    89  <!-- CL 36983: https://golang.org/cl/36983: cmd/link: write dwarf sections -->
    90  <!-- CL 40331: https://golang.org/cl/40331: cmd/link,runtime/cgo: enable PT_TLS generation on OpenBSD -->
    91  <!-- CL 38343: https://golang.org/cl/38343: cmd/pprof: use proxy from environment -->
    92  <!-- CL 36015: https://golang.org/cl/36015: cmd/trace: Record mark assists in execution traces -->
    93  
    94  
    95  <h2 id="performance">Performance</h2>
    96  
    97  <p>
    98    As always, the changes are so general and varied that precise
    99    statements about performance are difficult to make.  Most programs
   100    should run a bit faster, due to speedups in the garbage collector,
   101    better generated code, and optimizations in the core library.
   102  </p>
   103  
   104  <p>
   105    TODO: There have been significant optimizations bringing more than 10% improvements
   106    to implementations in the
   107    <a href="/pkg/foo/"><code>foo</code></a>,
   108    <a href="/pkg/bar/"><code>bar</code></a>,
   109    and
   110    <a href="/pkg/quux/"><code>quux</code></a>
   111    packages.
   112  </p>
   113  
   114  <h3 id="gc">Garbage Collector</h3>
   115  
   116  <p>
   117    TODO(austin): give update.
   118  </p>
   119  
   120  <h2 id="library">Core library</h2>
   121  
   122  <h3 id="monotonic-time">Transparent Monotonic Time support</h3>
   123  
   124  <p> <!-- CL 36255 -->
   125    The <a href="/pkg/time/"><code>time</code></a> package now transparently
   126    tracks monotonic time in each <a href="/pkg/time/#Time"><code>Time</code></a>
   127    value, making computing durations between two <code>Time</code> values
   128    a safe operation in the presence of wall clock adjustments.
   129    See the <a href="/pkg/time/#hdr-Monotonic_Clocks">package docs</a> and
   130    <a href="https://golang.org/design/12914-monotonic">design document</a>
   131    for details.
   132  </p>
   133  
   134  <h3 id="math-bits">New bit manipulation package</h3>
   135  
   136  <p>
   137    Go 1.9 includes a new package,
   138    <a href="/pkg/math/bits/"><code>math/bits</code></a>, with optimized
   139    implementations for manipulating bits. On most architectures
   140    functions in this package are additionally recognized by the
   141    compiler and treated as intrinsics for additional performance.
   142  </p>
   143  
   144  <h3 id="test-helper">Test Helper Functions</h3>
   145  
   146  <p> <!-- CL 38796 -->
   147    The
   148    new <a href="/pkg/testing/#T.Helper"><code>(*T).Helper</code></a>
   149    an <a href="/pkg/testing/#B.Helper"><code>(*B).Helper</code></a>
   150    methods marks the calling function as a test helper function.  When
   151    printing file and line information, that function will be skipped.
   152    This permits writing test helper functions while still having useful
   153    line numbers for users.
   154  </p>
   155  
   156  <h3 id="minor_library_changes">Minor changes to the library</h3>
   157  
   158  <p>
   159    As always, there are various minor changes and updates to the library,
   160    made with the Go 1 <a href="/doc/go1compat">promise of compatibility</a>
   161    in mind.
   162  </p>
   163  
   164  <dl id="archive/zip"><dt><a href="/pkg/archive/zip/">archive/zip</a></dt>
   165    <dd>
   166      <p><!-- CL 39570 -->
   167        TODO: <a href="https://golang.org/cl/39570">https://golang.org/cl/39570</a>: set utf-8 flag
   168      </p>
   169  
   170  </dl><!-- archive/zip -->
   171  
   172  <dl id="crypto"><dt><a href="/pkg/crypto/">crypto</a></dt>
   173    <dd>
   174      <p><!-- CL 36876 -->
   175        TODO: <a href="https://golang.org/cl/36876">https://golang.org/cl/36876</a>: add BLAKE2b and BLAKE2s hash constants
   176      </p>
   177  
   178  </dl><!-- crypto -->
   179  
   180  <dl id="crypto/aes"><dt><a href="/pkg/crypto/aes/">crypto/aes</a></dt>
   181    <dd>
   182      <p><!-- CL 38366 -->
   183        TODO: <a href="https://golang.org/cl/38366">https://golang.org/cl/38366</a>: ARM assembly versions of encrypt, decrypt and expandKey
   184      </p>
   185  
   186  </dl><!-- crypto/aes -->
   187  
   188  <dl id="crypto/rand"><dt><a href="/pkg/crypto/rand/">crypto/rand</a></dt>
   189    <dd>
   190      <p><!-- CL 43852 -->
   191        TODO: <a href="https://golang.org/cl/43852">https://golang.org/cl/43852</a>: use blocking getrandom call on Linux when supported
   192      </p>
   193  
   194  </dl><!-- crypto/rand -->
   195  
   196  <dl id="crypto/x509"><dt><a href="/pkg/crypto/x509/">crypto/x509</a></dt>
   197    <dd>
   198      <p><!-- CL 36093 -->
   199        TODO: <a href="https://golang.org/cl/36093">https://golang.org/cl/36093</a>: load certs from env vars + extra locations
   200      </p>
   201  
   202      <p><!-- CL 36900 -->
   203        TODO: <a href="https://golang.org/cl/36900">https://golang.org/cl/36900</a>: support excluded domains in name constraints.
   204      </p>
   205  
   206  </dl><!-- crypto/x509 -->
   207  
   208  <dl id="database/sql"><dt><a href="/pkg/database/sql/">database/sql</a></dt>
   209    <dd>
   210      <p><!-- CL 35476 -->
   211        TODO: <a href="https://golang.org/cl/35476">https://golang.org/cl/35476</a>: proper prepared statement support in transactions
   212      </p>
   213  
   214      <p><!-- CL 39031 -->
   215        TODO: <a href="https://golang.org/cl/39031">https://golang.org/cl/39031</a>: support scanning into user defined string types
   216      </p>
   217  
   218      <p><!-- CL 40694 -->
   219        TODO: <a href="https://golang.org/cl/40694">https://golang.org/cl/40694</a>: allow using a single connection from the database
   220      </p>
   221  
   222  </dl><!-- database/sql -->
   223  
   224  <dl id="debug/dwarf"><dt><a href="/pkg/debug/dwarf/">debug/dwarf</a></dt>
   225    <dd>
   226      <p><!-- CL 44017 -->
   227        TODO: <a href="https://golang.org/cl/44017">https://golang.org/cl/44017</a>: heuristically handle both UNIX and Windows paths
   228      </p>
   229  
   230  </dl><!-- debug/dwarf -->
   231  
   232  <dl id="encoding/asn1"><dt><a href="/pkg/encoding/asn1/">encoding/asn1</a></dt>
   233    <dd>
   234      <p><!-- CL 38660 -->
   235        TODO: <a href="https://golang.org/cl/38660">https://golang.org/cl/38660</a>: add NullBytes and NullRawValue for working with ASN.1 NULL
   236      </p>
   237  
   238  </dl><!-- encoding/asn1 -->
   239  
   240  <dl id="encoding/base32"><dt><a href="/pkg/encoding/base32/">encoding/base32</a></dt>
   241    <dd>
   242      <p><!-- CL 38634 -->
   243        TODO: <a href="https://golang.org/cl/38634">https://golang.org/cl/38634</a>: add Encoding.WithPadding, StdPadding, NoPadding
   244      </p>
   245  
   246  </dl><!-- encoding/base32 -->
   247  
   248  <dl id="encoding/gob"><dt><a href="/pkg/encoding/gob/">encoding/gob</a></dt>
   249    <dd>
   250      <p><!-- CL 39203 -->
   251        TODO: <a href="https://golang.org/cl/39203">https://golang.org/cl/39203</a>: speedup decoding of maps by zeroing values
   252      </p>
   253  
   254  </dl><!-- encoding/gob -->
   255  
   256  <dl id="fmt"><dt><a href="/pkg/fmt/">fmt</a></dt>
   257    <dd>
   258      <p><!-- CL 37051 -->
   259        TODO: <a href="https://golang.org/cl/37051">https://golang.org/cl/37051</a>: support sharp flag for float and complex value printing
   260      </p>
   261  
   262  </dl><!-- fmt -->
   263  
   264  <dl id="go/build"><dt><a href="/pkg/go/build/">go/build</a></dt>
   265    <dd>
   266      <p><!-- CL 44291 -->
   267        TODO: <a href="https://golang.org/cl/44291">https://golang.org/cl/44291</a>: make -I/-L options in cgo flags absolute
   268      </p>
   269  
   270  </dl><!-- go/build -->
   271  
   272  <dl id="hash/fnv"><dt><a href="/pkg/hash/fnv/">hash/fnv</a></dt>
   273    <dd>
   274      <p><!-- CL 38356 -->
   275        TODO: <a href="https://golang.org/cl/38356">https://golang.org/cl/38356</a>: add 128-bit FNV hash support
   276      </p>
   277  
   278  </dl><!-- hash/fnv -->
   279  
   280  <dl id="html/template"><dt><a href="/pkg/html/template/">html/template</a></dt>
   281    <dd>
   282      <p><!-- CL 37880 -->
   283        TODO: <a href="https://golang.org/cl/37880">https://golang.org/cl/37880</a>: panic if predefined escapers are found in pipelines during rewriting
   284      </p>
   285  
   286      <p><!-- CL 40936 -->
   287        TODO: <a href="https://golang.org/cl/40936">https://golang.org/cl/40936</a>: allow safe usage of predefined escapers in pipelines
   288      </p>
   289  
   290  </dl><!-- html/template -->
   291  
   292  <dl id="image"><dt><a href="/pkg/image/">image</a></dt>
   293    <dd>
   294      <p><!-- CL 36734 -->
   295        TODO: <a href="https://golang.org/cl/36734">https://golang.org/cl/36734</a>: fix the overlap check in Rectangle.Intersect.
   296      </p>
   297  
   298  </dl><!-- image -->
   299  
   300  <dl id="image/color"><dt><a href="/pkg/image/color/">image/color</a></dt>
   301    <dd>
   302      <p><!-- CL 36732 -->
   303        TODO: <a href="https://golang.org/cl/36732">https://golang.org/cl/36732</a>: tweak the YCbCr to RGBA conversion formula again.
   304      </p>
   305  
   306  </dl><!-- image/color -->
   307  
   308  <dl id="image/png"><dt><a href="/pkg/image/png/">image/png</a></dt>
   309    <dd>
   310      <p><!-- CL 34150 -->
   311        TODO: <a href="https://golang.org/cl/34150">https://golang.org/cl/34150</a>: reduce memory allocs encoding images by reusing buffers
   312      </p>
   313  
   314      <p><!-- CL 38271 -->
   315        TODO: <a href="https://golang.org/cl/38271">https://golang.org/cl/38271</a>: decode Gray8 transparent images.
   316      </p>
   317  
   318  </dl><!-- image/png -->
   319  
   320  <dl id="math/big"><dt><a href="/pkg/math/big/">math/big</a></dt>
   321    <dd>
   322      <p><!-- CL 36487 -->
   323        TODO: <a href="https://golang.org/cl/36487">https://golang.org/cl/36487</a>: add IsInt64/IsUint64 predicates
   324      </p>
   325  
   326  </dl><!-- math/big -->
   327  
   328  <dl id="math/bits"><dt><a href="/pkg/math/bits/">math/bits</a></dt>
   329    <dd>
   330      <p><!-- CL 36315 -->
   331        TODO: <a href="https://golang.org/cl/36315">https://golang.org/cl/36315</a>: added package for bit-level counting and manipulation
   332      </p>
   333  
   334  </dl><!-- math/bits -->
   335  
   336  <dl id="mime/multipart"><dt><a href="/pkg/mime/multipart/">mime/multipart</a></dt>
   337    <dd>
   338      <p><!-- CL 39223 -->
   339        TODO: <a href="https://golang.org/cl/39223">https://golang.org/cl/39223</a>: add Size to FileHeader
   340      </p>
   341  
   342  </dl><!-- mime/multipart -->
   343  
   344  <dl id="net"><dt><a href="/pkg/net/">net</a></dt>
   345    <dd>
   346      <p><!-- CL 32572 -->
   347        TODO: <a href="https://golang.org/cl/32572">https://golang.org/cl/32572</a>: add Resolver.StrictErrors
   348      </p>
   349  
   350      <p><!-- CL 37260 -->
   351        TODO: <a href="https://golang.org/cl/37260">https://golang.org/cl/37260</a>: allow Resolver to use a custom dialer
   352      </p>
   353  
   354      <p><!-- CL 37402 -->
   355        TODO: <a href="https://golang.org/cl/37402">https://golang.org/cl/37402</a>: implement deadline functionality on Pipe
   356      </p>
   357  
   358      <p><!-- CL 40510 -->
   359        TODO: <a href="https://golang.org/cl/40510">https://golang.org/cl/40510</a>: don&#39;t enclose non-literal IPv6 addresses in square brackets
   360      </p>
   361  
   362      <p><!-- CL 40512 -->
   363        TODO: <a href="https://golang.org/cl/40512">https://golang.org/cl/40512</a>: validate network in Dial{,IP} and Listen{Packet,IP} for IP networks
   364      </p>
   365  
   366  </dl><!-- net -->
   367  
   368  <dl id="net/http"><dt><a href="/pkg/net/http/">net/http</a></dt>
   369    <dd>
   370      <p><!-- CL 35488 -->
   371        TODO: <a href="https://golang.org/cl/35488">https://golang.org/cl/35488</a>: add support for socks5 proxy
   372      </p>
   373  
   374      <p><!-- CL 38194 -->
   375        TODO: <a href="https://golang.org/cl/38194">https://golang.org/cl/38194</a>: strip port from host in mux Handler
   376      </p>
   377  
   378      <p><!-- CL 43231 -->
   379        TODO: <a href="https://golang.org/cl/43231">https://golang.org/cl/43231</a>: for http2, use the priority write scheduler by default
   380      </p>
   381  
   382  </dl><!-- net/http -->
   383  
   384  <dl id="net/http/fcgi"><dt><a href="/pkg/net/http/fcgi/">net/http/fcgi</a></dt>
   385    <dd>
   386      <p><!-- CL 40012 -->
   387        TODO: <a href="https://golang.org/cl/40012">https://golang.org/cl/40012</a>: expose cgi env vars in request context
   388      </p>
   389  
   390  </dl><!-- net/http/fcgi -->
   391  
   392  <dl id="net/http/httptest"><dt><a href="/pkg/net/http/httptest/">net/http/httptest</a></dt>
   393    <dd>
   394      <p><!-- CL 34639 -->
   395        TODO: <a href="https://golang.org/cl/34639">https://golang.org/cl/34639</a>: add Client and Certificate to Server
   396      </p>
   397  
   398  </dl><!-- net/http/httptest -->
   399  
   400  <dl id="net/rpc"><dt><a href="/pkg/net/rpc/">net/rpc</a></dt>
   401    <dd>
   402      <p><!-- CL 38474 -->
   403        TODO: <a href="https://golang.org/cl/38474">https://golang.org/cl/38474</a>: Create empty maps and slices as return type
   404      </p>
   405  
   406  </dl><!-- net/rpc -->
   407  
   408  <dl id="os"><dt><a href="/pkg/os/">os</a></dt>
   409    <dd>
   410      <p><!-- CL 37915 -->
   411        TODO: <a href="https://golang.org/cl/37915">https://golang.org/cl/37915</a>: parse command line without shell32.dll
   412      </p>
   413  
   414      <p><!-- CL 41830 -->
   415        TODO: <a href="https://golang.org/cl/41830">https://golang.org/cl/41830</a>: do not report ModeDir for symlinks on windows
   416      </p>
   417  
   418  </dl><!-- os -->
   419  
   420  <dl id="os/exec"><dt><a href="/pkg/os/exec/">os/exec</a></dt>
   421    <dd>
   422      <p><!-- CL 37586 -->
   423        TODO: <a href="https://golang.org/cl/37586">https://golang.org/cl/37586</a>: remove duplicate environment variables in Cmd.Start
   424      </p>
   425  
   426  </dl><!-- os/exec -->
   427  
   428  <dl id="os/user"><dt><a href="/pkg/os/user/">os/user</a></dt>
   429    <dd>
   430      <p><!-- CL 33713 -->
   431        TODO: <a href="https://golang.org/cl/33713">https://golang.org/cl/33713</a>: add Go implementation of LookupGroup, LookupGroupId
   432      </p>
   433  
   434      <p><!-- CL 37664 -->
   435        TODO: <a href="https://golang.org/cl/37664">https://golang.org/cl/37664</a>: add non-cgo versions of Lookup, LookupId
   436      </p>
   437  
   438  </dl><!-- os/user -->
   439  
   440  <dl id="reflect"><dt><a href="/pkg/reflect/">reflect</a></dt>
   441    <dd>
   442      <p><!-- CL 38335 -->
   443        TODO: <a href="https://golang.org/cl/38335">https://golang.org/cl/38335</a>: Add MakeMapWithSize for creating maps with size hint
   444      </p>
   445  
   446  </dl><!-- reflect -->
   447  
   448  <dl id="runtime"><dt><a href="/pkg/runtime/">runtime</a></dt>
   449    <dd>
   450      <p><!-- CL 29341 -->
   451        TODO: <a href="https://golang.org/cl/29341">https://golang.org/cl/29341</a>: use cpuset_getaffinity for runtime.NumCPU() on FreeBSD
   452      </p>
   453  
   454      <p><!-- CL 34937 -->
   455        TODO: <a href="https://golang.org/cl/34937">https://golang.org/cl/34937</a>: make ReadMemStats STW for &lt; 25µs
   456      </p>
   457  
   458      <p><!-- CL 35710 -->
   459        TODO: <a href="https://golang.org/cl/35710">https://golang.org/cl/35710</a>: make time correctly update on Wine
   460      </p>
   461  
   462      <p><!-- CL 37233 -->
   463        TODO: <a href="https://golang.org/cl/37233">https://golang.org/cl/37233</a>: use inlining tables to generate accurate tracebacks
   464      </p>
   465  
   466      <p><!-- CL 37441 -->
   467        TODO: <a href="https://golang.org/cl/37441">https://golang.org/cl/37441</a>: make complex division c99 compatible
   468      </p>
   469  
   470      <p><!-- CL 37520 -->
   471        TODO: <a href="https://golang.org/cl/37520">https://golang.org/cl/37520</a>: make runtime.GC() trigger a concurrent GC
   472      </p>
   473  
   474      <p><!-- CL 37726 -->
   475        TODO: <a href="https://golang.org/cl/37726">https://golang.org/cl/37726</a>: strongly encourage CallersFrames with the result of Callers
   476      </p>
   477  
   478      <p><!-- CL 38403 -->
   479        TODO: <a href="https://golang.org/cl/38403">https://golang.org/cl/38403</a>: reduce Windows timer resolution when idle
   480      </p>
   481  
   482      <p><!-- CL 40810 -->
   483        TODO: <a href="https://golang.org/cl/40810">https://golang.org/cl/40810</a>: make sweep trace events encompass entire sweep loop
   484      </p>
   485  
   486      <p><!-- CL 43641 -->
   487        TODO: <a href="https://golang.org/cl/43641">https://golang.org/cl/43641</a>: use pselect6 for usleep on linux/amd64 and linux/arm
   488      </p>
   489  
   490  </dl><!-- runtime -->
   491  
   492  <dl id="runtime/debug"><dt><a href="/pkg/runtime/debug/">runtime/debug</a></dt>
   493    <dd>
   494      <p><!-- CL 34013 -->
   495        TODO: <a href="https://golang.org/cl/34013">https://golang.org/cl/34013</a>: don&#39;t run a GC when setting SetGCPercent negative
   496      </p>
   497  
   498      <p><!-- CL 39835 -->
   499        TODO: <a href="https://golang.org/cl/39835">https://golang.org/cl/39835</a>: don&#39;t trigger a GC on SetGCPercent
   500      </p>
   501  
   502  </dl><!-- runtime/debug -->
   503  
   504  <dl id="runtime/pprof"><dt><a href="/pkg/runtime/pprof/">runtime/pprof</a></dt>
   505    <dd>
   506      <p><!-- CL 34198 -->
   507        TODO: <a href="https://golang.org/cl/34198">https://golang.org/cl/34198</a>: add definitions of profile label types
   508      </p>
   509  
   510  </dl><!-- runtime/pprof -->
   511  
   512  <dl id="sync"><dt><a href="/pkg/sync/">sync</a></dt>
   513    <dd>
   514      <p><!-- CL 34310 -->
   515        TODO: <a href="https://golang.org/cl/34310">https://golang.org/cl/34310</a>: make Mutex more fair
   516      </p>
   517  
   518      <p><!-- CL 36617 -->
   519        TODO: <a href="https://golang.org/cl/36617">https://golang.org/cl/36617</a>: import Map from x/sync/syncmap
   520      </p>
   521  
   522  </dl><!-- sync -->
   523  
   524  <dl id="syscall"><dt><a href="/pkg/syscall/">syscall</a></dt>
   525    <dd>
   526      <p><!-- CL 36697 -->
   527        TODO: <a href="https://golang.org/cl/36697">https://golang.org/cl/36697</a>: only call setgroups if we need to
   528      </p>
   529  
   530      <p><!-- CL 37439 -->
   531        TODO: <a href="https://golang.org/cl/37439">https://golang.org/cl/37439</a>: use CLONE_VFORK and CLONE_VM
   532      </p>
   533  
   534      <p><!-- CL 37913 -->
   535        TODO: <a href="https://golang.org/cl/37913">https://golang.org/cl/37913</a>: add Conn and RawConn interfaces
   536      </p>
   537  
   538  </dl><!-- syscall -->
   539  
   540  <dl id="testing"><dt><a href="/pkg/testing/">testing</a></dt>
   541    <dd>
   542      <p><!-- CL 41195 -->
   543        TODO: <a href="https://golang.org/cl/41195">https://golang.org/cl/41195</a>: add argument to list tests, benchmarks, and examples
   544      </p>
   545  
   546  </dl><!-- testing -->
   547  
   548  <dl id="testing/quick"><dt><a href="/pkg/testing/quick/">testing/quick</a></dt>
   549    <dd>
   550      <p><!-- CL 39152 -->
   551        TODO: <a href="https://golang.org/cl/39152">https://golang.org/cl/39152</a>: generate all possible int64, uint64 values
   552      </p>
   553  
   554  </dl><!-- testing/quick -->
   555  
   556  <dl id="text/template"><dt><a href="/pkg/text/template/">text/template</a></dt>
   557    <dd>
   558      <p><!-- CL 38420 -->
   559        TODO: <a href="https://golang.org/cl/38420">https://golang.org/cl/38420</a>: fix handling of empty blocks
   560      </p>
   561  
   562  </dl><!-- text/template -->
   563  
   564  <dl id="time"><dt><a href="/pkg/time/">time</a></dt>
   565    <dd>
   566      <p><!-- CL 36615 -->
   567        TODO: <a href="https://golang.org/cl/36615">https://golang.org/cl/36615</a>: add Duration.Truncate and Duration.Round
   568      </p>
   569  
   570  </dl><!-- time -->
   571