This is probably our fastest time in-between full releases, especially given all of the excellent work that has made it in. A few highlights are updated compatibility with the latest WASI work from the Bytecode Alliance, faster speed and PIO support for the RP2350, and a new garbage collector option for Linux. Plus a bunch of critical fixes to make your life better!
- general
- add the Boehm-Demers-Weiser GC on Linux
- ci
- add more tests for wasm and baremetal
- compiler
- crypto/internal/sysrand is allowed to use unsafe signatures
- examples
- add goroutine benchmark to examples
- fixes
- internal
- update to [email protected] in GNUmakefile and internal/wasm-tools
- exclude certain files when copying package in internal/cm
- update to go.bytecodealliance.org/[email protected] in internal/cm
- remove old reflect.go in internal/reflectlite
- loader
- use build tags for package iter and iter methods on reflect.Value in loader, iter, reflect
- add shim for go1.22 and earlier in loader, iter
- machine
- os
- add stub Symlink for wasm
- refactor
- use *SPI everywhere to make consistent for implementations. Fixes #4663 "in reverse" by making SPI a pointer everywhere, as discussed in the comments.
- reflect
- add Value.SetIter{Key,Value} and MapIter.Reset in reflect, internal/reflectlite
- embed reflectlite types into reflect types in reflect, internal/reflectlite
- add Go 1.24 iter.Seq[2] methods
- copy reflect iter tests from upstream Go
- panic on Type.CanSeq[2] instead of returning false
- remove strconv.go
- remove unused go:linkname functions
- riscv-qemu
- add VirtIO RNG device
- increase stack size
- runtime
- only allocate heap memory when needed
- remove unused file func.go
- use package reflectlite
- transform
- cherry-pick from #4774