Skip to content

Commit 4827ea8

Browse files
committed
_content/doc/go1.24: add testing/synctest to release notes
Fixes golang/go#69687 Change-Id: If43733e060d3593adb99f5578900946e7885a41c Reviewed-on: https://go-review.googlesource.com/c/website/+/635055 Reviewed-by: Ian Lance Taylor <[email protected]> Reviewed-by: Cherry Mui <[email protected]> LUCI-TryBot-Result: Go LUCI <[email protected]> Reviewed-by: Carlos Amedee <[email protected]>
1 parent df9a971 commit 4827ea8

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

_content/doc/go1.24.md

+17-1
Original file line numberDiff line numberDiff line change
@@ -244,6 +244,23 @@ For supporting these use-cases, this release also provides
244244
[`runtime.AddCleanup`](/pkg/runtime/#AddCleanup) and
245245
[`maphash.Comparable`](/pkg/maphash/#Comparable).
246246

247+
### New experimental testing/synctest package {#testing-synctest}
248+
249+
The new experimental [`testing/synctest`](/pkg/testing/synctest/) package
250+
provides support for testing concurrent code.
251+
- The [`synctest.Run`](/pkg/testing/synctest/#Run) function starts a
252+
group of goroutines in an isolated "bubble".
253+
Within the bubble, [`time`](/pkg/time) package functions operate on a
254+
fake clock.
255+
- The [`synctest.Wait`](/pkg/testing/synctest#Wait) function waits for
256+
all goroutines in the current bubble to block.
257+
258+
See the package documentation for more details.
259+
260+
The `synctest` package is experimental and must be enabled by
261+
setting `GOEXPERIMENT=synctest` at build time.
262+
The package API is subject to change in future releases.
263+
247264
### Minor changes to the library {#minor_library_changes}
248265

249266
#### [`archive`](/pkg/archive/)
@@ -683,7 +700,6 @@ accepted proposal https://go.dev/issue/66821 (from https://go.dev/cl/602495, htt
683700
accepted proposal https://go.dev/issue/64802 (from https://go.dev/cl/628681) - a crypto/ecdsa change when rand is nil; commented at https://go.dev/issue/64802#issuecomment-2502019212 for next steps
684701
accepted proposal https://go.dev/issue/25309 (from https://go.dev/cl/594018, https://go.dev/cl/595120, https://go.dev/cl/595564, https://go.dev/cl/601778) - new x/crypto package; doesn't seem to need to be mentioned but asked anyway in https://go.dev/issue/25309#issuecomment-2498747653
685702
accepted proposal https://go.dev/issue/43744 (from https://go.dev/cl/357530) - unclear if Go 1.24 release notes need anything; pinged it in https://go.dev/issue/43744#issuecomment-2498773718
686-
accepted proposal https://go.dev/issue/69687 (from https://go.dev/cl/591997, https://go.dev/cl/629735) - experimental package testing/synctest behind an experiment; commented at https://github.com/golang/go/issues/69687#issuecomment-2502179333, leaving to Damien to decide whether to document it or defer that until the package is added as non-experiment
687703
accepted proposal https://go.dev/issue/51269 (from https://go.dev/cl/627035) - may be worth mentioning in Go 1.24 release notes, or may be fine to leave out; commented at https://go.dev/issue/51269#issuecomment-2501802763
688704
accepted proposal https://go.dev/issue/60905 (from https://go.dev/cl/610195) - CL 610195 seems like a small performance enhancement that builds on the Go 1.23 proposal to add GOARM64; probably okay without being mentioned in Go 1.24 release notes (also probably okay to mention)
689705
accepted proposal https://go.dev/issue/61395 (from https://go.dev/cl/594738, https://go.dev/cl/594976) - CL 594738 made sync/atomic AND/OR operations intrinsic on amd64, but the API was already added in Go 1.23; CL 594976 is a fix; probably doesn't require a Go 1.24 release note

0 commit comments

Comments
 (0)