From f005eddb3a9694b09b3f830028c491416f0a37b8 Mon Sep 17 00:00:00 2001
From: Rob Pike Changes to the language
@@ -33,7 +34,8 @@ In Go 1.1, an integer division by constant zero is not a legal program, so it is
Changes to the implementations and tools
-TODO: more
+Command-line flag parsing
@@ -59,7 +61,7 @@ more than 2 billion elements on 64-bit platforms.
Updating:
Most programs will be unaffected by this change.
Because Go does not allow implicit conversions between distinct
-numeric types,
+numeric types,
no programs will stop compiling due to this change.
However, programs that contain implicit assumptions
that int is only 32 bits may change behavior.
@@ -129,8 +131,27 @@ before Go 1 to use Go 1 APIs. To update pre-Go 1 code to Go 1.1, use a Go 1.0 to
to convert the code to Go 1.0 first.
+TODO introduction +
+ ++TODO +
+Previous versions of the debug/elf package intentionally skipped over the first @@ -141,13 +162,6 @@ calls the debug/elf functions Symbols or ImportedSymbols may need to be adjusted to account for the additional symbol and the change in symbol offsets.
--Templates using the undocumented and only partially implemented -"noescape" feature will break: that feature was removed. -
-
@@ -168,6 +182,20 @@ with ReadFrom and WriteTo methods on
the UnixConn.
+TODO:
+reflect: Select, ChanOf, MakeFunc, MapOf, SliceOf, Convert, Type.ConvertibleTo
+
+TODO:
+runtime: BlockProfile
+
On FreeBSD, Linux, NetBSD, OS X and OpenBSD, previous versions of the time package @@ -182,6 +210,10 @@ that can be used to remove precision from a time before passing it to external storage.
+ TODO:
+time: ParseInLocation, Timer.Reset, Time.YearDay
+
@@ -204,4 +236,217 @@ and then in Go source, import "code.google.com/p/go.exp/ssa" -
+The following list summarizes a number of minor changes to the library, mostly additions. +See the relevant package documentation for more information about each change. +
+ +bytes package has two new functions,
+TrimPrefix
+and
+TrimSuffix,
+with self-evident properties.
+Also, the Buffer type
+has a new method
+Grow that
+provides some control over memory allocation inside the buffer.
+Finally, the
+Reader type now has a
+WriteTo method
+so it implements the
+io.WriterTo interface.
+crypto/hmac package has a new function,
+Equal, to compare two MACs.
+crypto/x509: DecryptPEMBlock, EncryptPEMBlock etc.
+database/sql/driver: Queryer
+database/sql: Ping, SetMaxIdleConns
+encoding/json: Decoder.Buffered, UseNumber, Number
+encoding/xml: EscapeText Encoder.Indent
+go/ast package, a
+new type CommentMap
+and associated methods makes it easier to extract and process comments in Go programs.
+go/doc package,
+the parser now keeps better track of stylized annotations such as TODO(joe)
+throughout the code,
+information that the godoc
+command can filter or present according to the value of the -notes flag.
+go/format: Node, Source
+io.ByteWriter interface to capture the common
+functionality of writing a byte at a time.
+log/syslog package now provides better support
+for OS-specific logging features.
+math/big package's
+Int type now has
+now has methods
+MarshalJSON
+and
+UnmarshalJSON
+to convert to and from a JSON representation.
+Also,
+Int
+can now convert directly to and from a uint64 using
+Uint64
+and
+SetUint64,
+while
+Rat
+can do the same with float64 using
+Float64
+and
+SetFloat64.
+mime/multipart: Writer.SetBoundary
+net/http: ParseTime, CloseNotifier, Request.PostFormValue, ServeMux.Handler, Transport.CancelRequest
+net/mail: ParseAddress, ParseAddressList
+net/smtp: Client.Hello
+net/textproto: TrimBytes, TrimString
+net: DialOption, DialOpt, ListenUnixgram, LookupNS, IPConn.ReadMsgIP, IPConn.WriteMsgIP, UDPConn.ReadMsgUDP, UDPConn.WriteMsgUDP, UnixConn.CloseRead, UnixConn.CloseWrite
+os.FileMode.IsRegular makes it easy to ask if a file is a plain file.
+pkg/image: new subsamplings
+regexp package
+now supports Unix-original lefmost-longest matches through the
+Regexp.Longest
+method, while
+Regexp.Split slices
+strings into pieces based on separators defined by the regular expression.
+runtime/debug: FreeOSMemory, ReadGCStats, SetGCPercent
+sort package has a new function,
+Reverse.
+Wrapping the argument of a call to
+sort.Sort
+with a call to Reverse causes the sort order to be reversed.
+strings package has two new functions,
+TrimPrefix
+and
+TrimSuffix
+with self-evident properties, and the the new method
+Reader.WriteTo so the
+Reader
+type now implements the
+io.WriterTo interface.
+syscall package has received many updates to make it more inclusive of constants and system calls for each supported operating system.
+testing package now automates the generation of allocation
+statistics in benchmarks using the new
+AllocsPerRun function and the
+AllocsPerOp method of
+BenchmarkResult.
+There is also a new
+Verbose function to test the state of the -v
+command-line flag,
+and a new
+Skip method of
+testing.B and
+testing.T
+to simplify skipping an inappropriate test.
+text/template
+and
+html/template packages,
+templates can now use parentheses to group the elements of pipelines, simplifying the construction of complex pipelines.
+TODO: Link to example.
+unicode/utf8 package,
+the new function ValidRune reports whether the rune is a valid Unicode code point.
+To be valid, a rune must be in range and not be a surrogate half.
+unicode package has been updated to Unicode version 6.2.0.
+