diff --git a/.hgtags b/.hgtags index b1254beca1..1e0628ccff 100644 --- a/.hgtags +++ b/.hgtags @@ -39,4 +39,3 @@ ca4f9687cec0b9c4732afd57b8c2786c7fe242de release.2010-10-13.1 c627e23260c7ddf4a1fcda6ef3197c98fa22551d release.2010-11-02 a7800e20064a39585aa3ee339c2b7454ae1ce6d5 release.2010-11-10 c5287468fcff0f8a7bb9ffaece2a4863e7e5d83e release.2010-11-23 -c5287468fcff0f8a7bb9ffaece2a4863e7e5d83e release diff --git a/doc/devel/release.html b/doc/devel/release.html index 4c62194e52..10cb5c2426 100644 --- a/doc/devel/release.html +++ b/doc/devel/release.html @@ -5,6 +5,67 @@
This page summarizes the changes between tagged releases of Go. For full details, see the Mercurial change log.
++Several package changes in this release may require you to update your code if +you use the bytes, template, or utf8 packages. In all cases, any outdated code +will fail to compile rather than behave erroneously. + +The bytes package has changed. Its Add and AddByte functions have been removed, +as their functionality is provided by the recently-introduced built-in function +“append”. Any code that uses them will need to be changed: +s = bytes.Add(s, b) -> s = append(s, b...) +s = bytes.AddByte(b, c) -> s = append(s, b) +s = bytes.Add(nil, c) -> append([]byte(nil), c) + +The template package has changed. Your code will need to be updated if it calls +the HTMLFormatter or StringFormatter functions, or implements its own formatter +functions. The function signature for formatter types has changed to: + func(wr io.Writer, formatter string, data ...interface{}) +to allow multiple arguments to the formatter. No templates will need updating. +See the change for examples: + http://code.google.com/p/go/source/detail?r=2c2be793120e + +The template change permits the implementation of multi-word variable +instantiation for formatters. Before one could say + {field} +or + {field|formatter} +Now one can also say + {field1 field2 field3} +or + {field1 field2 field3|formatter} +and the fields are passed as successive arguments to the formatter, +by analogy to fmt.Print. + +The utf8 package has changed. The order of EncodeRune’s arguments has been +reversed to satisfy the convention of “destination first”. +Any code that uses EncodeRune will need to be updated. + +Other changes: +* [68]l: correct dwarf location for globals and ranges for arrays. +* big: fix (*Rat) SetFrac64(a, b) when b < 0 (thanks Eoghan Sherry). +* compress/flate: fix typo in comment (thanks Mathieu Lonjaret). +* crypto/elliptic: use a Jacobian transform for better performance. +* doc/code.html: fix reference to "gomake build" (thanks Anschel Schaffer-Cohen). +* doc/roadmap: update gdb status. +* doc/spec: fixed some omissions and type errors. +* doc: some typo fixes (thanks Peter Mundy). +* exp/eval: build fix for parser.ParseFile API change (thanks Anschel Schaffer-Cohen). +* fmt: Scan accepts Inf and NaN, + allow "% X" as well as "% x". +* go/printer: preserve newlines in func parameter lists (thanks Jamie Gennis). +* http: consume request body before next request. +* log: ensure writes are atomic (thanks Roger Peppe). +* path: Windows support for Split (thanks Benny Siegert). +* runtime: fix SysFree to really free memory on Windows (thanks Alex Brainman), + parallel definitions in Go for all C structs. +* sort: avoid overflow in pivot calculation, + reduced stack depth to lg(n) in quickSort (thanks Stefan Nilsson). +* strconv: Atof on Infs and NaNs. ++