### TODO **Please turn these into proper release notes** cmd/link/internal/ld: introduce -funcalign=N option This patch adds linker option -funcalign=N that allows to set alignment for function entries. For \#72130. cmd/fix: automate migrations for simple deprecations cmd/go: allow serving module under the subdirectory of git repository cmd/go: add subdirectory support to go-import meta tag This CL adds ability to specify a subdirectory in the go-import meta tag. A go-import meta tag now will support: \ Fixes: \#34055 cmd/go: add global ignore mechanism for Go tooling ecosystem cmd/cover: extend coverage testing to include applications all: add GOARM64=v8.1 and so on runtime: check LSE support on ARM64 at runtime init Check presence of LSE support on ARM64 chip if we targeted it at compile time. Related to \#69124 Updates \#60905 Fixes \#71411 all: add GORISCV64 environment variable cmd/go: add rva23u64 as a valid value for GORISCV64 The RVA23 profile was ratified on the 21st of October 2024. https://riscv.org/announcements/2024/10/risc-v-announces-ratification-of-the-rva23-profile-standard/ Now that it's ratified we can add rva23u64 as a valid value for the GORISCV64 environment variable. This will allow the compiler and assembler to generate instructions made mandatory by the new profile without a runtime check. Examples of such instructions include those introduced by the Vector and Zicond extensions. Setting GORISCV64=rva23u64 defines the riscv64.rva20u64, riscv64.rva22u64 and riscv64.rva23u64 build tags, sets the internal variable buildcfg.GORISCV64 to 23 and defines the macros GORISCV64_rva23u64, hasV, hasZba, hasZbb, hasZbs, hasZfa, and hasZicond for use in assembly language code. Updates \#61476 math/rand/v2: revised API for math/rand rand: deprecate in favor of math/rand/v2 For golang/go#61716 Fixes golang/go#71373 cmd/go: enable GOCACHEPROG by default cmd/go/internal/cacheprog: drop Request.ObjectID ObjectID was a misnaming of OutputID from cacheprog's initial implementation. It was maintained for compatibility with existing cacheprog users in 1.24 but can be removed in 1.25. cmd/go: doc -http should start a pkgsite instance and open a browser cmd/go: -json flag for go version -m cmd/go: support -json flag in go version It supports features described in the issue: - add -json flag for 'go version -m' to print json encoding of runtime/debug.BuildSetting to standard output. - report an error when specifying -json flag without -m. - print build settings on seperated line for each binary Fixes \#69712 crypto: mechanism to enable FIPS mode spec: remove notion of core types cmd/go: add fips140 module selection mechanism lib/fips140: set inprocess.txt to v1.0.0 testing: panic in AllocsPerRun during parallel test testing: panic in AllocsPerRun if parallel tests are running If other tests are running, AllocsPerRun's result will be inherently flaky. Saw this with CL 630136 and \#70327. Proposed in \#70464. Fixes \#70464. encoding/json/v2: add new JSON API behind a GOEXPERIMENT=jsonv2 guard cmd/go, cmd/distpack: build and run tools that are not necessary for builds as needed and don't include in binary distribution