Damien Neil
90bcc552c0
crypto/tls: apply QUIC session event flag to QUICResumeSession events
...
Go 1.23 adds two new events to QUICConns: QUICStoreSessionEvent and
QUICResumeSessionEvent. We added a QUICConfig.EnableStoreSessionEvent
flag to control whether the store-session event is provided or not,
because receiving this event requires additional action from the caller:
the session must be explicitly stored with QUICConn.StoreSession.
We did not add a control for whether the resume-session event is
provided, because this event requires no action and the caller is
expected to ignore unknown events.
However, we never documented the expectation that callers ignore
unknown events, and quic-go produces an error when receiving an
unexpected event. So change the EnableStoreSessionEvent flag to
apply to both new events.
Fixes #68124
For #63691
Change-Id: I84af487e52b3815f7b648e09884608f8915cd645
Reviewed-on: https://go-review.googlesource.com/c/go/+/594475
Reviewed-by: Marten Seemann <martenseemann@gmail.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Roland Shoemaker <roland@golang.org >
2024-06-25 17:08:08 +00:00
Joel Sing
8f5c6904b6
syscall: selectively update zerrors_* on openbsd/386, openbsd/arm and openbsd/amd64
...
The EBADMSG, ENOTRECOVERABLE, EOWNERDEAD and EPROTO Errno are missing
on openbsd/386, openbsd/arm and openbsd/amd64. These are the earliest
OpenBSD ports and they did not exist in the system headers when the
relevant zerror_* file was generated.
These exist for all other ports, hence it makes sense to add them
for consistency. Update error and signal strings so that they are
also consistent across OpenBSD ports.
Fixes #67998
Change-Id: I948857ef5bddcfbcdfb102c95e571d9cee009e77
Reviewed-on: https://go-review.googlesource.com/c/go/+/592795
Reviewed-by: Mauri de Souza Meneguzzo <mauri870@gmail.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Commit-Queue: Ian Lance Taylor <iant@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-06-16 23:08:08 +00:00
Gopher Robot
d2909ec885
api: promote next to go1.23
...
Change-Id: I219c59b5efc2ed7fcfdd7cd3c418635831b17b8a
Reviewed-on: https://go-review.googlesource.com/c/go/+/590835
Reviewed-by: Michael Knyszek <mknyszek@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Auto-Submit: Gopher Robot <gobot@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
2024-06-05 20:48:49 +00:00
Roland Shoemaker
9eeb627f60
crypto/tls: add ech client support
...
This CL adds a (very opinionated) client-side ECH implementation.
In particular, if a user configures a ECHConfigList, by setting the
Config.EncryptedClientHelloConfigList, but we determine that none of
the configs are appropriate, we will not fallback to plaintext SNI, and
will instead return an error. It is then up to the user to decide if
they wish to fallback to plaintext themselves (by removing the config
list).
Additionally if Config.EncryptedClientHelloConfigList is provided, we
will not offer TLS support lower than 1.3, since negotiating any other
version, while offering ECH, is a hard error anyway. Similarly, if a
user wishes to fallback to plaintext SNI by using 1.2, they may do so
by removing the config list.
With regard to PSK GREASE, we match the boringssl behavior, which does
not include PSK identities/binders in the outer hello when doing ECH.
If the server rejects ECH, we will return a ECHRejectionError error,
which, if provided by the server, will contain a ECHConfigList in the
RetryConfigList field containing configs that should be used if the user
wishes to retry. It is up to the user to replace their existing
Config.EncryptedClientHelloConfigList with the retry config list.
Fixes #63369
Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest
Change-Id: I9bc373c044064221a647a388ac61624efd6bbdbf
Reviewed-on: https://go-review.googlesource.com/c/go/+/578575
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Filippo Valsorda <filippo@golang.org >
Reviewed-by: Than McIntosh <thanm@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
Auto-Submit: Roland Shoemaker <roland@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-23 03:10:12 +00:00
Filippo Valsorda
587c3847da
math/rand/v2: add ChaCha8.Read
...
Fixes #67059
Closes #67452
Closes #67498
Change-Id: I84eba2ed787a17e9d6aaad2a8a78596e3944909a
Reviewed-on: https://go-review.googlesource.com/c/go/+/587280
Reviewed-by: Roland Shoemaker <roland@golang.org >
Auto-Submit: Filippo Valsorda <filippo@golang.org >
Reviewed-by: Carlos Amedee <carlos@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-22 22:09:08 +00:00
islishude
2bf686dfe9
net/http: add partitioned attribute to cookie type
...
Fixes #62490
Change-Id: Ibe7df96f50275c9321462e994a962031cb1f3018
GitHub-Last-Rev: 7df8738b80
GitHub-Pull-Request: golang/go#62499
Reviewed-on: https://go-review.googlesource.com/c/go/+/526435
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Damien Neil <dneil@google.com >
Reviewed-by: Théo Dury <tdury2@gmail.com >
2024-05-22 18:33:05 +00:00
Damien Neil
cbd8f16adc
crypto/tls: improved 0-RTT QUIC API
...
Add synchronous management of stored sessions to QUICConn.
This adds QUICStoreSession and QUICResumeSession events,
permitting a QUIC implementation to handle session resumption
as part of its regular event loop processing.
Fixes #63691
Change-Id: I9fe16207cc1986eac084869675bc36e227cbf3f0
Reviewed-on: https://go-review.googlesource.com/c/go/+/536935
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Marten Seemann <martenseemann@gmail.com >
Reviewed-by: Roland Shoemaker <roland@golang.org >
2024-05-22 17:23:54 +00:00
David Chase
22344e11f2
cmd/compile: add structs.HostLayout
...
This is for the proposal, plus a few bug fixes
that would/will be necessary when this is put into
actual use.
Fixes #66408 .
Updates #63131 .
Change-Id: I3a66e09d707dd579c59f155e7f53367f41214c30
Reviewed-on: https://go-review.googlesource.com/c/go/+/578355
Reviewed-by: Austin Clements <austin@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: David Chase <drchase@google.com >
2024-05-20 21:19:39 +00:00
Lorenz Bauer
04bf36e973
encoding/binary: add Append, Encode and Decode
...
Add a function which appends the binary representation of a value to the end of a slice.
This allows users to encode values with zero allocations. Also add Encode and Decode
functions which mimic unicode/utf8.
goos: darwin
goarch: arm64
pkg: encoding/binary
cpu: Apple M1 Pro
│ base.txt │ append.txt │
│ sec/op │ sec/op vs base │
ReadSlice1000Int32s-10 2.690µ ± 0% 2.532µ ± 3% -5.86% (p=0.002 n=6)
ReadStruct-10 205.8n ± 0% 201.4n ± 1% -2.14% (p=0.002 n=6)
WriteStruct-10 159.1n ± 0% 153.5n ± 0% -3.55% (p=0.002 n=6)
WriteSlice1000Structs-10 129.8µ ± 0% 124.2µ ± 0% -4.34% (p=0.002 n=6)
ReadSlice1000Structs-10 161.7µ ± 0% 160.3µ ± 0% -0.89% (p=0.002 n=6)
ReadInts-10 156.8n ± 0% 161.6n ± 0% +3.09% (p=0.002 n=6)
WriteInts-10 134.5n ± 0% 139.5n ± 2% +3.72% (p=0.002 n=6)
WriteSlice1000Int32s-10 2.691µ ± 16% 2.551µ ± 4% -5.20% (p=0.002 n=6)
PutUint16-10 0.6448n ± 4% 0.6212n ± 1% ~ (p=0.093 n=6)
AppendUint16-10 1.414n ± 0% 1.424n ± 1% ~ (p=0.115 n=6)
PutUint32-10 0.6210n ± 0% 0.6211n ± 0% ~ (p=0.833 n=6)
AppendUint32-10 1.414n ± 0% 1.426n ± 1% +0.85% (p=0.017 n=6)
PutUint64-10 0.6210n ± 0% 0.6394n ± 1% +2.95% (p=0.002 n=6)
AppendUint64-10 1.414n ± 0% 1.427n ± 2% ~ (p=0.052 n=6)
LittleEndianPutUint16-10 0.6239n ± 0% 0.6271n ± 1% ~ (p=0.063 n=6)
LittleEndianAppendUint16-10 1.421n ± 0% 1.432n ± 1% +0.81% (p=0.002 n=6)
LittleEndianPutUint32-10 0.6240n ± 0% 0.6240n ± 0% ~ (p=0.766 n=6)
LittleEndianAppendUint32-10 1.422n ± 1% 1.425n ± 0% ~ (p=0.673 n=6)
LittleEndianPutUint64-10 0.6242n ± 0% 0.6238n ± 0% -0.08% (p=0.030 n=6)
LittleEndianAppendUint64-10 1.420n ± 0% 1.449n ± 1% +2.04% (p=0.002 n=6)
ReadFloats-10 39.36n ± 0% 42.54n ± 1% +8.08% (p=0.002 n=6)
WriteFloats-10 33.65n ± 0% 35.27n ± 1% +4.80% (p=0.002 n=6)
ReadSlice1000Float32s-10 2.656µ ± 0% 2.526µ ± 1% -4.91% (p=0.002 n=6)
WriteSlice1000Float32s-10 2.765µ ± 0% 2.857µ ± 3% +3.31% (p=0.002 n=6)
ReadSlice1000Uint8s-10 129.1n ± 1% 130.4n ± 1% ~ (p=0.126 n=6)
WriteSlice1000Uint8s-10 144.90n ± 3% 18.67n ± 2% -87.12% (p=0.002 n=6)
PutUvarint32-10 12.11n ± 0% 12.12n ± 0% ~ (p=0.675 n=6)
PutUvarint64-10 30.82n ± 0% 30.79n ± 1% ~ (p=0.658 n=6)
AppendStruct-10 107.8n ± 0%
AppendSlice1000Structs-10 119.0µ ± 0%
AppendInts-10 55.29n ± 0%
AppendSlice1000Int32s-10 2.211µ ± 1%
geomean 33.07n 48.18n -7.03%
Fixes #60023
Change-Id: Ife3f217b11d5f3eaa5a53fe8a7e877552f751f94
Reviewed-on: https://go-review.googlesource.com/c/go/+/579157
Reviewed-by: Keith Randall <khr@google.com >
Auto-Submit: Austin Clements <austin@google.com >
Reviewed-by: Ingo Oeser <nightlyone@googlemail.com >
Reviewed-by: Austin Clements <austin@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-20 18:58:26 +00:00
aimuz
2b0f2f8169
maps: add All, Keys, Values, Insert, Collect
...
Fixed #61900 .
Change-Id: Ic5962dc92b3102e7448635bef541414a2eaf415e
GitHub-Last-Rev: 3c6f74d617
GitHub-Pull-Request: golang/go#67521
Reviewed-on: https://go-review.googlesource.com/c/go/+/586716
Auto-Submit: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Commit-Queue: Ian Lance Taylor <iant@google.com >
Reviewed-by: Russ Cox <rsc@golang.org >
Auto-Submit: Russ Cox <rsc@golang.org >
Reviewed-by: Ian Lance Taylor <iant@google.com >
2024-05-20 16:01:35 +00:00
Mauri de Souza Meneguzzo
192d65e46b
sync/atomic: public And/Or ops and race instrumentation
...
This CL implements the new sync/atomic AND and OR apis as well as their race
counterparts.
Fixes #61395
Change-Id: I294eefe4b3ac27bc4ed237edcbfa88a8c646d86f
GitHub-Last-Rev: f174297007
GitHub-Pull-Request: golang/go#64331
Reviewed-on: https://go-review.googlesource.com/c/go/+/544455
Reviewed-by: Keith Randall <khr@golang.org >
Reviewed-by: Austin Clements <austin@google.com >
Auto-Submit: Austin Clements <austin@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Keith Randall <khr@google.com >
2024-05-17 18:37:29 +00:00
Chen.Zhidong
a523152ea1
net/http: add Pattern field in Request to return matched pattern info
...
Fixes #66405
Change-Id: Icd80944b6ca081aa7addd4fb85d2b3c29b6c9542
GitHub-Last-Rev: c6e32742c4
GitHub-Pull-Request: golang/go#66618
Reviewed-on: https://go-review.googlesource.com/c/go/+/574997
Reviewed-by: Damien Neil <dneil@google.com >
Reviewed-by: Jonathan Amsterdam <jba@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-16 18:42:34 +00:00
Alan Donovan
a22cb5cabe
runtime/debug: eliminate temporary variadicity from SetCrashOutput
...
Updates #67182
Change-Id: I33fc8c515f4a9d120262ba30f61aea80ede5e9f8
Reviewed-on: https://go-review.googlesource.com/c/go/+/585420
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Austin Clements <austin@google.com >
2024-05-16 15:19:04 +00:00
Mateusz Poliwczak
722d59436b
crypto/x509: add text and binary marshal methods to OID
...
Fixes #66249
Change-Id: I5973a19a087a35ad951e8a220d3e6e4456c7577f
GitHub-Last-Rev: 921ca8bd0c
GitHub-Pull-Request: golang/go#66599
Reviewed-on: https://go-review.googlesource.com/c/go/+/575295
Reviewed-by: Rob Pike <r@golang.org >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Roland Shoemaker <roland@golang.org >
Auto-Submit: Roland Shoemaker <roland@golang.org >
2024-05-16 02:00:26 +00:00
Alan Donovan
7730e5b783
go/ast: add Preorder go1.23 iterator
...
This CL adds a new function Preorder that makes it
easier to iterate over the nodes of a syntax tree.
In particular, break, continue, and return retain
their usual continuations.
Fixes #66339
Change-Id: I438b3c23780c91ed589871ad3b8822d54e8fabc7
Reviewed-on: https://go-review.googlesource.com/c/go/+/570680
Reviewed-by: Robert Findley <rfindley@google.com >
Auto-Submit: Alan Donovan <adonovan@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-15 21:44:50 +00:00
Robert Griesemer
bf279b71e2
go/types, types2: add Alias.{TypeParams, SetTypeParams, TypeArgs, Origin}
...
Fixes #67143 .
Change-Id: I8bf9c2559f95d3d6a40874454208ae074b68875c
Reviewed-on: https://go-review.googlesource.com/c/go/+/583757
Reviewed-by: Alan Donovan <adonovan@google.com >
Reviewed-by: Robert Findley <rfindley@google.com >
Auto-Submit: Robert Griesemer <gri@google.com >
Reviewed-by: Robert Griesemer <gri@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-15 21:32:30 +00:00
Alan Donovan
3f7a030e02
runtime/debug: add SetCrashOutput(...CrashOptions) parameter
...
This is a placeholder for future options (e.g. JSON).
The parameter is temporarily variadic to avoid breaking
x/telemetry (see CL 585378), but I plan to remove
the "..." later this week.
Updates #67182
Change-Id: I3f6f39455d852f92902f8e3f007d3093cbe555db
Reviewed-on: https://go-review.googlesource.com/c/go/+/585557
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Austin Clements <austin@google.com >
2024-05-15 21:04:14 +00:00
Matt Layher
f6c3a3e3c8
slices: add Chunk
...
Chunk returns an iterator over consecutive sub-slices of up to n elements of s.
Fixes #53987 .
Change-Id: I508274eca388db39550eb9e4d8abd5ce68d29d8d
Reviewed-on: https://go-review.googlesource.com/c/go/+/562935
Reviewed-by: Cherry Mui <cherryyz@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
2024-05-10 17:28:50 +00:00
Ian Lance Taylor
0b5f72251b
slices: add iterator-related functions
...
Fixes #61899
Change-Id: Icbde1ac8293723eefc3251008ae9711e756ed1b3
Reviewed-on: https://go-review.googlesource.com/c/go/+/568477
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Alan Donovan <adonovan@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-05-09 19:20:55 +00:00
qiulaidongfeng
524a774634
reflect: add iterative related methods
...
Fixes #66056
Change-Id: I1e24636e43e68cd57576c39b014e0826fb6c322c
GitHub-Last-Rev: 319ad8ea7c
GitHub-Pull-Request: golang/go#66824
Reviewed-on: https://go-review.googlesource.com/c/go/+/578815
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-05-09 11:54:18 +00:00
Russ Cox
9c4849bf20
math/rand/v2: add Uint
...
Uint was part of the approved proposal but was inadvertently left
out of Go 1.22. Add for Go 1.23.
Change-Id: Ifaf24447bd70c8524c2fd299eefdf4aa29e49e66
Reviewed-on: https://go-review.googlesource.com/c/go/+/583455
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Robert Griesemer <gri@google.com >
2024-05-07 18:03:11 +00:00
Russ Cox
5a181c5042
iter: expose fundamental types to Go 1.23
...
These were previously only available with GOEXPERIMENT=rangefunc.
For #61897 .
Change-Id: I86aea5ae8be1f7a2975b623325811221ed40d384
Reviewed-on: https://go-review.googlesource.com/c/go/+/557836
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Alan Donovan <adonovan@google.com >
2024-05-06 20:33:25 +00:00
Alan Donovan
9b9de261bd
go/types: add Alias.Rhs
...
This method returns the type on the right-hand side of an
alias declaration such as type L = R.
Fixes #66559
Change-Id: I396f2d999680ad251f47cdde20856ae20fc1c40a
Reviewed-on: https://go-review.googlesource.com/c/go/+/581615
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Alan Donovan <adonovan@google.com >
Reviewed-by: Robert Griesemer <gri@google.com >
2024-04-24 21:50:16 +00:00
Michael Anthony Knyszek
a088e230d4
unique: add unique package and implement Make/Handle
...
This change adds the unique package for canonicalizing values, as
described by the proposal in #62483 .
Fixes #62483 .
Change-Id: I1dc3d34ec12351cb4dc3838a8ea29a5368d59e99
Reviewed-on: https://go-review.googlesource.com/c/go/+/574355
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ingo Oeser <nightlyone@googlemail.com >
Reviewed-by: David Chase <drchase@google.com >
2024-04-22 18:14:07 +00:00
Nuno Gonçalves
a63907808d
net/http: add field Cookie.Quoted bool
...
The current implementation of the http package strips double quotes
from the cookie-value during parsing, resulting in the serialized
cookie not including them. This patch addresses this limitation by
introducing a new field to track whether the original value was
enclosed in quotes.
Additionally, the internal representation of a cookie in the cookiejar
package has been adjusted to align with the new representation.
The syntax of cookies is outlined in RFC 6265 Section 4.1.1:
https://datatracker.ietf.org/doc/html/rfc6265\#section-4.1.1
Fixes #46443
Change-Id: Iac12a56397d77a6060a75757ab0daeacc60457f3
GitHub-Last-Rev: a76440e741
GitHub-Pull-Request: golang/go#66752
Reviewed-on: https://go-review.googlesource.com/c/go/+/577755
Reviewed-by: Damien Neil <dneil@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-04-19 00:32:19 +00:00
Alan Donovan
01064622a2
go/types: add Func.Signature method
...
Unfortunately we can't enforce the repr invariant
that Func.typ != nil without thinking about the
object color invariants. For now, return a trivial
Signature if typ == nil, which should never happen
in bug-free client code.
Fixes golang/go#65772
Change-Id: I7f89c6d8fdc8dcd4b8880572e54bb0ed9b6136eb
Reviewed-on: https://go-review.googlesource.com/c/go/+/565375
Commit-Queue: Robert Griesemer <gri@google.com >
Reviewed-by: Robert Findley <rfindley@google.com >
Reviewed-by: Robert Griesemer <gri@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-04-18 22:17:27 +00:00
Jes Cok
076166ab4e
net/http: add ParseCookie, ParseSetCookie
...
Fixes #66008
Change-Id: I64acb7da47a03bdef955f394682004906245a18b
Reviewed-on: https://go-review.googlesource.com/c/go/+/578275
Reviewed-by: Damien Neil <dneil@google.com >
Auto-Submit: Cherry Mui <cherryyz@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-04-17 17:43:50 +00:00
Ian Lance Taylor
315b6ae682
debug/elf: define non-standard but well-known symbol types
...
Fixes #66836
Change-Id: I603faca2acd2bcffabbcaca8b8670d46387d2a5b
Reviewed-on: https://go-review.googlesource.com/c/go/+/578995
Commit-Queue: Ian Lance Taylor <iant@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Auto-Submit: Ian Lance Taylor <iant@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-04-16 00:01:16 +00:00
Mateusz Poliwczak
71d84ee7b4
net: add Unwrap to *DNSError
...
Fixes #63116
Change-Id: Iab8c415555ab85097be6d2d133b3349c5219a23b
GitHub-Last-Rev: 8a8177b9af
GitHub-Pull-Request: golang/go#63348
Reviewed-on: https://go-review.googlesource.com/c/go/+/532217
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Damien Neil <dneil@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Commit-Queue: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-04-14 18:23:45 +00:00
Cuong Manh Le
d08a957298
all: add reflect.SliceAt function
...
Fixes #61308
Change-Id: Ic17d737fda055a60779985d5da497745c80d5cfa
Reviewed-on: https://go-review.googlesource.com/c/go/+/516597
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Cuong Manh Le <cuong.manhle.vn@gmail.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Than McIntosh <thanm@google.com >
2024-04-02 21:51:18 +00:00
Ian Lance Taylor
27f41bb153
Revert "testing: add TB.SetGOMAXPROCS function"
...
This reverts CL 519235.
Reason for revert: Proposal is still in incoming.
For #62020
Change-Id: Icccb930209f36097f5d930c01eda6b5042bdddc1
Reviewed-on: https://go-review.googlesource.com/c/go/+/573516
Reviewed-by: Than McIntosh <thanm@google.com >
Auto-Submit: Ian Lance Taylor <iant@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
2024-03-22 13:07:36 +00:00
sivchari
5d29578fd5
testing: add TB.SetGOMAXPROCS function
...
Add a new method TB.SetGOMAXPROCS which sets variable of GOMAXPROCS.
This method aims to set a variable for the isolated lifetime of the test and cleans up.
And unset this when the test ends.
This method disables the test or benchmark from running in
parallel.
Fixes : #62020
Change-Id: Iae44109d0def35cc47049c3ca4cd5306173d52ee
Signed-off-by: sivchari <shibuuuu5@gmail.com >
Reviewed-on: https://go-review.googlesource.com/c/go/+/519235
Reviewed-by: Bryan Mills <bcmills@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-03-21 20:26:36 +00:00
Timo Furrer
6dca707656
net/http: add Request.CookiesNamed
...
Implements a new method http.Request.CookiesName, that allows
retrieving all cookies that match the given name.
Fixes #61472
Change-Id: I405d8771b4195af9ff6b4dfde3cfcd316c23b70c
GitHub-Last-Rev: 6ad0094995
GitHub-Pull-Request: golang/go#61473
Reviewed-on: https://go-review.googlesource.com/c/go/+/511516
Reviewed-by: Emmanuel Odeke <emmanuel@orijtech.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Carlos Amedee <carlos@golang.org >
Reviewed-by: Damien Neil <dneil@google.com >
2024-03-20 16:17:16 +00:00
Jes Cok
f94d82b2c0
slices: add func Repeat
...
Fixes #65238
Change-Id: I32ae4d922788cc6fbbe80f5b558a075951e3c892
Reviewed-on: https://go-review.googlesource.com/c/go/+/571895
Reviewed-by: David Chase <drchase@google.com >
Reviewed-by: Keith Randall <khr@google.com >
Reviewed-by: Keith Randall <khr@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-03-19 21:38:37 +00:00
qiulaidongfeng
d838e4dcdf
archive/tar: add FileInfoNames interface
...
An optional interface FileInfoNames has been added.
If the parameter fi of FileInfoHeader implements the interface
the Gname/Uname of the return value Header
are provided by the method of the interface.
Also added testing.
Fixes #50102
Change-Id: I47976e238eb20ed43113b060e4f83a14ae49493e
GitHub-Last-Rev: a213613c79
GitHub-Pull-Request: golang/go#65273
Reviewed-on: https://go-review.googlesource.com/c/go/+/558355
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-03-15 16:01:50 +00:00
Kevin Burke
3a41bfac9b
net/http/httptest: add NewRequestWithContext
...
This matches the net/http API.
Updates #59473 .
Change-Id: I99917cef3ed42a0b4a2b39230b492be00da8bbfd
Reviewed-on: https://go-review.googlesource.com/c/go/+/548355
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Damien Neil <dneil@google.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
2024-03-11 18:09:14 +00:00
Joel Sing
1e433915ce
cmd/link,debug/elf: mark Go binaries with no branch target CFI on openbsd
...
OpenBSD enables Indirect Branch Tracking (IBT) on amd64 and Branch Target
Identification (BTI) on arm64, where hardware permits. Since Go generated
binaries do not currently support IBT or BTI, temporarily mark them with
PT_OPENBSD_NOBTCFI which prevents branch target CFI from being enforced
on execution. This should be removed as soon asn IBT and BTI support are
available.
Fixes #66040
Updates #66054
Change-Id: I91ac05736e6942c54502bef4b8815eb8740d2d5e
Reviewed-on: https://go-review.googlesource.com/c/go/+/568435
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
TryBot-Result: Gopher Robot <gobot@golang.org >
Reviewed-by: Josh Rickmar <jrick@zettaport.com >
Reviewed-by: Keith Randall <khr@golang.org >
Run-TryBot: Joel Sing <joel@sing.id.au >
Reviewed-by: Keith Randall <khr@google.com >
Reviewed-by: Than McIntosh <thanm@google.com >
2024-03-10 04:13:26 +00:00
Jes Cok
ef4f2a0597
unicode/utf16: add func RuneLen
...
This CL adds func RuneLen, while here, also uses RuneLen to simplify
code in Encode.
Fixes #44940
Change-Id: Ifd3b537f69880dfd32a69a6733d8d3c2b5d4ecba
Reviewed-on: https://go-review.googlesource.com/c/go/+/569755
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Michael Knyszek <mknyszek@google.com >
Commit-Queue: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Ian Lance Taylor <iant@google.com >
2024-03-07 19:08:48 +00:00
Jes Cok
33013e8ea8
reflect: add Overflow methods to Type
...
This CL adds new methods synonymous with the method of the same name
in reflect.Value to reflect.Type: OverflowComplex, OverflowFloat, OverflowInt, OverflowUint.
Fixes #60427
Change-Id: I7a0bb35629e59a7429820f13fcd3a6f120194bc6
GitHub-Last-Rev: 26c11bcffe
GitHub-Pull-Request: golang/go#65955
Reviewed-on: https://go-review.googlesource.com/c/go/+/567296
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-02-28 14:08:38 +00:00
Damien Neil
e596e88318
path/filepath: add Localize
...
Add the Localize function, which takes an io/fs slash-separated path
and returns an operating system path.
Localize returns an error if the path cannot be represented on
the current platform.
Replace internal/safefile.FromFS with Localize,
which serves the same purpose as this function.
The internal/safefile package remains separate from path/filepath
to avoid a dependency cycle with the os package.
Fixes #57151
Change-Id: I75c88047ddea17808276761da07bf79172c4f6fc
Reviewed-on: https://go-review.googlesource.com/c/go/+/531677
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
2024-02-26 18:08:14 +00:00
Andy Pan
d9be60974b
os: implement CopyFS
...
Fixes #62484
Change-Id: I5d8950dedf86af48f42a641940b34e62aa2cddcb
Reviewed-on: https://go-review.googlesource.com/c/go/+/558995
Auto-Submit: Ian Lance Taylor <iant@google.com >
Reviewed-by: Ian Lance Taylor <iant@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-02-23 00:19:54 +00:00
Andy Pan
d42cd452dc
net: add KeepAliveConfig and implement SetKeepAliveConfig
...
Fixes #62254
Fixes #48622
Change-Id: Ida598e7fa914c8737fdbc1c813bcd68adb5119c3
Reviewed-on: https://go-review.googlesource.com/c/go/+/542275
Reviewed-by: Michael Knyszek <mknyszek@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
TryBot-Result: Gopher Robot <gobot@golang.org >
Reviewed-by: Damien Neil <dneil@google.com >
Run-TryBot: Andy Pan <panjf2000@gmail.com >
Auto-Submit: Ian Lance Taylor <iant@golang.org >
2024-02-20 06:04:31 +00:00
Hiro
5b6cd3d0cb
sync: add Map.Clear
...
Fixes #61696
Change-Id: I0a31afd3bc433fc84280d56f2798bda10da61eba
GitHub-Last-Rev: 17bedc864f
GitHub-Pull-Request: golang/go#61702
Reviewed-on: https://go-review.googlesource.com/c/go/+/515015
Auto-Submit: Bryan Mills <bcmills@google.com >
Reviewed-by: Cherry Mui <cherryyz@google.com >
Reviewed-by: qiulaidongfeng <2645477756@qq.com >
Reviewed-by: Bryan Mills <bcmills@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2024-02-01 15:34:22 +00:00
Jonathan Amsterdam
600225f83f
api/README: refer to doc/README.md
...
For #64169 .
Change-Id: I0fc6d6a041ad48957f4aecd18b85c9098fc9b403
Reviewed-on: https://go-review.googlesource.com/c/go/+/559755
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
2024-01-31 19:22:50 +00:00
Alan Donovan
1bb947b2eb
runtime/debug: SetCrashOutput sets the FD for fatal panics
...
This feature makes it possible to record unhandled panics
in any goroutine through a watchdog process (e.g. the same
application forked+exec'd as a child in a special mode)
that can process the panic report, for example by sending
it to a crash-reporting system such as Go telemetry
or Sentry.
Fixes #42888
Change-Id: I5aa7be8f726bbc70fc650540bd1a14ab60c62ecb
Reviewed-on: https://go-review.googlesource.com/c/go/+/547978
Reviewed-by: Michael Pratt <mpratt@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Auto-Submit: Alan Donovan <adonovan@google.com >
Reviewed-by: Russ Cox <rsc@golang.org >
2024-01-31 16:50:42 +00:00
Cherry Mui
5000b51680
Revert "archive/tar: add FileInfoNames interface"
...
This reverts CL 514235. Also reverts CL 518056 which is a followup
fix.
Reason for revert: Proposal #50102 defined an interface that is
too specific to UNIX-y systems and also didn't make much sense.
The proposal is un-accepted, and we'll revisit in Go 1.23.
Fixes (via backport) #65245 .
Updates #50102 .
Change-Id: I41ba0ee286c1d893e6564a337e5d76418d19435d
Reviewed-on: https://go-review.googlesource.com/c/go/+/558295
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com >
2024-01-24 20:54:27 +00:00
Russ Cox
d73b4322ed
net/netip: remove Prefix.Compare for Go 1.22
...
API questions remain, so we decided to back it out for Go 1.22.
Code still lives in the repo, just unexported.
For #61642 .
Change-Id: Iccd91b0da48ae72dec9f660476826a220c7ca4be
Reviewed-on: https://go-review.googlesource.com/c/go/+/549615
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: David Anderson <dave@natulte.net >
Auto-Submit: Russ Cox <rsc@golang.org >
Reviewed-by: Damien Neil <dneil@google.com >
2023-12-14 22:24:40 +00:00
Alan Donovan
ed30ee6c56
doc/go1.22: document ast.Object deprecation
...
The api.txt changes were originally recorded by mistake (sorry)
into go1.21.txt; see CL 504915, which made the actual change
in August.
Change-Id: If46b48d9714f01605888a6e975c1a03ccfce3b3e
Reviewed-on: https://go-review.googlesource.com/c/go/+/547637
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
Reviewed-by: Robert Griesemer <gri@google.com >
Auto-Submit: Alan Donovan <adonovan@google.com >
Commit-Queue: Alan Donovan <adonovan@google.com >
2023-12-05 21:18:08 +00:00
Russ Cox
d92434935f
math/rand/v2: add ChaCha8
...
This is a replay of CL 516859, after its rollback in CL 543895,
with big-endian systems fixed and the tests disabled on RISC-V
since the compiler is broken there (#64285 ).
ChaCha8 provides a cryptographically strong generator
alongside PCG, so that people who want stronger randomness
have access to that. On systems with 128-bit vector math
assembly (amd64 and arm64), ChaCha8 runs at about the same
speed as PCG (25% slower on amd64, 2% faster on arm64).
Fixes #64284 .
Change-Id: I6290bb8ace28e1aff9a61f805dbe380ccdf25b94
Reviewed-on: https://go-review.googlesource.com/c/go/+/546020
Reviewed-by: Filippo Valsorda <filippo@golang.org >
Reviewed-by: Cherry Mui <cherryyz@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2023-12-05 20:32:54 +00:00
Michael Anthony Knyszek
186c473424
api: promote next to go1.22
...
Change-Id: Ib9d1eabfe6199575ea57183ccb21f62c40e11d84
Reviewed-on: https://go-review.googlesource.com/c/go/+/544555
Reviewed-by: Heschi Kreinick <heschi@google.com >
Auto-Submit: Michael Knyszek <mknyszek@google.com >
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com >
2023-11-22 18:54:32 +00:00