Skip to content

api: audit for Go 1.13 go1.13.txt #32813

Closed
@rsc

Description

@rsc

next.txt was copied to go1.13.txt but I am not sure an audit of that API happened.
Here is a tracking bug for it, with the netbsd-amd64 syscall additions removed (they're probably fine).

Missing approvals

debug/elf

Added in CL 184099:

  • pkg debug/elf, type Symbol struct, Library string
  • pkg debug/elf, type Symbol struct, Version string

errors

  • pkg errors, func As(error, interface{}) bool
  • pkg errors, func Is(error, error) bool
  • pkg errors, func Unwrap(error) error
  • pkg encoding/csv, method (*ParseError) Unwrap() error
  • pkg encoding/json, method (*MarshalerError) Unwrap() error
  • pkg net, method (*DNSConfigError) Unwrap() error
  • pkg net, method (*DNSError) Is(error) bool
  • pkg net, method (*OpError) Is(error) bool
  • pkg net, method (*OpError) Unwrap() error
  • pkg net, type DNSError struct, IsNotFound bool
  • pkg net/url, method (*Error) Unwrap() error
  • pkg os/exec, method (*Error) Unwrap() error
  • pkg os, method (*LinkError) Unwrap() error
  • pkg os, method (*PathError) Unwrap() error
  • pkg os, method (*SyscallError) Unwrap() error
  • pkg os, var ErrTemporary error
  • pkg os, var ErrTimeout error
  • pkg syscall, method (Errno) Is(error) bool
  • pkg text/template, method (ExecError) Unwrap() error

syscall

Added in CL 174197:

  • pkg syscall (windows-386), type SysProcAttr struct, ProcessAttributes *SecurityAttributes
  • pkg syscall (windows-386), type SysProcAttr struct, ThreadAttributes *SecurityAttributes
  • pkg syscall (windows-amd64), type SysProcAttr struct, ProcessAttributes *SecurityAttributes
  • pkg syscall (windows-amd64), type SysProcAttr struct, ThreadAttributes *SecurityAttributes

text/scanner

Likely revert:

  • pkg text/scanner, const AllowDigitSeparators = 1024
  • pkg text/scanner, const AllowDigitSeparators ideal-int

Approved But Missing From Release Notes

Post-approval: gri:

  • pkg text/scanner, const GoTokens = 2036

Approved in #29835:

  • pkg database/sql, method (*Conn) Raw(func(interface{}) error) error

Approved in #30064:

  • pkg go/token, func IsExported(string) bool
  • pkg go/token, func IsIdentifier(string) bool
  • pkg go/token, func IsKeyword(string) bool

Approved in #30638:

  • pkg os/exec, method (*Cmd) String() string

CL 175337 (adding RFC constant; post-approval: rsc):

  • pkg net/http, const SameSiteNoneMode = 4
  • pkg net/http, const SameSiteNoneMode SameSite

For #29655 (adding RFC constant; post-approval: rsc):

  • pkg net/http, const StatusEarlyHints = 103
  • pkg net/http, const StatusEarlyHints ideal-int

For #27945, approved separately:

  • pkg unicode, const Version = "11.0.0"
  • pkg unicode, var Dogra *RangeTable
  • pkg unicode, var Gunjala_Gondi *RangeTable
  • pkg unicode, var Hanifi_Rohingya *RangeTable
  • pkg unicode, var Makasar *RangeTable
  • pkg unicode, var Medefaidrin *RangeTable
  • pkg unicode, var Old_Sogdian *RangeTable
  • pkg unicode, var Sogdian *RangeTable

Approved

I am not sure we have a bug for the creation of crypto/ed25519, but I approved it at the time and it is in the release notes. That covers:

  • pkg crypto/ed25519, const PrivateKeySize = 64
  • pkg crypto/ed25519, const PrivateKeySize ideal-int
  • pkg crypto/ed25519, const PublicKeySize = 32
  • pkg crypto/ed25519, const PublicKeySize ideal-int
  • pkg crypto/ed25519, const SeedSize = 32
  • pkg crypto/ed25519, const SeedSize ideal-int
  • pkg crypto/ed25519, const SignatureSize = 64
  • pkg crypto/ed25519, const SignatureSize ideal-int
  • pkg crypto/ed25519, func GenerateKey(io.Reader) (PublicKey, PrivateKey, error)
  • pkg crypto/ed25519, func NewKeyFromSeed([]uint8) PrivateKey
  • pkg crypto/ed25519, func Sign(PrivateKey, []uint8) []uint8
  • pkg crypto/ed25519, func Verify(PublicKey, []uint8, []uint8) bool
  • pkg crypto/ed25519, method (PrivateKey) Public() crypto.PublicKey
  • pkg crypto/ed25519, method (PrivateKey) Seed() []uint8
  • pkg crypto/ed25519, method (PrivateKey) Sign(io.Reader, []uint8, crypto.SignerOpts) ([]uint8, error)
  • pkg crypto/ed25519, type PrivateKey []uint8
  • pkg crypto/ed25519, type PublicKey []uint8
  • pkg crypto/tls, const Ed25519 = 2055
  • pkg crypto/tls, const Ed25519 SignatureScheme
  • pkg crypto/x509, const Ed25519 = 4
  • pkg crypto/x509, const Ed25519 PublicKeyAlgorithm
  • pkg crypto/x509, const PureEd25519 = 16
  • pkg crypto/x509, const PureEd25519 SignatureAlgorithm

Post-approval: austin, thanm (comment below)

  • pkg debug/dwarf, method (*UnsupportedType) Common() *CommonType
  • pkg debug/dwarf, method (*UnsupportedType) Size() int64
  • pkg debug/dwarf, method (*UnsupportedType) String() string
  • pkg debug/dwarf, type UnsupportedType struct
  • pkg debug/dwarf, type UnsupportedType struct, embedded CommonType
  • pkg debug/dwarf, type UnsupportedType struct, Tag Tag

Post-approval: gri (comment below)

  • pkg go/constant, func Make(interface{}) Value
  • pkg go/constant, func Val(Value) interface{}
  • pkg go/types, func CheckExpr(*token.FileSet, *Package, token.Pos, ast.Expr, *Info) error

Approved in #25805:

  • pkg bytes, func ToValidUTF8([]uint8, []uint8) []uint8
  • pkg strings, func ToValidUTF8(string, string) string

Approved in #31231:

  • pkg database/sql, method (*NullInt32) Scan(interface{}) error
  • pkg database/sql, method (NullInt32) Value() (driver.Value, error)
  • pkg database/sql, method (*NullTime) Scan(interface{}) error
  • pkg database/sql, method (NullTime) Value() (driver.Value, error)
  • pkg database/sql, type NullInt32 struct
  • pkg database/sql, type NullInt32 struct, Int32 int32
  • pkg database/sql, type NullInt32 struct, Valid bool
  • pkg database/sql, type NullTime struct
  • pkg database/sql, type NullTime struct, Time time.Time
  • pkg database/sql, type NullTime struct, Valid bool

Approved in #28327:

  • pkg log, func Writer() io.Writer

Approved in #29578:

  • pkg math/big, method (*Int) TrailingZeroBits() uint

Approved in #29579:

  • pkg math/big, method (*Rat) SetUint64(uint64) *Rat

Approved in #23378:

  • pkg net, type ListenConfig struct, KeepAlive time.Duration

Approved in #30694:

  • pkg net/http, type Server struct, BaseContext func(net.Listener) context.Context
  • pkg net/http, type Server struct, ConnContext func(context.Context, net.Conn) context.Context

For #29915 (post-approval: rsc):

  • pkg net/http, method (Header) Clone() Header

For #23544 (post-approval: rsc):

  • pkg net/http, func NewRequestWithContext(context.Context, string, string, io.Reader) (*Request, error)
  • pkg net/http, method (*Request) Clone(context.Context) *Request

For #26013 (post-approval: rsc):

  • pkg net/http, method (*Transport) Clone() *Transport

For #27011 (post-approval: rsc):

  • pkg net/http, type Transport struct, ForceAttemptHTTP2 bool

For #22618 (post-approval: rsc):

  • pkg net/http, type Transport struct, ReadBufferSize int
  • pkg net/http, type Transport struct, WriteBufferSize int

These netbsd-ard64 are clearly OK (and all the syscall and log/syslog lines I have omitted):

  • pkg path/filepath (netbsd-arm64-cgo), const ListSeparator = 58
  • pkg path/filepath (netbsd-arm64-cgo), const Separator = 47
  • pkg path/filepath (netbsd-arm64), const ListSeparator = 58
  • pkg path/filepath (netbsd-arm64), const Separator = 47
  • pkg runtime (netbsd-arm64-cgo), const GOARCH = "arm64"
  • pkg runtime (netbsd-arm64-cgo), const GOOS = "netbsd"
  • pkg runtime (netbsd-arm64), const GOARCH = "arm64"
  • pkg runtime (netbsd-arm64), const GOOS = "netbsd"
  • pkg os (netbsd-arm64-cgo), const DevNull = "/dev/null"
  • pkg os (netbsd-arm64-cgo), const O_APPEND = 8
  • pkg os (netbsd-arm64-cgo), const O_CREATE = 512
  • pkg os (netbsd-arm64-cgo), const O_EXCL = 2048
  • pkg os (netbsd-arm64-cgo), const O_SYNC = 128
  • pkg os (netbsd-arm64-cgo), const O_TRUNC = 1024
  • pkg os (netbsd-arm64-cgo), const PathListSeparator = 58
  • pkg os (netbsd-arm64-cgo), const PathSeparator = 47
  • pkg os (netbsd-arm64), const DevNull = "/dev/null"
  • pkg os (netbsd-arm64), const O_APPEND = 8
  • pkg os (netbsd-arm64), const O_CREATE = 512
  • pkg os (netbsd-arm64), const O_EXCL = 2048
  • pkg os (netbsd-arm64), const O_SYNC = 128
  • pkg os (netbsd-arm64), const O_TRUNC = 1024
  • pkg os (netbsd-arm64), const PathListSeparator = 58
  • pkg os (netbsd-arm64), const PathSeparator = 47

Approved in #29960:

  • pkg os, func UserConfigDir() (string, error)

Approved in #7501:

  • pkg reflect, method (Value) IsZero() bool

Approved in #26037:

  • pkg testing, method (*B) ReportMetric(float64, string)
  • pkg testing, type BenchmarkResult struct, Extra map[string]float64

Approved in #21051:

  • pkg testing, func Init()

Approved in #28564:

  • pkg time, method (Duration) Microseconds() int64
  • pkg time, method (Duration) Milliseconds() int64

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions