Go 1.20 is not yet released. These are work-in-progress release notes. Go 1.20 is expected to be released in February 2023.
TODO: complete this section
TODO: complete this section, or delete if not needed
TODO: https://go.dev/cl/421440: cmd/go: add go generate -skip flag
TODO: https://go.dev/issue/45454: provide build tags for architecture environment variables
TODO: https://go.dev/issue/48801: check for time formats with 2006-02-01
TODO: complete this section, or delete if not needed
TODO: https://go.dev/issue/49390: clarify whether "-l" and "-N" compiler flags are actually supported
TODO: complete this section, or delete if not needed
TODO: https://go.dev/issue/44505: adopt Go 1.17 as bootstrap toolchain for Go 1.20
crypto/ecdh
packageTODO: complete this section
As always, there are various minor changes and updates to the library, made with the Go 1 promise of compatibility in mind. There are also various performance improvements, not enumerated here.
TODO: complete this section
TODO: https://go.dev/cl/407176: strings, bytes: add CutPrefix and CutSuffix
TODO: https://go.dev/cl/359675: bytes: add Clone function
TODO: https://go.dev/issue/34648: automatically upgrade CurveParams for known curves and deprecate custom ones
TODO: https://go.dev/issue/53021: add XORBytes
TODO: https://go.dev/cl/421435: crypto/subtle: add XORBytes; modified api/next/53021.txt
TODO: https://go.dev/cl/420982: debug/elf: add new-style LoongArch reloc types; modified api/next/54222.txt
TODO: https://go.dev/cl/421357: debug/pe: add IMAGE_FILE_MACHINE_RISCV{32,64,128}; modified api/next/54251.txt
TODO: https://go.dev/cl/420274: encoding/binary: ReadUvarint return io.ErrUnexpectedEOF when read at least 1 byte
TODO: https://go.dev/issue/53346: Add (*Encoder).Close() to check for unclosed elements
TODO: https://go.dev/cl/424777: encoding/xml: add (*Encoder).Close
TODO: https://go.dev/issue/51668: add FormatString(State) string
TODO: https://go.dev/cl/400875: fmt: add a function to recover the original format string given a State; modified api/next/51668.txt
TODO: https://go.dev/cl/421434: go/build: add GO$GOARCH-based ToolTags
TODO: https://go.dev/cl/410114: go/token: add (*FileSet).RemoveFile(*File) method
TODO: https://go.dev/issue/45899: add OffsetWriter, NewOffsetWriter
TODO: https://go.dev/cl/406776: io: add OffsetWriter, NewOffsetWriter; modified api/next/45899.txt
TODO: https://go.dev/issue/41773: add Server.OptionsHandler to allow custom handling of OPTIONS *
TODO: https://go.dev/cl/356410: net/http: add Server.DisableOptionsHandler for custom handling of OPTIONS *; modified api/next/41773.txt
TODO: https://go.dev/issue/50465: add X-Forwarded-Proto and X-Forwarded-Host by default
TODO: https://go.dev/issue/53002: replace Director with Rewrite
TODO: https://go.dev/cl/407214: net/http/httputil: add ReverseProxy.Rewrite; modified api/next/53002.txt
TODO: https://go.dev/cl/407414: net/http/httputil: add X-Forwarded-{Host,Proto} headers in ReverseProxy
TODO: https://go.dev/cl/345488: strconv: optimize Parse for []byte arguments
TODO: https://go.dev/issue/42537: add CutPrefix and CutSuffix
TODO: https://go.dev/issue/45038: bytes, strings: add Clone
TODO: https://go.dev/cl/407574: syscall: add new CLONE_ flags for Linux
TODO: https://go.dev/issue/52746: add DateTime, DateOnly, TimeOnly format constants
TODO: https://go.dev/cl/412495: time: add DateTime, DateOnly, and TimeOnly
TODO: https://go.dev/issue/51896: add AppendRune
TODO: https://go.dev/cl/409054: unicode/utf16: add AppendRune; modified api/next/51896.txt