This file collects notes about what has changed since Go 1.3 and should be mentioned in the Go 1.4 release notes. Please keep the descriptions to a single line, starting with the package or cmd/xxx directory name, and ending in a CL number. Please keep the list sorted (as in sort.Strings of the lines). spec: permit for range x (CL 104680043) the directory src/pkg has been deleted, for instance src/pkg/fmt is now just src/fmt (CL 134570043) cmd/6l, liblink: use pc-relative addressing for all memory references, so that linking Go binaries at high addresses works (CL 125140043). This cuts the maximum size of a Go binary's text+data+bss from 4GB to 2GB. cmd/go: import comments (CL 124940043) cmd/go: implement "internal" (CL 120600043) cmd/go: implement "generate" (CL 125580044) cmd/go: disallow C sources except when using cgo (CL 149720043) cmd/go: add test -o flag (CL 149070043) cmd/go: redefine build -a to skip standard library in releases (CL 151730045) cmd/go: compile and link all _test.go files during 'go test', even in packages where there are no Test functions (CL 150980043) cmd/go: (via go/build): a GOOS prefix acts as a tag only if preceded by an underscore. this is a breaking change. (CL 147690043) asm: make textflag.h available outside of cmd/ld (CL 128050043) crypto/tls: add support for ALPN (RFC 7301) (CL 108710046) crypto/tls: support programmatic selection of server certificates (CL 107400043) fmt: print type *map[T]T as &map[k:v] (CL 154870043) encoding/gob: remove unsafe (CL 102680045) misc: deleted editor support; refer to https://code.google.com/p/go-wiki/wiki/IDEsAndTextEditorPlugins instead (CL 105470043) net/http: add Request.BasicAuth method (CL 76540043) net/http: add Transport.DialTLS hook (CL 137940043) net/http/httputil: add ReverseProxy.ErrorLog (CL 132750043) os: implement symlink support for windows (CL 86160044) reflect: add type.Comparable (CL 144020043) runtime: implement monotonic clocks on windows (CL 108700045) runtime: memory consumption is reduced by 10-30% (CL 106260045 removes type info from heap, CL 145790043 reduces stack size to 2K (4K on plan 9 and windows)) runtime: MemStats.Mallocs now counts very small allocations missed in Go 1.3. This may break tests using runtime.ReadMemStats or testing.AllocsPerRun by giving a more accurate answer than Go 1.3 did (CL 143150043). runtime/race: freebsd is supported (CL 107270043) swig: Due to runtime changes Go 1.4 will require SWIG 3.0.3 (not yet released) sync/atomic: add Value (CL 136710045) syscall: Setuid, Setgid are disabled on linux platforms. On linux those syscalls operate on the calling thread, not the whole process. This does not match the semantics of other platforms, nor the expectations of the caller, so the operations have been disabled until issue 1435 is resolved (CL 106170043) syscall: now frozen (CL 129820043) testing: add Coverage (CL 98150043) testing: add TestMain support (CL 148770043) text/scanner: add IsIdentRune field of Scanner. (CL 108030044) text/template: allow comparison of signed and unsigned integers (CL 149780043) time: use the micro symbol (ยต (U+00B5)) to print microsecond duration (CL 105030046) encoding/asn1: optional elements with a default value will now only be omitted if they have that value (CL 86960045) go.sys subrepo created: http://golang.org/s/go1.4-syscall