fmt: add String method to fmt.pp, which implements fmt.State #51668

discussion ongoing

intmath: new package #51563

commented

io: make NopCloser forward WriterTo calls to underlying reader #51566

commented

net/http/httputil: better support for forwarded headers #50465

discussion ongoing

net/http/httputil: can ReverseProxy copy src header to dst header with Set() instead of Add() ? #50730

discussion ongoing

net: make LookupCNAME consistent between Unix and Windows, document #50101

commented

reflect: add DeepCopy #51520

commented

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

commented

runtime: deprecate GOROOT() function #51473

discussion ongoing

spec: permit values to have type "comparable" #51338

discussion ongoing

syscall: add PidFD, CgroupFD, and UseCgroupFD options for Linux clone to SysProcAttr #51246

discussion ongoing

x/arch/arm64/arm64asm: all fields of potential Args structs should be exported #51517

discussion ongoing

x/crypto/acme/autocert: Staple OCSP #51064

discussion ongoing

x/sync/errgroup: add functionality to limit the number of simultaneous execution #27837

discussion ongoing

x/text: expose MIBenum via identifier package #47577

discussion ongoing

Hold

bufio: add Reader.Buffer #50960

hold for prototype

2022-03-30 / @rsc, @ianlancetaylor, @griesemer, @bradfitz
Accepted

cmd/link: generate external DWARF debuginfo archives directly #51692

no change in consensus; accepted 🎉

debug/pe: add APIs to support reading COMDAT info for sections #51868

no change in consensus; accepted 🎉

encoding/binary: add AppendUvarint and AppendVarint #51644

no change in consensus; accepted 🎉

hash/maphash: add Bytes and String #42710

no change in consensus; accepted 🎉

math/big: Rat: add FloatPrec() (int, bool) #50489

no change in consensus; accepted 🎉

net: make errCanceled and errTimeout be "errors.Is" context.Canceled and context.DeadlineExceeded #51428

no change in consensus; accepted 🎉

regexp: add ErrNestingDepth error #51684

no change in consensus; accepted 🎉

x/website: add dark (night) theme #34601

no change in consensus; accepted 🎉

Declined

crypto/elliptic: Add Sub() method to Curve interface #51815

no change in consensus; declined

Likely Accept

cmd/vet: check for missing Err calls for bufio.Scanner and sql.Rows #17747

likely accept; last call for comments ⏳

crypto/x509: add CertPool.Clone #35044

likely accept; last call for comments ⏳

io: make NopCloser forward WriterTo calls to underlying reader #51566

likely accept; last call for comments ⏳

Likely Decline

ErrorOr type wrapping (T, error) #51931

likely decline; last call for comments ⏳

context: add Root as an alias for Background #51573

likely decline; last call for comments ⏳

intmath: new package #51563

likely decline; last call for comments ⏳

reflect: add DeepCopy #51520

likely decline; last call for comments ⏳

Active

arena:  new package providing memory arenas #51317

commented

cmd/cover: extend coverage testing to include applications #51430

commented

cmd/go: list available major versions in 'go list -u -m all' #51491

discussion ongoing

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/tls: implement RFC7627 #43922

discussion ongoing

crypto: include support for DTLS in stdlib or x/crypto #46915

discussion ongoing

doc: update Go memory model #50859

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

encoding/xml: option to treat unknown fields as an error #30301

commented

fmt: add Formatter fallback #51195

discussion ongoing

fmt: add String method to fmt.pp, which implements fmt.State #51668

discussion ongoing

go/types: add Object.Origin #51682

moved back to active

io: add an `Err` field to `LimitedReader` #51115

added to minutes

net/http/httputil: better support for forwarded headers #50465

commented

net/http/httputil: can ReverseProxy copy src header to dst header with Set() instead of Add() ? #50730

commented

net/http: Add ServeFSFile and ServeFSContent #51971

added to minutes

net: make LookupCNAME consistent between Unix and Windows, document #50101

commented

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

discussion ongoing

runtime: deprecate GOROOT() function #51473

discussion ongoing

spec: adjust scope of type parameters declared by method receivers #52038

added to minutes

spec: permit values to have type "comparable" #51338

discussion ongoing

strings: add TrimmedPrefix and TrimmedSuffix which report whether they trimmed #42537

added to minutes
commented

sync: add new Map method Swap #51972

added to minutes

syscall: add PidFD, CgroupFD, and UseCgroupFD options for Linux clone to SysProcAttr #51246

commented

testing/cmp: add new package #45200

discussion ongoing

x/arch/arm64/arm64asm: all fields of potential Args structs should be exported #51517

commented

x/crypto/acme/autocert: Staple OCSP #51064

commented

x/crypto/ssh: add ServerConfig.NoClientAuthCallback #51994

added to minutes
cc’ed owners

x/exp/slices: Find function to select first element matching a condition #52006

added to minutes
commented

x/sync/errgroup: add functionality to limit the number of simultaneous execution #27837

discussion ongoing

x/text: expose MIBenum via identifier package #47577

discussion ongoing

[For various reasons we won't be able to meet the next two weeks. The next proposal review meeting will be May 4.]
2022-04-13 / @rsc, @ianlancetaylor, @bradfitz, @andybons
Accepted

crypto/x509: add CertPool.Clone #35044

no change in consensus; accepted 🎉

io: make NopCloser forward WriterTo calls to underlying reader #51566

no change in consensus; accepted 🎉

Declined

ErrorOr type wrapping (T, error) #51931

no change in consensus; declined

context: add Root as an alias for Background #51573

no change in consensus; declined

crypto: include support for DTLS in stdlib or x/crypto #46915

proposal retracted by author; declined

intmath: new package #51563

no change in consensus; declined

reflect: add DeepCopy #51520

no change in consensus; declined

Likely Accept

go/types: add Object.Origin #51682

likely accept; last call for comments ⏳

io: add an `Err` field to `LimitedReader` #51115

likely accept; last call for comments ⏳

net: make LookupCNAME consistent between Unix and Windows, document #50101

likely accept; last call for comments ⏳

spec: adjust scope of type parameters declared by method receivers #52038

likely accept; last call for comments ⏳

syscall: add PidFD, CgroupFD, and UseCgroupFD options for Linux clone to SysProcAttr #51246

likely accept; last call for comments ⏳

x/crypto/acme/autocert: add Manager.StapleOCSP #51064

likely accept; last call for comments ⏳

x/crypto/ssh: add ServerConfig.NoClientAuthCallback #51994

likely accept; last call for comments ⏳

x/net/http2: add DialTLSContext to Transport #52114

likely accept; last call for comments ⏳

Likely Decline

cmd/go: list available major versions in 'go list -u -m all' #51491

likely decline; last call for comments ⏳

encoding/xml: option to treat unknown fields as an error #30301

likely decline; last call for comments ⏳

net/http/httputil: can ReverseProxy copy src header to dst header with Set() instead of Add() ? #50730

likely decline; last call for comments ⏳

reflect: treat reflect.Type as a pointer where possible for generics & maps #52267

likely decline; last call for comments ⏳

x/exp/slices: Find function to select first element matching a condition #52006

likely decline; last call for comments ⏳

Active

cmd/cover: extend coverage testing to include applications #51430

commented

cmd/go: go mod: limit version resolution to packages that are consumed #52296

added to minutes

cmd/go: support for Git LFS via new VCS qualifier #47308

added to minutes

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/ecdh: new package #52221

added to minutes

crypto/tls: implement RFC7627 #43922

discussion ongoing

doc: update Go memory model #50859

discussion ongoing

fmt: add Formatter fallback #51195

discussion ongoing

fmt: add String method to fmt.pp, which implements fmt.State #51668

discussion ongoing

go/build: add API to pick out cgo flags #52222

added to minutes

go/build: add API to return embed patterns #52245

added to minutes

go/importer: provide a registry for x/tools importers to plug into #52163

added to minutes

language: allow getting capacity of map? #52157

commented

net/http/httputil: add X-Forwarded-Proto and X-Forwarded-Host by default #50465

retitled
commented

net/http: add ServeFSFile #51971

discussion ongoing

reflect: allow Value.Set with zero Value for interface values #52310

added to minutes
commented

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

discussion ongoing

runtime: deprecate GOROOT() function #51473

commented

spec: permit values to have type "comparable" #51338

discussion ongoing

strings: add TrimmedPrefix and TrimmedSuffix which report whether they trimmed #42537

commented

sync: add new Map methods CompareAndSwap, CompareAndDelete, Swap #51972

commented

x/arch/arm64/arm64asm: all fields of potential Args structs should be exported #51517

commented

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

added to minutes

x/sync/errgroup: add functionality to limit the number of simultaneous execution #27837

commented

x/text: expose MIBenum via identifier package #47577

discussion ongoing

Hold

arena:  new package providing memory arenas #51317

put on hold

2022-05-04 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons
Accepted

go/types: add Object.Origin #51682

no change in consensus; accepted 🎉

io: add an `Err` field to `LimitedReader` #51115

no change in consensus; accepted 🎉

net: make LookupCNAME consistent between Unix and Windows, document #50101

no change in consensus; accepted 🎉

spec: adjust scope of type parameters declared by method receivers #52038

no change in consensus; accepted 🎉

syscall: add PidFD, CgroupFD, and UseCgroupFD options for Linux clone to SysProcAttr #51246

no change in consensus; accepted 🎉

x/crypto/acme/autocert: add Manager.StapleOCSP #51064

no change in consensus; accepted 🎉

x/crypto/ssh: add ServerConfig.NoClientAuthCallback #51994

no change in consensus; accepted 🎉

x/net/http2: add DialTLSContext to Transport #52114

no change in consensus; accepted 🎉

Declined

cmd/go: list available major versions in 'go list -u -m all' #51491

no change in consensus; declined

encoding/xml: option to treat unknown fields as an error #30301

no change in consensus; declined

math/big: support for constant-time arithmetic #20654

no change in consensus; declined

net/http/httputil: can ReverseProxy copy src header to dst header with Set() instead of Add() ? #50730

no change in consensus; declined

reflect: treat reflect.Type as a pointer where possible for generics & maps #52267

no change in consensus; declined

testing: add assertion methods #52555

proposal retracted by author; declined

x/exp/slices: Find function to select first element matching a condition #52006

no change in consensus; declined

Likely Accept

cmd/cover: extend coverage testing to include applications #51430

likely accept; last call for comments ⏳

net/http/httputil: add X-Forwarded-Proto and X-Forwarded-Host by default #50465

likely accept; last call for comments ⏳

strings: add CutPrefix and CutSuffix #42537

retitled
likely accept; last call for comments ⏳

sync: add new Map methods CompareAndSwap, CompareAndDelete, Swap #51972

likely accept; last call for comments ⏳

x/sync/errgroup: add TryGo and SetLimit to control concurrency #27837

retitled
likely accept; last call for comments ⏳

Likely Decline

cmd/go: go mod: limit version resolution to packages that are consumed #52296

likely decline; last call for comments ⏳

language: allow getting capacity of map? #52157

likely decline; last call for comments ⏳

Active

cmd/go: partial vendoring #52604

added to minutes

cmd/go: support for Git LFS via new VCS qualifier #47308

cc’ed owners

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/ed25519: Implement Ed25519ph #31804

added to minutes

do something smart with virtual machine forks & crypto #52544

added to minutes
commented

doc: update Go memory model #50859

discussion ongoing

errors: Add With(err, other error) error #52607

added to minutes
commented

fmt: add FormatString(State) string #51668

commented

go/ast: formally deprecate Object #52463

added to minutes
discussion ongoing

go/build: add API to pick out cgo flags #52222

commented

go/build: add API to return embed patterns #52245

commented

go/importer: provide a registry for x/tools importers to plug into #52163

commented

net/http: add ServeFSFile #51971

discussion ongoing

os/exec: add fields for managing termination signals and pipes #50436

commented

reflect: allow Value.Set with zero Value for interface values #52310

decline as duplicate of #51649

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

commented

regexp: support \C to match a single byte #52632

declined as infeasible

runtime: deprecate GOROOT() function #51473

commented

spec: permit values to have type "comparable" #51338

discussion ongoing

text/template: add reverse Execute method (parse text into struct) #52473

added to minutes
declined as infeasible

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

cc’ed owners

x/exp/maps: Copy should use two generic map types #52593

added to minutes
commented

Hold

crypto/tls: implement RFC7627 #43922

put on hold

fmt: add Formatter fallback #51195

hold for #51668

x/arch/arm64/arm64asm: all fields of potential Args structs should be exported #51517

hold for more API design

2022-05-11 / @rsc, @ianlancetaylor, @griesemer, @bradfitz, @andybons, @spf13
Accepted

cmd/cover: extend coverage testing to include applications #51430

no change in consensus; accepted 🎉

net/http/httputil: add X-Forwarded-Proto and X-Forwarded-Host by default #50465

no change in consensus; accepted 🎉

strings: add CutPrefix and CutSuffix #42537

no change in consensus; accepted 🎉

sync: add new Map methods CompareAndSwap, CompareAndDelete, Swap #51972

no change in consensus; accepted 🎉

x/sync/errgroup: add TryGo and SetLimit to control concurrency #27837

no change in consensus; accepted 🎉

Declined

cmd/go: go mod: limit version resolution to packages that are consumed #52296

no change in consensus; declined

language: allow getting capacity of map? #52157

no change in consensus; declined

Likely Accept

doc: update Go memory model #50859

likely accept; last call for comments ⏳

fmt: add FormatString(State) string #51668

likely accept; last call for comments ⏳

Likely Decline

none

Active

cmd/go: Declare module content in `go.files` config #52807

added to minutes

cmd/go: `go list -e -m -json all` to start displaying hashes of modules #52792

added to minutes
commented

cmd/go: partial vendoring #52604

discussion ongoing

cmd/go: support for Git LFS via new VCS qualifier #47308

discussion ongoing

context: add APIs for writing and reading cancelation cause #51365

discussion ongoing

crypto/ecdh: new package #52221

discussion ongoing

crypto/ed25519: Implement Ed25519ph #31804

commented

crypto: support bn, nums, sm2 curves #52778

added to minutes
commented

do something smart with virtual machine forks & crypto #52544

commented

encoding/json: dynamic field omission #52803

added to minutes

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

errors: add With(err, other error) error #52607

discussion ongoing

go/ast: formally deprecate Object #52463

discussion ongoing

go/build: add API to pick out cgo flags #52222

discussion ongoing

go/build: add API to return embed patterns #52245

discussion ongoing

go/importer: provide a registry for x/tools importers to plug into #52163

discussion ongoing

net/http: Include Context Based Server Graceful Shutdown. #52805

added to minutes
discussion ongoing

net/http: add ServeFSFile #51971

commented

os/exec: add fields for managing termination signals and pipes #50436

discussion ongoing

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

waiting on prototype

regexp: support \C to match a single byte #52632

declined as infeasible

runtime/debug: add GCStats field to track count of marked pointers during last GC #52692

added to minutes
commented

spec: allow explicit conversion from function to 1-method interface #47487

taken off hold
discussion ongoing

spec: permit values to have type "comparable" #51338

discussion ongoing

testing: add Name to track file and line of test case declaration #52751

added to minutes
commented

testing: add Unsetenv to call os.Unsetenv and then restore the value using Cleanup #52817

added to minutes

text/template: add reverse Execute method (parse text into struct) #52473

declined as infeasible

time: add time.AddMonth to add  a month without normalization #52775

added to minutes
commented

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

discussion ongoing

x/exp/maps: Copy should use two generic map types #52593

commented

x/exp/maps: add Merge #52806

added to minutes
commented

Hold

runtime: deprecate GOROOT() function #51473

hold for Go 1.19

2022-05-18 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons
Accepted

doc: update Go memory model #50859

no change in consensus; accepted 🎉

fmt: add FormatString(State) string #51668

no change in consensus; accepted 🎉

Declined

cmd/go: Declare module content in `go.files` config #52807

duplicate of #42965

runtime/debug: add GCStats field to track count of marked pointers during last GC #52692

proposal retracted by author; declined

time: add time.AddMonth to add  a month without normalization #52775

proposal retracted by author; declined

Likely Accept

cmd/go: support for Git LFS via new VCS qualifier #47308

likely accept; last call for comments ⏳

crypto/ed25519: Implement Ed25519ph #31804

likely accept; last call for comments ⏳

go/ast: formally deprecate Object #52463

likely accept; last call for comments ⏳

x/exp/maps: Copy should use two generic map types #52593

likely accept; last call for comments ⏳

Likely Decline

crypto: support bn, nums, sm2 curves #52778

likely decline; last call for comments ⏳

testing: add Unsetenv to call os.Unsetenv and then restore the value using Cleanup #52817

likely decline; last call for comments ⏳

Active

cmd/go: `go list -e -m -json all` to start displaying hashes of modules #52792

discussion ongoing

cmd/go: partial vendoring #52604

discussion ongoing

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/ecdh: new package #52221

commented

database/sql: add SetMaxBadConnRetries #52886

added to minutes

do something smart with virtual machine forks & crypto #52544

commented

encoding/json: dynamic field omission #52803

discussion ongoing

errors: add With(err, other error) error #52607

discussion ongoing

fmt: add flags to control printing of slices #52936

added to minutes
commented

net/http: add ServeFSFile #51971

discussion ongoing

net/http: context based graceful server shutdown #52805

commented

os/exec: add fields for managing termination signals and pipes #50436

commented

spec: allow explicit conversion from function to 1-method interface #47487

commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

discussion ongoing

x/exp/maps: add Merge #52806

commented

x/net: Accept client-provided logger for http2 debug logs in addition to GODEBUG=http2debug=1,2 #52734

added to minutes

x/sys/unix: add RecvmsgBufs ad SendmsgBufs #52885

added to minutes

Hold

go/build: add API to pick out cgo flags #52222

hold for updated API proposal

go/build: add API to return embed patterns #52245

hold for updated API proposal

go/importer: provide a registry for x/tools importers to plug into #52163

hold for concrete API proposal

reflect: reflect.ValueOf(nil).IsNil() panics; let's make it return true #51649

hold for prototype

2022-05-25 / @rsc, @griesemer, @ianlancetaylor, @andybons
Accepted

cmd/go: support for Git LFS via new VCS qualifier #47308

no change in consensus; accepted 🎉

crypto/ed25519: Implement Ed25519ph #31804

no change in consensus; accepted 🎉

go/ast: formally deprecate Object #52463

no change in consensus; accepted 🎉

x/exp/maps: Copy should use two generic map types #52593

no change in consensus; accepted 🎉

Declined

crypto: support bn, nums, sm2 curves #52778

proposal retracted by author; declined

testing: add Unsetenv to call os.Unsetenv and then restore the value using Cleanup #52817

no change in consensus; declined

type parameters are comparable unless they exclude comparable types #52614

proposal retracted by author; declined

x/exp/maps: add Merge #52806

proposal retracted by author; declined

x/tools/go/packages: Provide an AST loader for single binary applications #52974

proposal retracted by author; declined

Likely Accept

crypto/ecdh: new package #52221

likely accept; last call for comments ⏳

os/exec: add fields for managing termination signals and pipes #50436

likely accept; last call for comments ⏳

x/sys/unix: add RecvmsgBuffers and SendmsgBuffers #52885

likely accept; last call for comments ⏳

Likely Decline

errors: add With(err, other error) error #52607

likely decline; last call for comments ⏳

Active

cmd/go: `go list -e -m -json all` to start displaying hashes of modules #52792

discussion ongoing

cmd/go: partial vendoring #52604

discussion ongoing

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/cipher: please export xorBytes #53021

added to minutes
commented

crypto: implement CMAC #52931

added to minutes

database/sql: add SetMaxBadConnRetries #52886

discussion ongoing

do something smart with virtual machine forks & crypto #52544

commented

encoding/json: dynamic field omission #52803

commented

fmt: add flags to control printing of slices #52936

commented

io/fs: add writable interfaces #45757

added to minutes

math/big: add Int.AddInt64, Int.CmpInt64 #29951

added to minutes
commented

net/http/httputil: replace Director with Rewrite #53002

added to minutes

net/http: add ServeFSFile #51971

discussion ongoing

net/http: context based graceful server shutdown #52805

discussion ongoing

spec: allow explicit conversion from function to 1-method interface #47487

commented

testing: add Name to track file and line of test case declaration #52751

commented

text/template: add "return" action #53015

added to minutes

time: add format constants for date and date+time #52746

discussion ongoing

unsafe: add functions to replace reflect.StringHeader and reflect.SliceHeader #53003

added to minutes
commented

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

commented

x/net/html: Allow getting raw HTML attribute values on Tokenizer #52911

added to minutes
discussion ongoing

x/net: Accept client-provided logger for http2 debug logs in addition to GODEBUG=http2debug=1,2 #52734

commented

2022-06-08 / @rsc, @griesemer, @ianlancetaylor, @bradfitz
Accepted

cmd/go: `go list -e -m -json all` to start displaying hashes of modules #52792

no change in consensus; accepted 🎉

net/http: support for the 103 status code #51914

no change in consensus; accepted 🎉

Declined

cmd/go: GOWORK env var should be off by default #51967

no change in consensus; declined

do something smart with virtual machine forks & crypto #52544

proposal retracted by author; declined

strconv: export unquote and appendQuotedWith #51887

no change in consensus; declined

Likely Accept

net/netip: add IPv6LinkLocalAllRouters #51766

likely accept; last call for comments ⏳

net/netip: add IPv6Loopback #51777

likely accept; last call for comments ⏳

time: add DateTime, DateOnly, TimeOnly format constants #52746

likely accept; last call for comments ⏳

unicode/utf16: add AppendRune #51896

likely accept; last call for comments ⏳

Likely Decline

errors: add new function Temporary(error) bool #37250

likely decline; last call for comments ⏳

fmt: add flags to control printing of slices #52936

likely decline; last call for comments ⏳

x/net/html: Allow getting raw HTML attribute values on Tokenizer #52911

likely decline; last call for comments ⏳

Active

cmd/go: add -reproducible flag #51812

discussion ongoing

cmd/go: partial vendoring #52604

discussion ongoing

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/cipher: please export xorBytes #53021

commented

crypto/x509: provide method for generating conformant serial numbers #52444

commented

crypto: implement CMAC #52931

commented

database/sql: add SetMaxBadConnRetries #52886

cc’ed authors

encoding/json: add omitzero option #45669

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

math/big: add Int.AddInt64, Int.CmpInt64 #29951

commented

math/big: add Int.AddInt64, Int.CmpInt64 #29951

discussion ongoing

net/http/httputil: replace Director with Rewrite #53002

commented

net/http: context based graceful server shutdown #52805

commented

net/netip: add To6 to wrap an IPv4 address into an IPv6 one #51833

commented

net/url: implement TextMarshaler/TextUnmarshaler interfaces for url.URL #52638

commented

reflect: add Value.SetZero #52376

commented

strings: add func CommonPrefixLen(x, y string) int #53120

commented

testing: add Name to track file and line of test case declaration #52751

commented

text/template: add "return" action #53015

commented

unsafe: add StringData, String, SliceData #53003

commented

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

commented

2022-06-15 / @rsc, @griesemer, @ianlancetaylor, @andybons
Accepted

net/netip: add IPv6LinkLocalAllRouters #51766

no change in consensus; accepted 🎉

net/netip: add IPv6Loopback #51777

no change in consensus; accepted 🎉

time: add DateTime, DateOnly, TimeOnly format constants #52746

no change in consensus; accepted 🎉

unicode/utf16: add AppendRune #51896

no change in consensus; accepted 🎉

Declined

errors: add new function Temporary(error) bool #37250

no change in consensus; declined

fmt: add flags to control printing of slices #52936

no change in consensus; declined

net/url: implement TextMarshaler/TextUnmarshaler interfaces for url.URL #52638

duplicate of #10275

x/net/html: Allow getting raw HTML attribute values on Tokenizer #52911

no change in consensus; declined

Likely Accept

crypto/x509: provide method for generating conformant serial numbers #52444

likely accept; last call for comments ⏳

reflect: add Value.SetZero #52376

likely accept; last call for comments ⏳

unsafe: add StringData, String, SliceData #53003

likely accept; last call for comments ⏳

Likely Decline

math/big: add Int.AddInt64, Int.CmpInt64 #29951

likely decline; last call for comments ⏳

net/http: context based graceful server shutdown #52805

likely decline; last call for comments ⏳

net/netip: add To6 to wrap an IPv4 address into an IPv6 one #51833

likely decline; last call for comments ⏳

Active

add package for using SIMD instructions #53171

added to minutes

all: decide what can implement TextMarshaler/TextUnmarshaler #10275

added to minutes

clarify Go support policy for secondary ports #53383

added to minutes

cmd/go: add -reproducible flag #51812

commented

context: add APIs for writing and reading cancelation cause #51365

discussion ongoing

crypto/cipher: please export xorBytes #53021

commented

crypto: implement CMAC #52931

discussion ongoing

database/sql: add SetMaxBadConnRetries #52886

discussion ongoing

encoding/binary: 32-bit and 16-bit values #53353

added to minutes
commented

encoding/json: add omitzero option #45669

commented

encoding/xml: Add (*Encoder).Close() to check for unclosed elements #53346

added to minutes

go/token: add FileSet.RemoveFile method #53200

added to minutes

io/fs: add writable interfaces #45757

discussion ongoing

io: register close finalizers on Pipe #53362

added to minutes
commented

net/http/httputil: replace Director with Rewrite #53002

commented

net/http: add ServeFSFile #51971

discussion ongoing

net/netip: add netip.Prefix.Range #53236

added to minutes

strconv: add ParseFloatPrefix #53340

added to minutes

strings: add func CommonPrefixLen(x, y string) int #53120

commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: add magic //go:cover ignore comment #53271

added to minutes
commented

text/template: add "return" action #53015

commented

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

commented

Hold

cmd/go: partial vendoring #52604

put on hold

2022-06-22 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons
Accepted

crypto/x509: provide method for generating conformant serial numbers #52444

no change in consensus; accepted 🎉

reflect: add Value.SetZero #52376

no change in consensus; accepted 🎉

unsafe: add StringData, String, SliceData #53003

no change in consensus; accepted 🎉

Declined

crypto/ecdh: add package #43656

duplicate of #52221

math/big: add Int.AddInt64, Int.CmpInt64 #29951

no change in consensus; declined

net/http: context based graceful server shutdown #52805

no change in consensus; declined

net/netip: add To6 to wrap an IPv4 address into an IPv6 one #51833

no change in consensus; declined

Likely Accept

net/http/httputil: replace Director with Rewrite #53002

likely accept; last call for comments ⏳

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

likely accept; last call for comments ⏳

Likely Decline

cmd/go: add -reproducible flag #51812

likely decline; last call for comments ⏳

encoding/binary: 32-bit and 16-bit values #53353

likely decline; last call for comments ⏳

Active

add package for using SIMD instructions #53171

commented

all: add freebsd/riscv64 port #53466

added to minutes

all: decide what can implement TextMarshaler/TextUnmarshaler #10275

commented

bytes: add Buffer.Init #53443

added to minutes

clarify Go support policy for secondary ports #53383

commented

cmd/compile: require build systems to specify -importcfg #51225

added to minutes

cmd/objdump: add '-gnu-only' or '-mca' flag #52099

added to minutes

context: add APIs for writing and reading cancelation cause #51365

discussion ongoing

crypto/cipher: add XORBytes #53021

commented

crypto: implement CMAC #52931

discussion ongoing

database/sql: add SetMaxBadConnRetries #52886

discussion ongoing

encoding/json: add omitzero option #45669

discussion ongoing

encoding/xml: Add (*Encoder).Close() to check for unclosed elements #53346

commented

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

errors: add support for wrapping multiple errors #53435

added to minutes

go/ast: add File.Start field, change File.Pos result #53202

added to minutes

go/token: add FileSet.RemoveFile method #53200

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

io: register close finalizers on Pipe #53362

commented

net/http: add ServeFSFile #51971

discussion ongoing

net/netip: add netip.Prefix.Range #53236

commented

strconv: add ParseFloatPrefix #53340

discussion ongoing

strings: add StripSlashes like PHP stripslashes #43579

added to minutes

strings: add func CommonPrefixLen(x, y string) int #53120

commented

testing: add Elapsed() method to testing.B #43620

added to minutes

testing: add GC cycles per op as a standard benchmark metric #52466

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: add magic //go:cover ignore comment #53271

commented

text/template: add "return" action #53015

commented

x/crypto/cryptobyte: add ReadUint64 and AddUint64 #53481

added to minutes

[Posting two days late. No proposal review meeting next week due to US holiday and Go quiet week.]
2022-06-29 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons
Accepted

net/http/httputil: replace Director with Rewrite #53002

no change in consensus; accepted 🎉

x/crypto/ssh: add  ServerConfig.HostKeyAlgorithms #52132

no change in consensus; accepted 🎉

Declined

cmd/go: add -reproducible flag #51812

no change in consensus; declined

encoding/binary: 32-bit and 16-bit values #53353

no change in consensus; declined

Likely Accept

crypto/subtle: add XORBytes #53021

likely accept; last call for comments ⏳

encoding/xml: Add (*Encoder).Close() to check for unclosed elements #53346

likely accept; last call for comments ⏳

go/token: add FileSet.RemoveFile method #53200

likely accept; last call for comments ⏳

text/template: add "return" action #53015

likely accept; last call for comments ⏳

x/crypto/cryptobyte: add ReadUint64 and AddUint64 #53481

likely accept; last call for comments ⏳

Likely Decline

bytes: add Buffer.Init #53443

likely decline; last call for comments ⏳

cmd/objdump: add '-gnu-only' or '-mca' flag #52099

likely decline; last call for comments ⏳

net/netip: add netip.Prefix.Range #53236

likely decline; last call for comments ⏳

strings: add StripSlashes like PHP stripslashes #43579

likely decline; last call for comments ⏳

Active

add package for using SIMD instructions #53171

discussion ongoing

all: add freebsd/riscv64 port #53466

commented

all: decide what can implement TextMarshaler/TextUnmarshaler #10275

discussion ongoing

clarify Go support policy for secondary ports #53383

discussion ongoing

cmd/compile: require build systems to specify -importcfg #51225

commented

cmd/dist: cli based upgrades #53596

added to minutes

cmd/go: support build customization with a build.go file #20177

declined as infeasible

context: add APIs for writing and reading cancelation cause #51365

commented

crypto/x509: surface ReasonCode inside x509.RevocationList entries #53573

added to minutes

crypto: implement CMAC #52931

cc’ed owners

database/sql: add SetMaxBadConnRetries #52886

discussion ongoing

encoding/json: add omitzero option #45669

discussion ongoing

errors: add support for wrapping multiple errors #53435

discussion ongoing

go/ast: add File.Start field, change File.Pos result #53202

discussion ongoing

io: register close finalizers on Pipe #53362

commented

math/rand or crypto/rand: add random strings generators #53447

added to minutes

net: add FlagRunning to the Flags of struct Interface, to exactly reflect the states of an interface or NIC #53482

added to minutes
commented

strconv: add ParseFloatPrefix #53340

commented

strings: add func CommonPrefixLen(x, y string) int #53120

commented

testing: add Elapsed() method to testing.B #43620

commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: add magic //go:cover ignore comment #53271

discussion ongoing

testing: report GC/op when b.ReportAllocs is called #52466

retitled

x/exp/slices: add First and Last #53510

added to minutes

x/net/webdav: make webdav/internal/xml module public #53527

added to minutes

2022-08-03 / @rsc, @ianlancetaylor, @bradfitz, @andybons
Accepted

flag: add BoolFunc(name, usage string, fn func(string)error) #53747

no change in consensus; accepted 🎉

Declined

add package for using SIMD instructions #53171

no change in consensus; declined

database/sql: add SetMaxBadConnRetries #52886

proposal retracted by author; declined

Likely Accept

all: decide what can implement TextMarshaler/TextUnmarshaler #10275

likely accept; last call for comments ⏳

clarify Go support policy for secondary ports #53383

likely accept; last call for comments ⏳

context: add APIs for writing and reading cancelation cause #51365

likely accept; last call for comments ⏳

net/http: easier access to HTTP/2 error codes #53896

likely accept; last call for comments ⏳

x/sync/errgroup: propagate panics and Goexits through Wait #53757

likely accept; last call for comments ⏳

Likely Decline

strings: add func CommonPrefixLen(x, y string) int #53120

likely decline; last call for comments ⏳

x/sync/errgroup: allow manual management of cancel #54079

likely decline; last call for comments ⏳

Active

cmd/go: go clean should not accept flags like -modcache with packages #53725

added to minutes

compress: add AppendEncoded and AppendDecoded #54078

discussion ongoing

errors: add support for wrapping multiple errors #53435

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

net/http: add ServeFSFile #51971

discussion ongoing

net: add API to receive multiple UDP packets (potentially in one system call) #45886

added to minutes

net: add func(IP) Addr() net.Addr and use in AddrPort methods #54234

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: add support for individual test function execution - expose testing.M.Tests #53701

commented

tools: add package for parsing go test JSON output #53893

discussion ongoing

x/crypto/cryptobyte: non allocating AddUint*LengthPrefixed API #54059

discussion ongoing

x/net/http2: distinguish no body from empty body #53894

commented

x/sys/windows: Add WSALookupService #54232

added to minutes

x/sys/windows: fix Accept implementation #54212

added to minutes

x/text/number: provide way to query number system #53872

commented

x/time/rate: add Sometimes type #54237

added to minutes

[Posting a day late; I migrated the proposal tracker to Projects V2 yesterday and then had to update my minutes maker to add all the new GraphQL API for Projects V2...]
2022-08-10 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons, @aclements, @julieqiu
Accepted

all: decide what can implement TextMarshaler/TextUnmarshaler #10275

no change in consensus; accepted 🎉

clarify Go support policy for secondary ports #53383

no change in consensus; accepted 🎉

context: add APIs for writing and reading cancelation cause #51365

no change in consensus; accepted 🎉

net/http: easier access to HTTP/2 error codes #53896

no change in consensus; accepted 🎉

Declined

strings: add func CommonPrefixLen(x, y string) int #53120

no change in consensus; declined

x/sync/errgroup: allow manual management of cancel #54079

no change in consensus; declined

Likely Accept

cmd/go: go clean should not accept flags like -modcache with packages #53725

likely accept; last call for comments ⏳

Likely Decline

none

Active

compress: add AppendCompress and AppendDecompress #54078

retitled
commented

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

added to minutes

crypto: add crypto engines #33281

added to minutes

errors: add support for wrapping multiple errors #53435

commented

net: add func(IP) Addr() net.Addr and use in AddrPort methods #54234

commented

net: add multiple-UDP-packet read and write #45886

commented

runtime: add 'created by goroutine number' to stack traces #38651

added to minutes
commented

runtime: add parameters to recover to only return specific types #50424

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: add support for individual test function execution - expose testing.M.Tests #53701

commented

x/crypto/cryptobyte: non allocating AddUint*LengthPrefixed API #54059

cc’ed owners

x/net/http2: distinguish no body from empty body #53894

discussion ongoing

x/sync/errgroup: propagate panics and Goexits through Wait #53757

moved to active for more discussion of programs that never call Wait

x/sys/windows: Add WSALookupService #54232

commented
cc’ed owners

x/sys/windows: fix Accept implementation #54212

does not need proposal

x/text/number: provide way to query number system #53872

commented

x/time/rate: add Sometimes type #54237

commented

Hold

x/tools: add package for parsing go test JSON output #53893

hold for #54378

2022-08-17 / @rsc, @griesemer, @andybons, @aclements, @julieqiu
Accepted

cmd/go: go clean should not accept flags like -modcache with packages #53725

no change in consensus; accepted 🎉

x/text/number: provide way to query number system #53872

no change in consensus; accepted 🎉

Declined

none

Likely Accept

compress: add AppendCompress and AppendDecompress #54078

likely accept; last call for comments ⏳

Likely Decline

testing: add support for individual test function execution - expose testing.M.Tests #53701

likely decline; last call for comments ⏳

Active

crypto/cipher: detached mode AEAD Seal/Open #24990

added to minutes
commented

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

cc’ed owners
commented

crypto/x509: expose hash algorithm for SignatureAlgorithm #33317

added to minutes
commented

crypto: add SignContext #28427

added to minutes
commented

crypto: add crypto engines #33281

commented

encoding/xml: add ability to create decoder with start element already on stack #49313

commented

errors: add support for wrapping multiple errors #53435

commented

net/http: add ServeFSFile #51971

discussion ongoing

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

retitled
commented

net: add func(IP) Unmap() IP to help when using net/netip #54234

retitled
commented

runtime option to use cosmopolitan libc #51900

discussion ongoing

runtime/race: add const Enabled #36477

added to minutes
commented

runtime: add 'created by goroutine number' to stack traces #38651

commented

runtime: add parameters to recover to only return specific types #50424

commented

testing: add Name to track file and line of test case declaration #52751

commented

x/net/http2: distinguish no body from empty body #53894

commented

x/sys/windows: Add WSALookupService #54232

commented

x/time/rate: add Sometimes type #54237

discussion ongoing

Other

x/sys/windows: fix Accept implementation #54212

removed from proposal process

There will be no proposal review next week. We will resume August 31.

[It appears that I never executed and posted the minutes after the August 31 proposal review meeting. I've just executed them now (and here is the post). Because of this mistake, we'll hold any Likely Accept / Likely Decline for an extra week to give any minutes readers a chance to weigh in. My apologies!]
2022-08-31 / @rsc, @griesemer, @bradfitz, @andybons, @aclements, @julieqiu, @ianlancetaylor
Accepted

compress: add AppendCompress and AppendDecompress #54078

no change in consensus; accepted 🎉

x/sys/windows: Add WSALookupService #54232

no change in consensus; accepted 🎉

Declined

testing: add support for individual test function execution - expose testing.M.Tests #53701

no change in consensus; declined

Likely Accept

runtime: add 'created by goroutine number' to stack traces #38651

likely accept; last call for comments ⏳

Likely Decline

runtime: add parameters to recover to only return specific types #50424

likely decline; last call for comments ⏳

Active

crypto/cipher: detached mode AEAD Seal/Open #24990

discussion ongoing

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

commented

crypto/x509: expose hash algorithm for SignatureAlgorithm #33317

discussion ongoing

crypto: add SignContext #28427

discussion ongoing

crypto: add crypto engines #33281

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

errors: add support for wrapping multiple errors #53435

commented

net: UDPAddr/TCPAddr AddrPort should map 4in6 addresses to IPv4 netip.Addrs #53607

commented

net: add func(IP) Unmap() IP to help when using net/netip #54234

commented

runtime/race: add const Enabled #36477

commented

testing: add Name to track file and line of test case declaration #52751

commented

x/crypto/cryptobyte: non allocating AddUint*LengthPrefixed API #54059

commented

x/net/http2: distinguish no body from empty body #53894

commented

x/sync/errgroup: propagate panics and Goexits through Wait #53757

commented

x/time/rate: add Sometimes type #54237

commented

Hold

all: add GOOS=cosmo port for Cosmopolitan Libc #51900

hold for implementation

[Continued from previous post; two were not in the proposal project yet and my program didn't like that.]
2022-09-07 / @rsc, @griesemer, @bradfitz, @aclements
Active

math/rand: add Reader variable #16776

added to minutes

math/rand: disambiguate Read from crypto/rand.Read #20661

added to minutes
commented

2022-09-21 / @rsc, @griesemer, @andybons, @aclements
Accepted

errors: add support for wrapping multiple errors #53435

no change in consensus; accepted 🎉

runtime: add 'created by goroutine number' to stack traces #38651

no change in consensus; accepted 🎉

x/crypto/cryptobyte: non allocating AddUint*LengthPrefixed and AddASN1 API #54059

no change in consensus; accepted 🎉

x/sync/errgroup: propagate panics and Goexits through Wait #53757

no change in consensus; accepted 🎉

Declined

runtime/race: add const Enabled #36477

no change in consensus; declined

runtime: add parameters to recover to only return specific types #50424

no change in consensus; declined

Likely Accept

go/ast: record start and end of file in File.FileStart, File.FileEnd #53202

likely accept; last call for comments ⏳

Likely Decline

crypto/cipher: detached mode AEAD Seal/Open #24990

likely decline; last call for comments ⏳

crypto/x509: expose hash algorithm for SignatureAlgorithm #33317

likely decline; last call for comments ⏳

crypto: add SignContext #28427

likely decline; last call for comments ⏳

math/rand: add Reader variable #16776

likely decline; last call for comments ⏳

runtime: add HeapMarked to MemStats #51966

likely decline; last call for comments ⏳

Active

build: adopt Go 1.20 as bootstrap toolchain for Go 1.22 #54265

discussion ongoing

cmd/compile: profile-guided optimization #55022

added to minutes

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

discussion ongoing

crypto: add crypto engines #33281

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

math/rand: deprecate Read #20661

commented

math/rand: seed global generator randomly #54880

commented

net/http: ResponseController to manipulate per-request timeouts (and other behaviors) #54136

commented

net/http: add ServeFSFile #51971

discussion ongoing

net: UDPAddr/TCPAddr AddrPort should map 4in6 addresses to IPv4 netip.Addrs #53607

commented

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

commented
still likely accept

runtime/pprof: extend profile configuration to support perf events #53286

commented

testing: add Name to track file and line of test case declaration #52751

commented

x/text: expose MIBenum via identifier package #47577

commented

x/time/rate: add Sometimes type #54237

commented

2022-09-28 / @rsc, @griesemer, @bradfitz, @aclements, @julieqiu
Accepted

go/ast: record start and end of file in File.FileStart, File.FileEnd #53202

no change in consensus; accepted 🎉

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

no change in consensus; accepted 🎉

Declined

crypto/x509: expose hash algorithm for SignatureAlgorithm #33317

no change in consensus; declined

crypto: add SignContext #28427

no change in consensus; declined

math/rand: add Reader variable #16776

no change in consensus; declined

runtime: add HeapMarked to MemStats #51966

no change in consensus; declined

Likely Accept

build: adopt Go 1.20 as bootstrap toolchain for Go 1.22 #54265

likely accept; last call for comments ⏳

cmd/compile: profile-guided optimization #55022

likely accept; last call for comments ⏳

math/rand: deprecate Read #20661

likely accept; last call for comments ⏳

math/rand: seed global generator randomly #54880

likely accept; last call for comments ⏳

x/time/rate: add Sometimes type #54237

likely accept; last call for comments ⏳

Likely Decline

cmd/vet: add static analysis pass to check whether bytes.Buffer should be replace by strings.Builder #54988

likely decline; last call for comments ⏳

x/text: expose MIBenum via identifier package #47577

likely decline; last call for comments ⏳

Active

archive/tar, archive/zip: add ErrInsecurePath #55356

added to minutes

bytes, strings: `TrimStart` and `TrimEnd` replacing `TrimLeft` and `TrimRight` #54678

added to minutes
commented

crypto/cipher: detached mode AEAD Seal/Open #24990

commented
back to active

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

discussion ongoing

crypto: add crypto engines #33281

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

hash: permit usage of encoding/binary package #55104

declined as infeasible

io/fs: add writable interfaces #45757

discussion ongoing

net/http:  Enabling support for HTTP/2 ORIGIN Frames RFC 8336 #55121

added to minutes
commented

net/http: ResponseController to manipulate per-request timeouts (and other behaviors) #54136

discussion ongoing

net/http: add ServeFSFile #51971

discussion ongoing

net/http: add support for proxy basic authentication #55290

added to minutes
commented

net: Add ControlContext to Dialer #55301

added to minutes

reflect: add (*Value).MapClear #55002

added to minutes

reflect: add Value.Equal, Value.Comparable #46746

added to minutes
commented

runtime/pprof: extend profile configuration to support perf events #53286

commented

sync/atomic: deprecate AddXxx, CompareAndSwapXxx, LoadXxx, StoreXxx, SwapXxx #55302

added to minutes
commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

time: add Ticker functions to affect the next tick #55129

added to minutes

x/exp/slices: add `Replace()` #55358

added to minutes

x/net/http2: Transport.MaxReadFrameSize #54850

added to minutes

x/tools/go/ssa: generate function bodies for parameterized functions #54984

added to minutes

Hold

net: UDPAddr/TCPAddr AddrPort should map 4in6 addresses to IPv4 netip.Addrs #53607

hold for more information

Other

design and implementation of Profile-Guided Optimization (PGO) #55025

removed from proposal process

2022-10-12 / @rsc, @griesemer, @ianlancetaylor, @andybons, @julieqiu
Accepted

math/rand: seed global generator randomly #54880

no change in consensus; accepted 🎉

net: Add ControlContext to Dialer #55301

no change in consensus; accepted 🎉

reflect: add Value.Equal, Value.Comparable #46746

no change in consensus; accepted 🎉

x/net/http2: Transport.MaxReadFrameSize #54850

no change in consensus; accepted 🎉

Declined

bytes, strings: `TrimStart` and `TrimEnd` replacing `TrimLeft` and `TrimRight` #54678

no change in consensus; declined

net/http: add support for proxy basic authentication #55290

no change in consensus; declined

sync/atomic: deprecate AddXxx, CompareAndSwapXxx, LoadXxx, StoreXxx, SwapXxx #55302

no change in consensus; declined

time: add Ticker functions to affect the next tick #55129

no change in consensus; declined

Likely Accept

os/exec: add fields for managing termination signals and pipes #50436

likely accept; last call for comments ⏳

regexp: add ErrLarge error #56041

likely accept; last call for comments ⏳

x/exp/slices: add Replace #55358

likely accept; last call for comments ⏳

x/tools/go/ssa: generate function bodies for parameterized functions #54984

likely accept; last call for comments ⏳

Likely Decline

crypto/cipher: detached mode AEAD Seal/Open #24990

likely decline; last call for comments ⏳

crypto: add crypto engines #33281

likely decline; last call for comments ⏳

hash: permit usage of encoding/binary package #55104

likely decline; last call for comments ⏳

net/http:  Enabling support for HTTP/2 ORIGIN Frames RFC 8336 #55121

likely decline; last call for comments ⏳

Active

add static analysis to find deprecated reflect.{SliceHeader,StringHeader} that could be replaced by unsafe.{Slice,SliceData,String,StringData} #54989

added to minutes
commented

all: add openbsd/riscv64 port #55999

commented

archive/tar, archive/zip: add ErrInsecurePath #55356

commented

cmd/go: add a flag to use stdin as a cancellation side-channel #56163

added to minutes

cmd/go: standard-library vendoring in module mode #30241

cc’ed owners

cmd/vet: extend the loopclosure analysis to parallel subtests #55972

added to minutes

crypto/ecdh: Support for PKCS#11 #56052

added to minutes

crypto/rsa: allow hash.Hash for OAEP and MGF1 to be specified independently #19974

commented

crypto/x509: Add support for OtherName SAN #55897

discussion ongoing

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

discussion ongoing

net/http: ResponseController to manipulate per-request timeouts (and other behaviors) #54136

commented

net/http: add Transport.OnProxyConnectResponse #54299

commented

openbsd/ppc64 port #56001

added to minutes

reflect: add (*Value).MapClear #55002

commented

runtime/pprof: extend profile configuration to support perf events #53286

commented

runtime/pprof: make the CPU profile maximum stack size configurable #56029

added to minutes

spec: disallow anonymous interface cycles #56103

added to minutes

sync/atomic: add JSON and Text Marshal and Unmarshal functions to scalar types #54582

added to minutes

sync: add OnceFunc #56102

added to minutes

syscall/js: add Scope function #56084

added to minutes

x/crypto: add Curve25519 #56088

commented
cc’ed owners

x/exp/maps: additional functionality, also a new package x/exp/sets #56128

added to minutes

x/net/http2: add support for SETTINGS_HEADER_TABLE_SIZE #56054

added to minutes

x/net/ipv{4,6}: adopt net/netip address types #54883

added to minutes

x/sys/unix: add ParseOneSocketControlMessage #54714

added to minutes

x/tools/cmd/goimports: ability to exclude specific directory, like vendor #54706

added to minutes
commented

Other

doc: add guidelines for comment directives #43776

removed from proposal process

2022-10-20 / @rsc, @griesemer, @ianlancetaylor, @andybons, @aclements
Accepted

os/exec: add fields for managing termination signals and pipes #50436

no change in consensus; accepted 🎉

regexp: add ErrLarge error #56041

no change in consensus; accepted 🎉

x/exp/slices: add Replace #55358

no change in consensus; accepted 🎉

x/tools/go/ssa: generate function bodies for parameterized functions #54984

no change in consensus; accepted 🎉

Declined

crypto/cipher: detached mode AEAD Seal/Open #24990

no change in consensus; declined

crypto: add crypto engines #33281

no change in consensus; declined

hash: permit usage of encoding/binary package #55104

no change in consensus; declined

net/http:  Enabling support for HTTP/2 ORIGIN Frames RFC 8336 #55121

no change in consensus; declined

Likely Accept

all: add openbsd/riscv64 port #55999

likely accept; last call for comments ⏳

archive/tar, archive/zip: add ErrInsecurePath #55356

likely accept; last call for comments ⏳

cmd/vet: extend the loopclosure analysis to parallel subtests #55972

likely accept; last call for comments ⏳

crypto/rsa: allow hash.Hash for OAEP and MGF1 to be specified independently #19974

likely accept; last call for comments ⏳

net/http: add Transport.OnProxyConnectResponse #54299

likely accept; last call for comments ⏳

Likely Decline

add static analysis to find deprecated reflect.{SliceHeader,StringHeader} that could be replaced by unsafe.{Slice,SliceData,String,StringData} #54989

likely decline; last call for comments ⏳

Active

cmd/go: add a flag to use stdin as a cancellation side-channel #56163

commented

cmd/go: standard-library vendoring in module mode #30241

discussion ongoing

crypto/ecdh: provide and/or implement an interface #56052

discussion ongoing

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

discussion ongoing

crypto/x509: support marshaling X25519 (and other ECDH) keys #56088

discussion ongoing

go/analysis: specify that all facts are encoded in one gulp, preserving topology #54661

added to minutes

math/rand: deprecate Seed #56319

added to minutes

net/http: ResponseController to manipulate per-request timeouts (and other behaviors) #54136

commented

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

commented

openbsd/ppc64 port #56001

commented

reflect: add (*Value).MapClear #55002

commented

runtime/pprof: extend profile configuration to support perf events #53286

discussion ongoing

runtime/pprof: make the CPU profile maximum stack size configurable #56029

commented

spec: add delete(m) to clear map #56351

created
added to minutes

spec: disallow anonymous interface cycles #56103

discussion ongoing

sync: add OnceFunc #56102

commented

x/tools/go/{analysis,packages}: expose TypeErrors []types.Error fields #54619

added to minutes

2022-11-02 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons, @aclements
Accepted

net/http: ResponseController to manipulate per-request timeouts (and other behaviors) #54136

no change in consensus; accepted 🎉

openbsd/ppc64 port #56001

no change in consensus; accepted 🎉

x/net/http2: add support for SETTINGS_HEADER_TABLE_SIZE #56054

no change in consensus; accepted 🎉

x/sys/unix: add ParseOneSocketControlMessage #54714

no change in consensus; accepted 🎉

Declined

x/exp/maps: additional functionality, also a new package x/exp/sets #56128

no change in consensus; declined

x/tools/cmd/goimports: ability to exclude specific directory, like vendor #54706

proposal retracted by author; declined

Likely Accept

cmd/go: add a flag to use stdin as a cancellation side-channel #56163

likely accept; last call for comments ⏳

cmd/go: standard-library vendoring in module mode #30241

likely accept; last call for comments ⏳

go/analysis: specify that all facts are encoded in one gulp, preserving topology #54661

likely accept; last call for comments ⏳

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

likely accept; last call for comments ⏳

Likely Decline

net/netip: Add function Network() for netip Addr to make it support the interface of net.Addr #56286

commented
likely decline; last call for comments ⏳

Active

bufio: allow terminating Scanner early cleanly without a final token or an error #56381

commented

bytes, strings: add ContainsFunc #54386

added to minutes
waiting for #53983

crypto/ecdh: provide and/or implement an interface #56052

commented

crypto/ecdsa: add methods to convert keys to crypto/ecdh format #56088

commented

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

commented

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

encoding: add ScalarMarshaler and ScalarUnmarshaler #56235

commented

log/slog: structured, leveled logging #56345

discussion ongoing

math/rand: deprecate Seed #56319

commented

net/http: add ServeFileFS, FileServerFS, NewFileTransportFS #51971

retitled
commented

os/exec: add GODEBUG flag to print a line to STDERR for each command started #56301

commented

path/filepath: Sanitize #56219

commented

reflect: add (*Value).MapClear #55002

waiting for #56351

runtime/pprof: extend profile configuration to support perf events #53286

commented

spec: add clear(x) builtin, to clear map, zero content of slice, ptr-to-array #56351

commented

spec: disallow anonymous interface cycles #56103

commented

sync: add OnceFunc #56102

commented

syscall/js: add Scope function #56084

commented

x/exp/slices: add ContainsFunc #53983

commented

Other

runtime/pprof: make the CPU profile maximum stack size configurable #56029

removed from proposal process

2022-11-09 / @rsc, @ianlancetaylor, @bradfitz, @andybons, @aclements
Accepted

cmd/go: add a flag to use stdin as a cancellation side-channel #56163

no change in consensus; accepted 🎉

cmd/go: standard-library vendoring in module mode #30241

no change in consensus; accepted 🎉

go/analysis: specify that all facts are encoded in one gulp, preserving topology #54661

no change in consensus; accepted 🎉

net: add UDPMsg, (*UDPConn).ReadUDPMsgs, (*UDPConn).WriteUDPMsgs #45886

no change in consensus; accepted 🎉

Declined

function: runes.repeat #56434

proposal retracted by author; declined

net/netip: Add function Network() for netip Addr to make it support the interface of net.Addr #56286

no change in consensus; declined

time: Add time.Day constant #56460

duplicate of #11473

Likely Accept

bufio: allow terminating Scanner early cleanly without a final token or an error #56381

likely accept; last call for comments ⏳

crypto/ecdsa: add methods to convert keys to crypto/ecdh format #56088

likely accept; last call for comments ⏳

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

likely accept; last call for comments ⏳

encoding: add ScalarMarshaler and ScalarUnmarshaler #56235

likely accept; last call for comments ⏳

math/rand: deprecate Seed #56319

likely accept; last call for comments ⏳

net/http: add ServeFileFS, FileServerFS, NewFileTransportFS #51971

likely accept; last call for comments ⏳

path/filepath: add Escapes #56219

likely accept; last call for comments ⏳

spec: disallow anonymous interface cycles #56103

likely accept; last call for comments ⏳

sync: add OnceFunc #56102

likely accept; last call for comments ⏳

syscall/js: add Scope function #56084

likely accept; last call for comments ⏳

x/tools/go/{analysis,packages}: expose TypeErrors []types.Error fields #54619

likely accept; last call for comments ⏳

Likely Decline

os/exec: add GODEBUG flag to print a line to STDERR for each command started #56301

likely decline; last call for comments ⏳

Active

bytes, strings: add ContainsFunc #54386

waiting for #53983

context: add APIs for setting a cancelation cause when deadline or timer expires #56661

added to minutes

crypto/ecdh: provide and/or implement an interface #56052

commented

crypto/x509: Add support for OtherName SAN #55897

commented

crypto: add SignContext #56508

added to minutes

database/sql: Support for generics with NullTypes Interface #56439

added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

net: add support for MPTCP #56539

added to minutes

reflect: add (*Value).MapClear #55002

waiting for #56351

runtime/pprof: extend profile configuration to support perf events #53286

commented

slices: Sort support sorting slices of floating-point numbers containing NaN values #56491

added to minutes
commented

spec: allow basic interface types to instantiate comparable type parameters #56548

added to minutes

spec: reduce noise in return statements that contain mostly zero values #21182

added to minutes

x/exp/slices: add ContainsFunc #53983

discussion ongoing

x/net/http2: support consuming PUSH_PROMISE streams in the client #18594

added to minutes
commented

x/net/ipv{4,6}: adopt net/netip address types #54883

commented

x/time/rate: make Wait return an error that Is(DeadlineExceeded) for deadline miss #54541

commented

2022-11-16 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons, @aclements, @julieqiu
Accepted

bufio: allow terminating Scanner early cleanly without a final token or an error #56381

no change in consensus; accepted 🎉

crypto/ecdsa: add methods to convert keys to crypto/ecdh format #56088

no change in consensus; accepted 🎉

crypto/x509: add crypto/x509/rootcerts package and rootcerts tag to embed CA root certificates in program #43958

no change in consensus; accepted 🎉

encoding: add ScalarMarshaler and ScalarUnmarshaler #56235

no change in consensus; accepted 🎉

math/rand: deprecate Seed #56319

no change in consensus; accepted 🎉

net/http: add ServeFileFS, FileServerFS, NewFileTransportFS #51971

no change in consensus; accepted 🎉

path/filepath: add IsLocal #56219

no change in consensus; accepted 🎉

spec: disallow anonymous interface cycles #56103

no change in consensus; accepted 🎉

sync: add OnceFunc #56102

no change in consensus; accepted 🎉

syscall/js: add Scope function #56084

no change in consensus; accepted 🎉

x/tools/go/{analysis,packages}: expose TypeErrors []types.Error fields #54619

no change in consensus; accepted 🎉

Declined

Go build constraint `any` #56749

declined as infeasible

embed: Allow remote resources to be embedded #56401

declined as infeasible

os/exec: add GODEBUG flag to print a line to STDERR for each command started #56301

no change in consensus; declined

Likely Accept

spec: add clear(x) builtin, to clear map, zero content of slice, ptr-to-array #56351

likely accept; last call for comments ⏳

spec: allow basic interface types to instantiate comparable type parameters #56548

commented
likely accept; last call for comments ⏳

x/exp/slices: add ContainsFunc #53983

likely accept; last call for comments ⏳

Likely Decline

crypto/x509: Add support for OtherName SAN #55897

likely decline; last call for comments ⏳

Active

bytes, strings: add ContainsFunc #54386

waiting for #53983

context: add APIs for setting a cancelation cause when deadline or timer expires #56661

commented

crypto/ecdh: provide and/or implement an interface #56052

commented

crypto: add SignContext and use in crypto/tls #56508

retitled
commented

database/sql: Support for generics with NullTypes Interface #56439

commented

encoding/json: allow limiting Decoder.Decode read size #56733

added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

math: add FloatCompare to order NaNs #56491

retitled
commented

net: add support for MPTCP #56539

commented

reflect: add (*Value).MapClear #55002

waiting for #56351

reflect: add `Value.CallInto` #49340

off hold
commented

runtime/pprof: extend profile configuration to support perf events #53286

commented

spec: reduce noise in return statements that contain mostly zero values #21182

commented

testing: t.TempDir() should return actual path on macOS #56259

added to minutes

x/net/http2: support consuming PUSH_PROMISE streams in the client #18594

discussion ongoing

x/net/ipv{4,6}: adopt net/netip address types #54883

commented

x/time/rate: make Wait return an error that Is(DeadlineExceeded) for deadline miss #54541

discussion ongoing

2022-11-30 / @rsc, @griesemer, @ianlancetaylor, @andybons, @julieqiu
Accepted

crypto/ecdh: provide and/or implement an interface #56052

no change in consensus; accepted 🎉

os: TempDir should use GetTempPath2 when available on Windows #56899

no change in consensus; accepted 🎉

spec: add clear(x) builtin, to clear map, zero content of slice #56351

no change in consensus; accepted 🎉

spec: allow basic interface types to instantiate comparable type parameters #56548

no change in consensus; accepted 🎉

x/exp/slices: add ContainsFunc #53983

no change in consensus; accepted 🎉

x/tools/cmd/cover: isolate, tag, and delete package #56783

no change in consensus; accepted 🎉

Declined

crypto/x509: Add support for OtherName SAN #55897

no change in consensus; declined

runtime: support to call finalizing function when `throw()` is called #56702

no change in consensus; declined

Likely Accept

bytes, strings: add ContainsFunc #54386

likely accept; last call for comments ⏳

Likely Decline

none

Active

all: end support for Windows 7, Windows Server 2008 in Go 1.21 #57003

added to minutes

all: end support for Windows 8, Windows Server 2012 in Go 1.21 or 1.22 #57004

added to minutes

bytes, strings: add Truncate #56885

added to minutes

cmd/doc: add example support #26715

added to minutes

cmd/go: do not download “modules” that contain no Go files #31866

added to minutes

cmd/go: support a -C flag value to not use any current directory #56868

added to minutes

context: add APIs for setting a cancelation cause when deadline or timer expires #56661

commented

crypto/rsa: deprecate GenerateMultiPrimeKey and PrecomputedValues.CRTValues #56921

added to minutes

crypto/x509: add String() for KeyUsage, ExtKeyUsage #56866

added to minutes

crypto: add SignContext and use in crypto/tls #56508

commented

database/sql: Support for generics with NullTypes Interface #56439

commented

encoding/json: allow limiting Decoder.Decode read size #56733

commented

extended backwards compatibility for Go #56986

added to minutes

extended forwards compatibility for Go #57001

added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

math: add Compare and Compare32 #56491

retitled
commented

net/http: Transport tracing hooks #56241

added to minutes

net: add support for MPTCP #56539

commented

reflect: add Value.Clear #55002

commented

reflect: add `Value.CallInto` #49340

commented

reflect: deprecate SliceHeader and StringHeader #56906

added to minutes

runtime/metrics: add live_objects metrics #56857

added to minutes

runtime/pprof: extend profile configuration to support perf events #53286

discussion ongoing

spec: guarantee non-nil return value from recover #25448

added to minutes

spec: reduce noise in return statements that contain mostly zero values #21182

discussion ongoing

testing: t.TempDir() should return actual path on macOS #56259

commented

x/exp/slices: add Sorted #56692

added to minutes

x/net/http2: support consuming PUSH_PROMISE streams in the client #18594

commented

x/net/ipv{4,6}: adopt net/netip address types #54883

commented

x/time/rate: make Wait return an error that Is(DeadlineExceeded) for deadline miss #54541

commented

2022-12-07 / @rsc, @griesemer, @ianlancetaylor, @bradfitz, @andybons, @julieqiu
Accepted

bytes, strings: add ContainsFunc #54386

no change in consensus; accepted 🎉

Declined

none

Likely Accept

all: end support for Windows 7, Windows Server 2008 in Go 1.21 #57003

likely accept; last call for comments ⏳

all: end support for Windows 8, Windows Server 2012 in Go 1.21 or 1.22 #57004

likely accept; last call for comments ⏳

context: add APIs for setting a cancelation cause when deadline or timer expires #56661

likely accept; last call for comments ⏳

crypto/x509: add String() for KeyUsage, ExtKeyUsage #56866

likely accept; last call for comments ⏳

net: add support for MPTCP #56539

likely accept; last call for comments ⏳

reflect: add Value.Clear #55002

likely accept; last call for comments ⏳

runtime/metrics: add /gc/heap/live:bytes #56857

likely accept; last call for comments ⏳

Likely Decline

testing: t.TempDir() should return actual path on macOS #56259

likely decline; last call for comments ⏳

x/exp/slices: add Sorted #56692

likely decline; last call for comments ⏳

x/time/rate: make Wait return an error that Is(DeadlineExceeded) for deadline miss #54541

likely decline; last call for comments ⏳

Active

bytes, strings: add Truncate #56885

commented

cmd/doc: add example support #26715

discussion ongoing

cmd/go: do not download “modules” that contain no Go files #31866

commented

cmd/go: support a -C flag value to not use any current directory #56868

commented

crypto/rsa: deprecate GenerateMultiPrimeKey and PrecomputedValues.CRTValues #56921

commented

crypto: add SignContext and use in crypto/tls #56508

discussion ongoing

database/sql: Support for generics with NullTypes Interface #56439

commented

encoding/json: allow limiting Decoder.Decode read size #56733

commented

extended backwards compatibility for Go #56986

discussion ongoing

extended forwards compatibility for Go #57001

discussion ongoing

log/slog: structured, leveled logging #56345

discussion ongoing

math: add Compare and Compare32 #56491

commented

net/http: Transport tracing hooks #56241

cc’ed owners

reflect: add `Value.CallInto` #49340

commented

reflect: deprecate SliceHeader and StringHeader #56906

commented

runtime/pprof: extend profile configuration to support perf events #53286

discussion ongoing

spec: guarantee non-nil return value from recover #25448

commented

spec: reduce noise in return statements that contain mostly zero values #21182

discussion ongoing

x/net/ipv{4,6}: adopt net/netip address types #54883

commented

2022-12-14 / @rsc, @griesemer, @ianlancetaylor, @adonovan, @andybons, @aclements
Accepted

all: end support for Windows 7, Windows Server 2008 in Go 1.21 #57003

no change in consensus; accepted 🎉

all: end support for Windows 8, Windows Server 2012 in Go 1.21 or 1.22 #57004

no change in consensus; accepted 🎉

context: add APIs for setting a cancelation cause when deadline or timer expires #56661

no change in consensus; accepted 🎉

crypto/x509: add String() for KeyUsage, ExtKeyUsage #56866

no change in consensus; accepted 🎉

net: add support for MPTCP #56539

no change in consensus; accepted 🎉

reflect: add Value.Clear #55002

no change in consensus; accepted 🎉

runtime/metrics: add /gc/heap/live:bytes #56857

no change in consensus; accepted 🎉

Declined

testing: t.TempDir() should return actual path on macOS #56259

no change in consensus; declined

x/exp/slices: add Sorted #56692

no change in consensus; declined

x/time/rate: make Wait return an error that Is(DeadlineExceeded) for deadline miss #54541

no change in consensus; declined

Likely Accept

cmd/go: support a -C flag value to not use any current directory #56868

likely accept; last call for comments ⏳

crypto/rsa: deprecate GenerateMultiPrimeKey and PrecomputedValues.CRTValues #56921

likely accept; last call for comments ⏳

math: add Compare and Compare32 #56491

likely accept; last call for comments ⏳

x/net/http2: support consuming PUSH_PROMISE streams in the client #18594

likely accept; last call for comments ⏳

x/net/ipv{4,6}: adopt net/netip address types #54883

likely accept; last call for comments ⏳

Likely Decline

bytes, strings: add Truncate #56885

likely decline; last call for comments ⏳

database/sql: Support for generics with NullTypes Interface #56439

likely decline; last call for comments ⏳

Active

cmd/doc: add example support #26715

discussion ongoing

cmd/go: do not download “modules” that contain no go.mod or *.go #31866

commented

cmd/go: load $GOROOT/go.env before loading user go.env #57179

added to minutes

context: add a way to detach from parent cancellation #40221

added to minutes

crypto: add SignContext and use in crypto/tls #56508

discussion ongoing

encoding/binary: add var NativeEndian of type littleEndian or bigEndian #57237

added to minutes
commented

encoding/json: allow limiting Decoder.Decode read size #56733

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

extended backwards compatibility for Go #56986

commented

extended forwards compatibility for Go #57001

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

log/slog: structured, leveled logging #56345

commented

net/http: Transport tracing hooks #56241

discussion ongoing

reflect: add Value.Caller #49340

commented

reflect: deprecate SliceHeader and StringHeader #56906

commented

runtime/pprof: extend profile configuration to support perf events #53286

commented

spec: guarantee non-nil return value from recover #25448

commented

spec: guarantee non-nil return value from recover #25448

commented

spec: reduce noise in return statements that contain mostly zero values #21182

discussion ongoing

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

My minutes program neglected to include this trivial quick accept:

https://github.com/golang/go/issues/57313

2022-12-21 / @aclements, @adonovan, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

cmd/go: support a -C flag value to not use any current directory #56868

no change in consensus; accepted 🎉

crypto/rsa: deprecate GenerateMultiPrimeKey and PrecomputedValues.CRTValues #56921

no change in consensus; accepted 🎉

math: add Compare and Compare32 #56491

no change in consensus; accepted 🎉

x/net/http2: support consuming PUSH_PROMISE streams in the client #18594

no change in consensus; accepted 🎉

x/net/ipv{4,6}: adopt net/netip address types #54883

no change in consensus; accepted 🎉

Declined

bytes, strings: add Truncate #56885

no change in consensus; declined

database/sql: Support for generics with NullTypes Interface #56439

no change in consensus; declined

Likely Accept

crypto: add ContextSigner and use in crypto/tls #56508

retitled
likely accept; last call for comments ⏳

Likely Decline

none

Active

cmd/doc: add example support #26715

discussion ongoing

cmd/go: do not download “modules” that contain no go.mod or *.go #31866

commented

cmd/go: load $GOROOT/go.env before loading user go.env #57179

discussion ongoing

cmd/trace: support for perfetto #57315

added to minutes

context: add a way to detach from parent cancellation #40221

commented

encoding/binary: add var NativeEndian ByteOrder = LittleEndian or BigEndian #57237

commented

encoding/json: allow limiting Decoder.Decode read size #56733

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

errors: add Errors function to undo Join #57358

added to minutes

extended backwards compatibility for Go #56986

discussion ongoing

extended forwards compatibility for Go #57001

discussion ongoing

io: add ZeroReader io.Reader #57317

added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

make package initialization order within a series of import statements predictable and controllable #57411

added to minutes

net/http: Transport tracing hooks #56241

discussion ongoing

reflect: add Value.Caller #49340

commented

reflect: deprecate SliceHeader and StringHeader #56906

discussion ongoing

runtime/pprof: extend profile configuration to support perf events #53286

discussion ongoing

spec: guarantee non-nil return value from recover #25448

commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

testing: optionally include full (or relative) path name #37708

added to minutes

Hold

spec: reduce noise in return statements that contain mostly zero values #21182

put on hold

[We didn't get to the last few issues in the active list today. Next week!]
2023-01-04 / @aclements, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

crypto: add ContextSigner and use in crypto/tls #56508

no change in consensus; accepted 🎉

Declined

none

Likely Accept

cmd/go: do not download “modules” that contain no go.mod or *.go #31866

likely accept; last call for comments ⏳

cmd/trace: support for perfetto #57315

likely accept; last call for comments ⏳

extended backwards compatibility for Go #56986

likely accept; last call for comments ⏳

reflect: add Value.Caller #49340

likely accept; last call for comments ⏳

spec: guarantee non-nil return value from recover #25448

likely accept; last call for comments ⏳

Likely Decline

none

Active

cmd/doc: add example support #26715

commented

cmd/go: load $GOROOT/go.env before loading user go.env #57179

commented

context: add a way to detach from parent cancellation #40221

commented

encoding/binary: add var NativeEndian; also x/sys/cpu.IsBigEndian #57237

commented

encoding/json: allow limiting Decoder.Decode read size #56733

discussion ongoing

encoding/xml: add ability to create decoder with start element already on stack #49313

discussion ongoing

errors: add Errors function to undo Join #57358

commented

extended forwards compatibility for Go #57001

commented

io/fs: add writable interfaces #45757

discussion ongoing

io: add ZeroReader io.Reader #57317

commented

log/slog: structured, leveled logging #56345

discussion ongoing

maps: new standard library package based on x/exp/maps #57436

added to minutes

math/big: add Int.Float64 conversion (was initially: {ToInt64,ToUint64,Float64}) #56984

added to minutes

runtime/pprof: extend profile configuration to support perf events #53286

commented

slices: new standard library package based on x/exp/slices #57433

added to minutes

spec: define initialization order more precisely #57411

commented

spec: generics: type switch on parametric types #45380

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

Hold

net/http: Transport tracing hooks #56241

hold for structured logging

2023-01-11 / @aclements, @adonovan, @andybons, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

cmd/go: do not download “modules” that contain no go.mod or *.go #31866

no change in consensus; accepted 🎉

cmd/trace: support for perfetto #57315

no change in consensus; accepted 🎉

reflect: add Value.Caller #49340

no change in consensus; accepted 🎉

spec: guarantee non-nil return value from recover #25448

no change in consensus; accepted 🎉

Declined

none

Likely Accept

cmd/go: load $GOROOT/go.env before loading user go.env #57179

likely accept; last call for comments ⏳

encoding/binary: add var NativeEndian; also x/sys/cpu.IsBigEndian #57237

likely accept; last call for comments ⏳

extended backwards compatibility for Go #56986

likely accept; last call for comments ⏳
a few comments remain

math/big: add Int.Float64 conversion (was initially: {ToInt64,ToUint64,Float64}) #56984

likely accept; last call for comments ⏳

Likely Decline

errors: add Errors function to undo Join #57358

likely decline; last call for comments ⏳

io: add ZeroReader io.Reader #57317

likely decline; last call for comments ⏳

Active

add a (*go/token.File).Lines method #57708

added to minutes

archive/zip: add Dir to zip a directory #54898

added to minutes

cmd/doc: add example support #26715

commented

context: add Merge #36503

added to minutes

context: add a way to detach from parent cancellation #40221

commented

encoding/json: allow limiting Decoder.Decode read size #56733

discussion ongoing

extended forwards compatibility for Go #57001

discussion ongoing

log/slog: structured, leveled logging #56345

discussion ongoing

maps: new standard library package based on x/exp/maps #57436

commented

reflect: deprecate SliceHeader and StringHeader #56906

discussion ongoing

runtime/pprof: extend profile configuration to support perf events #53286

discussion ongoing

slices: new standard library package based on x/exp/slices #57433

commented

spec: define initialization order more precisely #57411

commented

spec: generics: type switch on parametric types #45380

discussion ongoing

testing: optionally include full (or relative) path name #37708

commented

x/exp/slices: Allow different types for haystack/needle in BinarySearchFunc #57348

added to minutes

2023-02-01 / @aclements, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

add a (*go/token.File).Lines method #57708

no change in consensus; accepted 🎉

cmd/doc: add example support #26715

no change in consensus; accepted 🎉

debug/elf: add DT_FLAGS_1 (dynamic flags) constants #56887

no change in consensus; accepted 🎉

debug/elf: add missing PPC64 ELFv2 1.5 relocation constants #54345

no change in consensus; accepted 🎉

extended forwards compatibility for Go #57001

no change in consensus; accepted 🎉

maps: new standard library package based on x/exp/maps #57436

no change in consensus; accepted 🎉

x/exp/slices: Allow different types for haystack/needle in BinarySearchFunc #57348

no change in consensus; accepted 🎉

Declined

none

Likely Accept

archive/tar: add (*Writer).AddFS #58000

likely accept; last call for comments ⏳

archive/zip: add (*Writer).AddFS #54898

likely accept; last call for comments ⏳

cmd/compile: add GOEXPERIMENT=loopvar #57969

likely accept; last call for comments ⏳

context: add WithoutCancel #40221

likely accept; last call for comments ⏳

encoding/json: add (*Decoder).SetLimit #56733

likely accept; last call for comments ⏳

reflect: deprecate SliceHeader and StringHeader #56906

likely accept; last call for comments ⏳

slices: new standard library package based on x/exp/slices #57433

likely accept; last call for comments ⏳

slices: new standard library package based on x/exp/slices #57433

likely accept; last call for comments ⏳

spec: define initialization order more precisely #57411

likely accept; last call for comments ⏳

Likely Decline

context: add Merge #36503

likely decline; last call for comments ⏳

Active

archive/tar, archive/zip: add NewReaderOptions with directory traversal defenses #57850

added to minutes

bytes: add Buffer.Extend #53685

commented
added to minutes

cmd/cgo: add "//go:cgo_unsafe_stack_pointer" to avoid escaping #56378

commented
added to minutes

cmd/compile: A GOOS=wasi GOARCH=wasm compilation target #58141

added to minutes

cmd/go: Add a build tag for tests #52600

commented
added to minutes

context: notification callback for cancelled/expired contexts #57928

added to minutes

go/printer: don't reformat single line if statements #57645

commented
added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

net/http: ResponseController.SetBidi to support concurrent Request.Body reads and ResponseWriter.Writes #57786

commented
added to minutes

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented
added to minutes

path/filepath: add IsReserved to identify Windows reserved filenames #57152

commented
added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

x/tools/go/analysis: add Analyzer.URL and Diagnostic.URL fields #57906

commented

Hold

runtime/pprof: extend profile configuration to support perf events #53286

hold for draft implementation

Other

math/rand: reconsider lock-free source #49892

removed from process

2023-02-08 / @aclements, @adonovan, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
[We didn't get to everything today due to long discussions about a few of the proposals we did get to. Also, people following proposals may be interested in this discussion (not proposal): telemetry in the Go toolchain #58409.]
Accepted

archive/tar: add (*Writer).AddFS #58000

no change in consensus; accepted 🎉

archive/zip: add (*Writer).AddFS #54898

no change in consensus; accepted 🎉

cmd/compile: add GOEXPERIMENT=loopvar #57969

no change in consensus; accepted 🎉

context: add WithoutCancel #40221

no change in consensus; accepted 🎉

encoding/json: add (*Decoder).SetLimit #56733

no change in consensus; accepted 🎉

reflect: deprecate SliceHeader and StringHeader #56906

no change in consensus; accepted 🎉

slices: new standard library package based on x/exp/slices #57433

no change in consensus; accepted 🎉

spec: define initialization order more precisely #57411

no change in consensus; accepted 🎉

Declined

none

Likely Accept

none

Likely Decline

go/printer: don't reformat single line if statements #57645

likely decline; last call for comments ⏳

Active

archive/tar, archive/zip: add NewReaderOptions with directory traversal defenses #57850

commented

bytes: add Buffer.AvailableBuffer #53685

commented

cmd/cgo: add "//go:cgo_unsafe_stack_pointer" to avoid escaping #56378

commented

cmd/compile: A GOOS=wasi GOARCH=wasm compilation target #58141

commented

cmd/go: Add a build tag for tests #52600

commented

context: add Merge #36503

discussion ongoing

crypto/tls: support QUIC as a transport #44886

added to minutes

debug/elf: add functionality for retrieving contents of DynTags that are not string values #56892

added to minutes

end support for macOS 10.13 and 10.14 in Go 1.21 #57125

added to minutes

log/slog: structured, leveled logging #56345

discussion ongoing

net/http: ResponseController.EnableFullDuplex to support concurrent Request.Body reads and ResponseWriter.Writes #57786

commented

x/crypto/x509roots: new module #57792

added to minutes

x/sync/singleflight: add generic version #53427

added to minutes

[Lost last week due to covid. Didn't get through everything this week.]
2023-02-22 / @aclements, @adonovan, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

none

Declined

go/printer: don't reformat single line if statements #57645

no change in consensus; declined

Likely Accept

debug/elf: add (*File).DynValue #56892

likely accept; last call for comments ⏳

end support for macOS 10.13 and 10.14 in Go 1.21 #57125

likely accept; last call for comments ⏳

net/http: add ResponseController.EnableFullDuplex #57786

likely accept; last call for comments ⏳

Likely Decline

none

Active

archive/tar, archive/zip: add NewReaderOptions with directory traversal defenses #57850

commented

bytes: add Buffer.Available and Buffer.AvailableBuffer #53685

commented

cmd/cgo: add #cgo noescape/nocallback annotations #56378

commented

cmd/cgo: get rid of CFType, JNI, EGL unsafe.Pointer => uintptr special cases #41337

added to minutes
commented

cmd/compile: A GOOS=wasi GOARCH=wasm compilation target #58141

commented

context: add Merge #36503

discussion ongoing

context: notification callback for cancelled/expired contexts #57928

commented

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: support SCT/OCSP passthrough when using platform verifiers #58251

added to minutes

crypto/x509: support code-constrained roots #57178

added to minutes
commented

log/slog: structured, leveled logging #56345

discussion ongoing

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented

path/filepath: add IsReserved to identify Windows reserved filenames #57152

commented

testing: add func Testing() bool #52600

commented

use a zero for third digit for major release, such as 'go1.23.0' #57631

added to minutes
commented

2023-03-01 / @adonovan, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @rsc
Accepted

debug/elf: add (*File).DynValue #56892

no change in consensus; accepted 🎉

end support for macOS 10.13 and 10.14 in Go 1.21 #57125

no change in consensus; accepted 🎉

net/http: add ResponseController.EnableFullDuplex #57786

no change in consensus; accepted 🎉

Declined

none

Likely Accept

bytes: add Buffer.Available and Buffer.AvailableBuffer #53685

likely accept; last call for comments ⏳

cmd/cgo: add #cgo noescape/nocallback annotations #56378

likely accept; last call for comments ⏳

log/slog: structured, leveled logging #56345

likely accept; last call for comments ⏳

testing: add func Testing() bool #52600

likely accept; last call for comments ⏳

Likely Decline

none

Active

all: remove GOARM=5 #58686

added to minutes

archive/tar, archive/zip: add NewReaderOptions with directory traversal defenses #57850

waiting for data

cmd/cgo: get rid of CFType, JNI, EGL unsafe.Pointer => uintptr special cases #41337

commented

cmd/compile: A GOOS=wasi GOARCH=wasm compilation target #58141

commented

context: add Merge #36503

commented

context: notification callback for cancelled/expired contexts #57928

commented

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: support SCT/OCSP passthrough when using platform verifiers #58251

commented

crypto/x509: support code-constrained roots #57178

discussion ongoing

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

discussion ongoing

path/filepath: add IsReserved to identify Windows reserved filenames #57152

commented

runtime: use WER for GOTRACEBACK=crash on Windows #57441

added to minutes

testing: add Name to track file and line of test case declaration #52751

commented

use a zero for third digit for major release, such as 'go1.23.0' #57631

commented

x/crypto/x509roots: new module #57792

commented

x/net/http2: add IdleConnTimeout to http2.Transport #57893

added to minutes

x/oauth2: Add RFC 6749 error fields to RetrieveError #58125

added to minutes

x/sync/singleflight: add generic version #53427

commented

x/tools/go/analysis: add Analyzer.URL and Diagnostic.URL fields #57906

commented

2023-03-15 / @aclements, @adonovan, @andybons, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

all: add GOOS=wasip1 GOARCH=wasm port #58141

no change in consensus; accepted 🎉

crypto/x509: support SCT/OCSP passthrough when using platform verifiers #58251

no change in consensus; accepted 🎉

log/slog: structured, leveled logging #56345

no change in consensus; accepted 🎉

use a zero for third digit for major release, such as 'go1.23.0' #57631

no change in consensus; accepted 🎉

x/tools/go/analysis: add Analyzer.URL and Diagnostic.URL fields #57906

no change in consensus; accepted 🎉

Declined

cmd/cgo: get rid of CFType, JNI, EGL unsafe.Pointer => uintptr special cases #41337

no change in consensus; declined

Likely Accept

crypto/x509: support code-constrained roots #57178

likely accept; last call for comments ⏳

x/net/http2: add IdleConnTimeout to http2.Transport #57893

likely accept; last call for comments ⏳

Likely Decline

flag: Add IgnoreOnError ErrorHandling #58839

likely decline; last call for comments ⏳

slices: add difference function #58730

likely decline; last call for comments ⏳

Active

all: add opt-in transparent telemetry to Go toolchain #58894

discussion ongoing

all: remove GOARM=5 #58686

discussion ongoing

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

context: add Merge #36503

waiting on #57928

context: notification callback for cancelled/expired contexts #57928

commented

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: add android user trusted CA folder as a possible source for certificate retrieval #58922

discussion ongoing

fmt: improve ergonomics of fmt.Print-like functions #57816

added to minutes
commented

fs: standard implementations of FileInfo and DirEntry should implement fmt.Stringer #54451

added to minutes
commented

go/ast, go/build/constraint: support for per-file Go versions using //go:build lines #59033

added to minutes

net/http: add ErrSchemeMismatch #44855

commented

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

discussion ongoing

path/filepath: add IsReserved to identify Windows reserved filenames #57152

commented

runtime: use WER for GOTRACEBACK=wer on Windows #57441

commented

testing: add Name to track file and line of test case declaration #52751

commented

x/crypto/x509roots: new module #57792

commented

x/exp/slices: DeleteFunc #54768

commented

x/oauth2: Add RFC 6749 error fields to RetrieveError #58125

commented

x/sync/singleflight: add generic version #53427

waiting on #48287

x/tools/diff: a package for computing text differences #58893

commented

x/tools/go/types/objectpath: add Encoder type, to amortize Scope.Names #58668

commented

2023-04-05 / @adonovan, @ianlancetaylor, @julieqiu, @rsc
Accepted

context: add AfterFunc #57928

no change in consensus; accepted 🎉

crypto/x509: add android user trusted CA folder as a possible source for certificate retrieval #58922

no change in consensus; accepted 🎉

go/ast, go/build/constraint: support for per-file Go versions using //go:build lines #59033

no change in consensus; accepted 🎉

net/http: add ErrSchemeMismatch #44855

no change in consensus; accepted 🎉

runtime: use WER for GOTRACEBACK=wer on Windows #57441

no change in consensus; accepted 🎉

slices: add DeleteFunc #54768

no change in consensus; accepted 🎉

x/oauth2: Add RFC 6749 error fields to RetrieveError #58125

no change in consensus; accepted 🎉

x/tools/go/types/objectpath: add Encoder type, to amortize Scope.Names #58668

no change in consensus; accepted 🎉

Declined

all: remove GOARM=5 #58686

no change in consensus; declined

cmd/go: add "go mod audit" subcommand #54443

declined as infeasible

cmd/go: add go work toggle flag (impossible?) #57090

declined as infeasible

fmt: improve ergonomics of fmt.Print-like functions #57816

proposal retracted by author; declined

html: optimize EscapeString and UnescapeString with avx instructions #53410

declined as infeasible

io: io.MultiReader should read until the buffer is full or there are no Readers left #57750

declined as infeasible

os/exec: Add ability to limit or prohibit the use of spawning subprocess' #54621

declined as infeasible

unicode/utf8: rune count in a valid UTF-8 string #57896

proposal retracted by author; declined

Likely Accept

all: add opt-in transparent telemetry to Go toolchain #58894

likely accept; last call for comments ⏳

embed: openFile should implement ReaderAt #57803

likely accept; last call for comments ⏳

log/slog: arg to Record.Attrs should return bool #59060

likely accept; last call for comments ⏳

log/slog: drop only completely empty Attrs #59282

likely accept; last call for comments ⏳

log/slog: handle panics in LogValuer.LogValue #59141

likely accept; last call for comments ⏳

net: add func (*TCPConn) MultipathTCP() (bool, error) #59166

likely accept; last call for comments ⏳

spec: a general approach to type inference #58650

likely accept; last call for comments ⏳

x/crypto/x509roots: new module #57792

likely accept; last call for comments ⏳

Likely Decline

bash_completions support #58598

likely decline; last call for comments ⏳

embed: treat `/` as module's root in `go:embed` directive #58525

likely decline; last call for comments ⏳

io: add NewReaderAt #58679

likely decline; last call for comments ⏳

path/filepath: add IsReserved to identify Windows reserved filenames #57152

likely decline; last call for comments ⏳

spec: define return statement's result assignment order? #58233

likely decline; last call for comments ⏳

x/exp/maps: Shrink #54454

likely decline; last call for comments ⏳

x/exp/maps: add Entries #54012

likely decline; last call for comments ⏳

x/exp/maps: add Merge #57191

likely decline; last call for comments ⏳

x/exp/slices: add Pop #52434

likely decline; last call for comments ⏳

x/exp/slices: addition of Count function #57798

likely decline; last call for comments ⏳

Active

all: add plan9/arm64 port #57540

discussion ongoing

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

context: add Merge #36503

commented

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: add support for PBES2 private keys #39241

added

crypto/x509: decryption of PEM file failure not being caught #43504

added

fmt: add an additional %j verb to wrap errors #58107

added

fs: standard implementations of FileInfo and DirEntry should implement fmt.Stringer #54451

commented

log/slog: JSONHandler should format durations as strings #59345

added to minutes
commented

log/slog: ReplaceAttr gets PC instead of file:line #59280

commented

log/slog: add an 'error' field to 'Record' #59364

added to minutes
commented

log/slog: add vet checks for variadic ...any inputs #59407

added to minutes
commented

log/slog: builtin support for helper functions #59145

discussion ongoing

log/slog: change slog.Group signature to ...any #59204

discussion ongoing

log/slog: clean up the handler constructors #59339

added to minutes

log/slog: copy Logger by value instead of pointer #59126

discussion ongoing

log/slog: remove calls to Value.Resolve from slog core #59292

added to minutes
commented

math: add Clamp function #58146

commented

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented

path/filepath: add IsReserved to identify Windows reserved filenames #57152

discussion ongoing

spec: infer type arguments from assignments of generic functions (reverse type inference) #59338

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

unicode/utf8: provide generic versions of all functions #56948

added to minutes

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

added to minutes
commented

x/crypto/ssh: expose negotiated algorithms #58523

cc’ed owners

x/oauth2: Device authorization grant #58126

cc’ed owners

x/tools/diff: a package for computing text differences #58893

discussion ongoing

Hold

x/sync/singleflight: add generic version #53427

hold for #48287

2023-04-12 / @adonovan, @andybons, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

all: add opt-in transparent telemetry to Go toolchain #58894

no change in consensus; accepted 🎉

embed: openFile should implement ReaderAt #57803

no change in consensus; accepted 🎉

log/slog: arg to Record.Attrs should return bool #59060

no change in consensus; accepted 🎉

log/slog: drop only completely empty Attrs #59282

no change in consensus; accepted 🎉

log/slog: handle panics in LogValuer.LogValue #59141

no change in consensus; accepted 🎉

net: add func (*TCPConn) MultipathTCP() (bool, error) #59166

no change in consensus; accepted 🎉

spec: a general approach to type inference #58650

no change in consensus; accepted 🎉

x/crypto/x509roots: new module #57792

no change in consensus; accepted 🎉

Declined

bash_completions support #58598

no change in consensus; declined

embed: treat `/` as module's root in `go:embed` directive #58525

no change in consensus; declined

io: add NewReaderAt #58679

no change in consensus; declined

os: make os.dirFS implement fs.ReadFileFS and fs.ReadDirFS #59503

duplicate of #53761

path/filepath: add IsReserved to identify Windows reserved filenames #57152

no change in consensus; declined

spec: define return statement's result assignment order? #58233

no change in consensus; declined

x/exp/maps: Shrink #54454

no change in consensus; declined

x/exp/maps: add Entries #54012

no change in consensus; declined

x/exp/maps: add Merge #57191

no change in consensus; declined

x/exp/slices: add Pop #52434

no change in consensus; declined

x/exp/slices: addition of Count function #57798

no change in consensus; declined

Likely Accept

fs: standard implementations of FileInfo and DirEntry should implement fmt.Stringer #54451

likely accept; last call for comments ⏳

log/slog: ReplaceAttr gets Source struct instead of file:line #59280

likely accept; last call for comments ⏳

log/slog: add vet checks for variadic ...any inputs #59407

likely accept; last call for comments ⏳

log/slog: remove calls to Value.Resolve from slog core #59292

likely accept; last call for comments ⏳

Likely Decline

context: add Merge #36503

likely decline; last call for comments ⏳

crypto/x509: add support for PBES2 private keys #39241

likely decline; last call for comments ⏳

fmt: add an additional %j verb to wrap errors #58107

likely decline; last call for comments ⏳

log/slog: add an 'error' field to 'Record' #59364

likely decline; last call for comments ⏳

log/slog: builtin support for helper functions #59145

likely decline; last call for comments ⏳

math: add Clamp function #58146

likely decline; last call for comments ⏳

strconv: Add Parse[T] #57975

likely decline; last call for comments ⏳

Active

all: add plan9/arm64 port #57540

commented

cmd/compile: allow the use of go:wasmimport globally #59149

added to minutes

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

added to minutes

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: decryption of PEM file failure not being caught #43504

discussion ongoing

log/slog: JSONHandler should format everything like json.Marshal #59345

commented

log/slog: change constructors to NewXXXHandler(io.Writer, *HandlerOptions) #59339

discussion ongoing

log/slog: change slog.Group signature to ...any #59204

discussion ongoing

log/slog: copy Logger by value instead of pointer #59126

commented

os: make DirFS implement ReadFile, ReadDir #53761

added to minutes
commented

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented

sort: add Ordered, Min, Max #59488

added to minutes

spec: infer type arguments from assignments of generic functions (reverse type inference) #59338

discussion ongoing

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

added to minutes
commented

time:  add binning #54392

added to minutes
commented

time: Add RFC3339Milli and/or RFC3339Micro convenience constants to standard library #36472

added to minutes
commented

time: new Init() and Start() methods for Timer #54870

added to minutes
commented

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

discussion ongoing

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/oauth2: Device authorization grant #58126

discussion ongoing

x/tools/diff: a package for computing text differences #58893

commented

Hold

unicode/utf8: provide generic versions of all functions #56948

hold for compiler work

2023-04-19 / @aclements, @adonovan, @griesemer, @ianlancetaylor, @rsc
Accepted

fs: standard implementations of FileInfo and DirEntry should implement fmt.Stringer #54451

no change in consensus; accepted 🎉

log/slog: ReplaceAttr gets Source struct instead of file:line #59280

no change in consensus; accepted 🎉

log/slog: add vet checks for variadic ...any inputs #59407

no change in consensus; accepted 🎉

log/slog: remove calls to Value.Resolve from slog core #59292

no change in consensus; accepted 🎉

Declined

context: add Merge #36503

no change in consensus; declined

crypto/x509: add support for PBES2 private keys #39241

no change in consensus; declined

fmt: add an additional %j verb to wrap errors #58107

no change in consensus; declined

log/slog: add an 'error' field to 'Record' #59364

no change in consensus; declined

log/slog: builtin support for helper functions #59145

no change in consensus; declined

math: add Clamp function #58146

no change in consensus; declined

strconv: Add Parse[T] #57975

no change in consensus; declined

time: Add RFC3339Milli and/or RFC3339Micro convenience constants to standard library #36472

proposal retracted by author; declined

Likely Accept

log/slog: JSONHandler should format everything like json.Marshal #59345

likely accept; last call for comments ⏳

log/slog: change constructors to NewXXXHandler(io.Writer, *HandlerOptions) #59339

likely accept; last call for comments ⏳

log/slog: change slog.Group signature to ...any #59204

likely accept; last call for comments ⏳

os: make DirFS implement ReadFile, ReadDir #53761

likely accept; last call for comments ⏳

spec: infer type arguments from assignments of generic functions (reverse type inference) #59338

likely accept; last call for comments ⏳

Likely Decline

all: add plan9/arm64 port #57540

likely decline; last call for comments ⏳

log/slog: copy Logger by value instead of pointer #59126

likely decline; last call for comments ⏳

time: new Init() and Start() methods for Timer #54870

likely decline; last call for comments ⏳

Active

cmd/compile: allow the use of go:wasmimport globally #59149

commented

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

discussion ongoing

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

crypto/tls: support QUIC as a transport #44886

discussion ongoing

crypto/x509: decryption of PEM file failure not being caught #43504

commented

encoding/xml: add ability to create decoder with start element already on stack #49313

commented

html/template: expose errJSTmplLit #59584

added to minutes

io/fs: add writable interfaces #45757

commented

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

discussion ongoing

sort: add Ordered, Min, Max #59488

commented

spec: lazy init imports to possibly import without side effects #38450

added to minutes

testing/cmp: add new package #45200

commented

testing: add Name to track file and line of test case declaration #52751

commented

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

time:  add binning #54392

commented

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

discussion ongoing

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/oauth2: Device authorization grant #58126

discussion ongoing

x/tools/diff: a package for computing text differences #58893

discussion ongoing

2023-05-03 / @aclements, @adonovan, @bradfitz, @ianlancetaylor, @julieqiu, @rsc
Accepted

log/slog: JSONHandler should format everything like json.Marshal #59345

no change in consensus; accepted 🎉

log/slog: change constructors to NewXXXHandler(io.Writer, *HandlerOptions) #59339

no change in consensus; accepted 🎉

log/slog: change slog.Group signature to ...any #59204

no change in consensus; accepted 🎉

os: make DirFS implement ReadFile, ReadDir #53761

no change in consensus; accepted 🎉

spec: infer type arguments from assignments of generic functions (reverse type inference) #59338

no change in consensus; accepted 🎉

Declined

all: add plan9/arm64 port #57540

no change in consensus; declined

log/slog: copy Logger by value instead of pointer #59126

no change in consensus; declined

time: new Init() and Start() methods for Timer #54870

no change in consensus; declined

Likely Accept

cmd/compile: allow the use of go:wasmimport globally #59149

likely accept; last call for comments ⏳

html/template: expose ErrJSTemplate #59584

likely accept; last call for comments ⏳

Likely Decline

crypto/x509: decryption of PEM file failure not being caught #43504

likely decline; last call for comments ⏳

encoding/xml: add ability to create decoder with start element already on stack #49313

likely decline; last call for comments ⏳

testing/cmp: add new package #45200

likely decline; last call for comments ⏳

time:  add binning #54392

likely decline; last call for comments ⏳

Active

add new package cmp, defining add Ordered, Min, Max #59488

discussion ongoing

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

commented

cmd/go: allow `go list` to return the content of the `go-source` meta tag #59566

added to minutes

cmd/go: let a child process implement the internal action/output cache #59719

added to minutes

cmd/go: support `local` directive in go.mod #51779

added to minutes

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

crypto/tls: support QUIC as a transport #44886

discussion ongoing

io/fs: add writable interfaces #45757

discussion ongoing

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

discussion ongoing

spec: lazy init imports to possibly import without side effects #38450

commented

strings: add new functions to deprecate strings.{Trim/TrimRight/TrimLeft} to avoid mistakes #50399

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

commented

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/oauth2: Device authorization grant #58126

discussion ongoing

2023-05-10 / @aclements, @adonovan, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

cmd/compile: allow the use of go:wasmimport globally #59149

no change in consensus; accepted 🎉

html/template: expose ErrJSTemplate #59584

no change in consensus; accepted 🎉

Declined

cmd/go: support `local` directive in go.mod #51779

declined as infeasible

crypto/x509: decryption of PEM file failure not being caught #43504

no change in consensus; declined

encoding/xml: add ability to create decoder with start element already on stack #49313

no change in consensus; declined

testing/cmp: add new package #45200

no change in consensus; declined

time:  add binning #54392

no change in consensus; declined

Likely Accept

none

Likely Decline

spec: lazy init imports to possibly import without side effects #38450

likely decline; last call for comments ⏳

Active

bufio: add Writer.UnwrittenData #59106

added to minutes

bytes: trim cap on Buffer.Bytes result #59570

added to minutes

cmd/go: add GOEXPERIMENT=gocacheprog to let a child process implement the internal action/output cache #59719

commented

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

commented

cmd/go: allow `go list` to return the content of the `go-source` meta tag #59566

commented

cmd/go: track tool dependencies in go.mod #48429

commented

cmp: new package with Ordered, Min, Max #59488

discussion ongoing

crypto/tls: QUIC 0-RTT APIs #60107

added to minutes

crypto/tls: advanced sessions APIs #60105

added to minutes

crypto/tls: implement RFC7627 #43922

taken off hold

crypto/tls: support QUIC as a transport #44886

commented

html/template: refuse to parse complex JS template literals #60055

added to minutes
commented

io/fs: add writable interfaces #45757

discussion ongoing

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented

runtime: add support for the Arm’s ArmV8.5-A Memory Tagging Extension (MTE) in Go #59090

added to minutes

slices: add Reverse #58565

added to minutes

slices: add sorting and comparison functions #60091

added to minutes
commented

spec: less error-prone loop variable scoping #60078

added to minutes

strings: add new functions to deprecate strings.{Trim/TrimRight/TrimLeft} to avoid mistakes #50399

commented

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

type inference should be more lenient about untyped numeric literals #58671

added to minutes

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

commented

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/oauth2: Device authorization grant #58126

discussion ongoing

x/tools/go/pointer: isolate, tag, and delete the pointer analysis #59676

added to minutes

2023-05-17 / @aclements, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

none

Declined

bytes: trim cap on Buffer.Bytes result #59570

proposal retracted by author; declined

cmd/go: add -testlabel to print a label on the test package names #60128

proposal retracted by author; declined

reflect: add generic variants of `TypeOf()` and `ValueOf()` #50741

duplicate of #60088

spec: lazy init imports to possibly import without side effects #38450

no change in consensus; declined

text/template: add nil literal #57773

declined as infeasible

Likely Accept

cmd/go: add GOEXPERIMENT=gocacheprog to let a child process implement the internal action/output cache #59719

likely accept; last call for comments ⏳

cmp: new package with Ordered, Compare, Less; min, max as builtins #59488

likely accept; last call for comments ⏳

crypto/tls: support QUIC as a transport #44886

likely accept; last call for comments ⏳

go/ast: add 'func Unparen(Expr) Expr' #60061

likely accept; last call for comments ⏳

html/template: refuse to parse complex JS template literals #60055

likely accept; last call for comments ⏳

slices: add Reverse #58565

likely accept; last call for comments ⏳

slices: add sorting and comparison functions #60091

likely accept; last call for comments ⏳

spec: type inference should be more lenient about untyped numeric literals #58671

likely accept; last call for comments ⏳

x/tools/go/pointer: isolate, tag, and delete the pointer analysis #59676

likely accept; last call for comments ⏳

Likely Decline

bufio: add Writer.UnwrittenData #59106

likely decline; last call for comments ⏳

cmd/go: allow `go list` to return the content of the `go-source` meta tag #59566

likely decline; last call for comments ⏳

Active

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

discussion ongoing

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

context: reconsider semantics for AfterFunc stop function #60156

added to minutes
commented

crypto/tls: QUIC 0-RTT APIs #60107

commented

crypto/tls: advanced sessions APIs #60105

commented

crypto/tls: implement RFC7627 #43922

commented

io/fs: add writable interfaces #45757

discussion ongoing

net/netip: add `Map()` to `netip.Addr` #54365

added to minutes

path/filepath: add FromFS to safely convert a slash-separated path into an operating system path #57151

commented

reflect: add MakeType #60088

added to minutes

runtime: add support for the Arm’s ArmV8.5-A Memory Tagging Extension (MTE) in Go #59090

commented

spec: less error-prone loop variable scoping #60078

discussion ongoing

strings: add First #60204

added to minutes

strings: add new functions to deprecate strings.{Trim/TrimRight/TrimLeft} to avoid mistakes #50399

discussion ongoing

testing: add Name to track file and line of test case declaration #52751

commented

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

text/template: add "else with" like "else if" #57646

added to minutes
commented

unsafe: allow conversion of `uintptr` to `unsafe.Pointer` when it points to non-Go memory #58625

commented

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/oauth2: Device authorization grant #58126

discussion ongoing

2023-05-24 / @aclements, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

cmd/go: add GOEXPERIMENT=gocacheprog to let a child process implement the internal action/output cache #59719

no change in consensus; accepted 🎉

cmp: new package with Ordered, Compare, Less; min, max as builtins #59488

no change in consensus; accepted 🎉

crypto/tls: support QUIC as a transport #44886

no change in consensus; accepted 🎉

go/ast: add func Unparen(Expr) Expr #60061

no change in consensus; accepted 🎉

html/template: refuse to parse complex JS template literals #60055

no change in consensus; accepted 🎉

slices: add Reverse #58565

no change in consensus; accepted 🎉

slices: add sorting and comparison functions #60091

no change in consensus; accepted 🎉

spec: type inference should be more lenient about untyped numeric literals #58671

no change in consensus; accepted 🎉

x/tools/go/pointer: isolate, tag, and delete the pointer analysis #59676

no change in consensus; accepted 🎉

Declined

add text based intermediate representation (IR) #60363

declined as infeasible

bufio: add Writer.UnwrittenData #59106

no change in consensus; declined

cmd/go: go list: report go-source tag information #59566

no change in consensus; declined

Likely Accept

crypto/tls: QUIC 0-RTT APIs #60107

likely accept; last call for comments ⏳

crypto/tls: advanced sessions APIs #60105

likely accept; last call for comments ⏳

crypto/tls: implement RFC7627 #43922

likely accept; last call for comments ⏳

path/filepath: add Localize to safely convert a slash-separated path into an operating system path #57151

likely accept; last call for comments ⏳

text/template: add "else with" like "else if" #57646

likely accept; last call for comments ⏳

Likely Decline

context: reconsider semantics for AfterFunc stop function #60156

likely decline; last call for comments ⏳

net/netip: add netip.Addr.Map #54365

likely decline; last call for comments ⏳

Active

cmd/go: GOAMD64=native #60338

added to minutes

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

commented

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

cmd/vet: time.Since should not be used in defer statement #60048

added to minutes

database/sql: add generic Null[T] #60370

added to minutes

io/fs: add writable interfaces #45757

discussion ongoing

reflect:  deprecate PtrTo #59599

added to minutes

reflect: add MakeType #60088

discussion ongoing

runtime: add support for the Arm’s ArmV8.5-A Memory Tagging Extension (MTE) in Go #59090

discussion ongoing

slices: add Concat #56353

added to minutes

spec: less error-prone loop variable scoping #60078

discussion ongoing

spec: when unifying against interface types, consider common methods #60353

added to minutes

strings: add First #60204

discussion ongoing

syscall: add Mremap #60409

added to minutes

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

unsafe: allow conversion of uintptr to unsafe.Pointer when it points to non-Go memory #58625

discussion ongoing

x/crypto/ssh: expose negotiated algorithms #58523

discussion ongoing

x/net/websocket: add Config.DialContext #57953

added to minutes

x/oauth2: Device authorization grant #58126

discussion ongoing

x/sys/windows/svc/mgr: add Service.RecoveryActionsOnNonCrashFailures and Service.SetRecoveryActionsOnNonCrashFailures #59016

added to minutes

Hold

strings: add new functions to deprecate strings.{Trim/TrimRight/TrimLeft} to avoid mistakes #50399

put on hold

2023-05-31 / @aclements, @adonovan, @andybons, @griesemer, @ianlancetaylor, @julieqiu, @rsc
Accepted

crypto/tls: QUIC 0-RTT APIs #60107

no change in consensus; accepted 🎉

crypto/tls: advanced sessions APIs #60105

no change in consensus; accepted 🎉

crypto/tls: implement RFC7627 #43922

no change in consensus; accepted 🎉

math: remove Compare, Compare32 #60519

no change in consensus; accepted 🎉

path/filepath: add Localize to safely convert a slash-separated path into an operating system path #57151

no change in consensus; accepted 🎉

text/template: add "else with" like "else if" #57646

no change in consensus; accepted 🎉

Declined

context: reconsider semantics for AfterFunc stop function #60156

no change in consensus; declined

net/netip: add netip.Addr.Map #54365

no change in consensus; declined

Likely Accept

cmd/vet: time.Since should not be used in defer statement #60048

likely accept; last call for comments ⏳

spec: when unifying against interface types, consider common methods #60353

likely accept; last call for comments ⏳

x/sys/unix: add Mremap #60409

likely accept; last call for comments ⏳

x/sys/windows/svc/mgr: add Service.RecoveryActionsOnNonCrashFailures and Service.SetRecoveryActionsOnNonCrashFailures #59016

likely accept; last call for comments ⏳

Likely Decline

none

Active

cmd/go: GOAMD64=local to compile for local machine #60338

commented

cmd/go: add global ignore mechanism for Go tooling ecosystem #42965

commented

cmd/go: track tool dependencies in go.mod #48429

discussion ongoing

crypto/tls: expose SessionState extra information #60539

added to minutes

database/sql: add generic Null[T] #60370

cc’ed owners

io/fs: add writable interfaces #45757

discussion ongoing

reflect:  deprecate PtrTo #59599

commented

reflect: add MakeType #60088

discussion ongoing

runtime: add support for the Arm’s ArmV8.5-A Memory Tagging Extension (MTE) in Go #59090

commented

slices: add Concat #56353

commented

spec: less error-prone loop variable scoping #60078

discussion ongoing

strings: add First #60204

discussion ongoing

testing: add Name to track file and line of test case declaration #52751

discussion ongoing

text/template, html/template: Add ExecuteFuncMap and ExecuteTemplateFuncMap #54450

discussion ongoing

unsafe: allow conversion of uintptr to unsafe.Pointer when it points to non-Go memory #58625

discussion ongoing

x/crypto/ssh: expose negotiated algorithms #58523

commented

x/net/websocket: add Config.DialContext #57953

commented

x/oauth2: Device authorization grant #58126

discussion ongoing

2023-06-07 / @aclements, @adonovan, @andybons, @bradfitz, @griesemer, @ianlancetaylor, @rsc
Accepted

cmd/vet: time.Since should not be used in defer statement #60048

no change in consensus; accepted 🎉

spec: when unifying against interface types, consider common methods #60353

no change in consensus; accepted 🎉

x/sys/unix: add Mremap #60409

no change in consensus; accepted 🎉

x/sys/windows/svc/mgr: add Service.RecoveryActionsOnNonCrashFailures and Service.SetRecoveryActionsOnNonCrashFailures #59016

no change in consensus; accepted 🎉

Declined

MIPS32: pass ISA level with GOMIPS #59415

duplicate of #60072

net, os: API to interrupt Read/Write() for polled objects #36402

declined as infeasible

Likely Accept

cmd/go: GOAMD64=local to compile for local machine #60338

likely accept; last call for comments ⏳

crypto/tls: expose SessionState extra information #60539

likely accept; last call for comments ⏳

x/net/websocket: add Config.DialContext #57953

likely accept; last call for comments ⏳

Likely Decline

go/printer: don't reformat single line switch cases #57667

likely decline; last call for comments ⏳

reflect:  deprecate PtrTo #59599

likely decline; last call for comments ⏳

Active