x/net/http2: connection-level flow control not returned if stream errors, causes server hang [1.14 backport]

⤷ [release-branch.go1.14] flush test summaries to stdout atomically when streaming output

runtime: race between stack shrinking and channel send/recv leads to bad sudog values [1.14 backport]

runtime: pcdata is -2 and 12 locals stack map entries error on nil pointer [1.14 backport]

x/net/http2: connection-level flow control not returned if stream errors, causes server hang [1.15 backport]

⤷ [release-branch.go1.15] flush test summaries to stdout atomically when streaming output

runtime: race between stack shrinking and channel send/recv leads to bad sudog values [1.15 backport]

runtime: pcdata is -2 and 12 locals stack map entries error on nil pointer [1.15 backport]

cmd/go: breakage with go version command and GOFLAGS environment variable [1.15 backport]

cmd/cgo: jmethodID/jfieldID is not mapped to uintptr if building with the Android NDK [1.15 backport]

⤷ [release-branch.go1.15] don't assume that GOROOT_FINAL is clean

cmd/addr2line: TestAddr2Line fails with double / in $GOROOT_FINAL [1.15 backport]

x/build/cmd/release: installers should add GOBIN to PATH

x/build/cmd/release: evaluate builders used for upcoming major Go release

x/build: upgrade VMware ESXi in order to enable macOS 11.0 VMs

unsafe: Sizeof documentation should be more explicit

testing: add -shuffle and -shuffleseed to shuffle tests

⤷ send t.signal only if there is no panic

testing: tests that panic sometimes log "warning: no tests to run" instead

spec: review/clarify uses of "slice of bytes"

⤷ new package with constants for Int, Uint, Uintptr, Int8, etc.

sizeof: new package with constants for Int, Uint, Uintptr, Int8, Float64, etc

runtime/race: inconsistent snapshot of vector clocks during finalizer sync leads to false positive

runtime/pprof: panic in appendLocsForStack on fuchsia-arm64

runtime: sysUsed often called on non-scavenged memory

⤷ prefer to wake an idle P when enlisting bg mark workers

runtime: frequent enlisting of short-lived background workers leads to performance regression with async preemption

⤷ use CreateWaitableTimerEx to implement usleep

runtime: usleep does not check for early wakeup

runtime: use clock_gettime instead of gettimeofday on Darwin

⤷ add support for running programs on the iOS simulator

runtime: tracking bug for ARM-based macOS and GOOS/GOARCH values

runtime: should checkptrArithmetic accept a uintptr instead of unsafe.Pointer?

runtime: sema: many many goroutines queueing up on many many distinct addresses -> slow

runtime: select: fatal error: index out of range

runtime: process crash instead of panic on SIGBUS with SetPanicOnDefault(true)

runtime: musl uses signal 34 for setgid

runtime: move tests for runtime-gdb.py to misc/ and do not run them during all.bash

runtime: hang in StopTrace in runtime.test

⤷ adjust frame pointer on stack copy on ARM64

runtime: deprecate SetCPUProfileRate and replace body with panic

⤷ always set up TLS storage for darwin/arm64

runtime: always set up TLS on all G-register architectures?

runtime: SIGSEGV during runtime init, in gcenable

runtime: ReadMemStats called in a loop may prevent GC

runtime: Go 1.14/Windows asynchronous preemption mechanism likely incompatible with debugging

runtime: 10ms-26ms latency from GC in go1.14rc1, possibly due to 'GC (idle)' work

runtime: race between stack shrinking and channel send/recv leads to bad sudog values

⤷ align 12-byte objects to 8 bytes on 32-bit systems

runtime: can't atomic access of first word of tiny-allocated struct on 32-bit architecture

runtime: "failed to fetch any source profiles" in TestTimePprof

proposal: switch to a register-based calling convention for Go functions

⤷ retune the settleTime again

os/exec: (*SysProcAttr).Foreground causes the spawned process to hang

os/exec: "broken pipe" on testlog.txt while running test

os: fatal error: "attempt to execute system stack code on user stack" during TestProgWideChdir

⤷ make Chtimes accept zero time values to mean skipping file modification

os: allow Chtimes with time.Time{} to avoid setting time

⤷ move TestStatSymlinkLoop out of the Windows-only test file

os: Symlink on Windows with a to-be-created directory path silently creates a link of the wrong type

os: RemoveAll hangs on a path longer than 260 characters on Windows

os: Remove/RemoveAll should remove read-only folders on Windows

⤷ support O_SYNC flag for os.OpenFile on windows

os: O_SYNC not utilized in os.OpenFile() on Windows

⤷ avoid ParseDate confusion if day name include "T"

net/mail: ParseDate incorrectly prunes out RFC 5322 date with a capital "T" when dealing with an obsolete timezone

net/http: h2_bundle.go (and socks_bundle.go) can get out of sync with src/go.mod's x/net version

⤷ test that ParseMultipartForm returns an error for int overflow

mime/multipart, net/http: Request.ParseMultipartForm silently fails if you pass math.MaxInt64 which stems from multipart.Reader.readFrom not checking for overflows

net: should expand IP address 1.1 to 1.0.0.1

⤷ prefer /etc/hosts over DNS when no /etc/nsswitch.conf is present

net: prefer /etc/hosts over DNS when no /etc/nsswitch.conf is present

⤷ reflect TCP backlog size update of uint16->uint32 on Linux

net: TCP backlog size truncated to max(uint16)-1 instead of uint32 yet was increased to uint32 in Linux kernel 4.1 from 2015

⤷ test that ParseMultipartForm returns an error for int overflow

mime/multipart, net/http: Request.ParseMultipartForm silently fails if you pass math.MaxInt64 which stems from multipart.Reader.readFrom not checking for overflows

⤷ type-check _cgo_gotypes.go as its own Package

go/ast: unexpected associations for comments in empty function/loop bodies

⤷ opt-in fix reserved namespace check to be case-insensitive

encoding/xml: createAttrPrefix should ban "XMLanything" case insensitive, not just "xmlanything"

encoding/json: unmarshal into slice reuses element data between len and cap

⤷ allow semicolon in field key / struct tag

encoding/json: does not recognise semicolon as a valid field name

encoding/json: allow per-Encoder/per-Decoder registration of marshal/unmarshal functions

⤷ support fractions of a second when unmarshaling GeneralizedTime

⤷ check the private key passed to CreateCertificate

crypto/x509: check that private key matches the issuer

⤷ return errors instead of panicking

crypto/x509: CreateCertificate should return a meaningful error instead of panic when passed an unknown ExtKeyUsage

⤷ avoid cache-based side channels in extracting the remote MAC

crypto/hmac: detect reuse of hash.Hash value

cmd/objdump: TestDisasmCode fails with "no runtime.symtab symbol found" on AIX

cmd/link: using lld linker fails on Windows

cmd/link: signal SIGBUS: bus error during linking with sufficient disk space

cmd/link: sectionForAddress(0xA9D67F) address not in any section file

cmd/link: internal linker fails to build openshift/installer with "program too large, call relocation distance" and segfaults on linux/arm64

cmd/go: wildcard should consistently match package with invalid build tags

cmd/go: test failure on mod_sumdb_file_path on module retraction CLs

⤷ error when -c or -i are used with unknown flags

cmd/go: test -c should error on unknown flags

cmd/go: suppress errors for 'go get' of package paths whose source files are all excluded by build constraints

cmd/go: support overlays in the go command

cmd/go: spurious error message when external linking a pure Go program

cmd/go: several commands require the build cache but don't use it

cmd/go: revise 'go help' documentation for modules and module-aware commands

cmd/go: reject vN.*.*+incompatible as a version if vN/go.mod exists

cmd/go: misleading error message when a dependency's go.mod is a symbolic link

⤷ factor out an incremental implementation

cmd/go: in tests, populate go.sum files and reduce usage of -mod=mod

cmd/go: go list -m error is confusing when go.mod lacks module directive

cmd/go: go list -e does not assign missing import errors to correct package

cmd/go: go get module/pkg@master doesn't seem to work sometimes

cmd/go: go get -u fails in a module containing local only replace

⤷ include files with parse errors in GoFiles and other lists

cmd/go: expose InvalidGoFiles as part of `go list` API

cmd/go: do not treat branches with semantic-version names as releases

cmd/go: do not resolve missing imports in 'go mod why'

⤷ default GOBIN to GOPATH[0]/bin for packages outside GOPATH

cmd/go: default GOBIN to GOPATH[0]/bin when outside of GOPATH?

cmd/go: consider path to the C and C++ compiler executable when deciding when to recompile CGO packages

⤷ group 'go get' update messages together near the end of output

cmd/go: confusing output from go get

⤷ trim source paths in generated cgo and C source files

⤷ clarify error for 'go get' without arguments

cmd/go: bad error from "go get" (with no arguments)

⤷ use replacement, not replaced, module paths in binary

cmd/go: allow replacement modules to alias other active modules

⤷ add a '-e' flag to 'mod tidy' and 'mod vendor'

cmd/go: allow 'go mod tidy' to proceed despite errors

cmd/go: Setting an invalid path with "go env -w GOTMPDIR=x" prevents use of go tool

cmd/go: SWIG causes generated C++ sources in CompiledGoFiles

⤷ allow the CC path to contain spaces

cmd/go: CC variable misparsed when set to a path containing spaces

cmd/go: .netrc credentials are not forward to GOPROXY if they do not contain password

cmd/go: -coverpkg packages imported by all tests, even ones that otherwise do not use it

⤷ if building packages, only update go.mod if the build succeeds

cmd/go: 'go get -d' does not diagnose dependencies with errors

cmd/go: 'Access is denied' when renaming module cache directory

cmd/go: run constantly fails and suggests 'go mod tidy'

cmd/cover: inconsistent NumStmt when //line clauses are used with Go 1.13.4

⤷ use staticuint64s to optimize interface conversion of small integer constants (WIP)

⤷ check indirect connection between if block and phi block in addLocalInductiveFacts

cmd/compile: Investigate regression in vs 1.13

⤷ add rewrite rule to change callClosure(constant) to callStatic

cmd/compile: 1.15 heap allocations regression when calling Write on os.Stdout

cmd/compile: user symbols can be in reserved namespace

cmd/compile: sync.Mutex is not fair on ARMv8.1 systems

cmd/compile: set prologue_end on every arch

cmd/compile: possible latent codegen issue on amd64 removing zero extensions

cmd/compile: package-scope and function-scope types get the same name

cmd/compile: malformed DWARF ranges (child not contained in parent)

cmd/compile: inconsistent behaviors in judging whether or not two types are identical

cmd/compile: consider extending '-spectre' option to other architectures

cmd/compile: compiler regression due to deferred call to variadic unsafe-uintptr function

cmd/compile: compiler -L switch does not work

cmd/cgo: inject preamble before other include directives

cmd/cgo: does not correctly read DWARF data for unsigned types

build: announce end of support for old macOS releases

archive/tar: malformed input causes panic in parsePAXRecord

all: drop GO386=387 support in Go 1.16

⤷ update vendored dependencies during Go 1.16 development

all: update standard-library dependencies at the start and end of each development cycle

all: refresh CONTRIBUTORS file before release

all: golang.org/x repos need to stay green

retrieving external modules on Go1.15 on s390x appears to have checksum and ECDSA verification issues

runtime: remove VZEROUPPER patch once Darwin <10.15.6 is not supported

internal/goversion: increment Version at start of cycle

Pending CLs

CL 12277 HACK test that heapBitsSetType ends at the right byte

CL 51231 [release-branch.go1.8] XXX dummy test

CL 93517 add function for bool in math/rand

CL 156400 emit an error in 'go mod vendor' if any replacement is in the vendor directory

CL 160451 cmd/go/internal/modload/init:add more information for exec go mod init outside GOPATH

CL 174085 Add 'EmptyValue' interface, empty if element is struct and all fields within it is also empty.

CL 175457 GetConfigForClient replaces cert and key arguments

CL 187018 Fixes #31514 - implement partial flush for decompressor

CL 189417 sync/atomic define sync/atomic memory models

CL 195217 Add a simple, optional 'keep buffer' capability to the Encoder type

CL 207440 XXX dummy test

CL 213438 add a scope variable choose

CL 213758 solves #issues/36450

CL 217977 Prototype generating ABI0->ABIInternal and ABIInternal->ABI0 wrappers

CL 230942 net/http:Fix 308 jump and lose authorization header

CL 236678 Add option to Limit maximum number of go routines launched from serve()

CL 237117 Exchange with recommend linter

CL 237218 fix stderr to stdout

CL 239385 Update path.go

CL 240599 -- dividing line between changes for Go 1.16 and Go 1.(N-1) --

CL 240603 -- dividing line between changes for Go 1.(N-1) and Go 1.N --

CL 240610 -- dividing line between changes for Go 1.N and Go 1.(N+1) --

CL 243657 Limit non-file parts under 10MB

CL 244557 Add TryLock method to Mutex

CL 247841 Update auth.go

CL 249181 Fixes #40926 for HTTP response on write error.

CL 252757 Prototype generating ABI0->ABIInternal and ABIInternal->ABI0 wrappers

A+C

CL 235879 add Unai Corzo (individual CLA)

DO NOT REVIEW

CL 246338 crypto/tls: add HandshakeContext method to Conn

DO NOT SUBMIT

CL 241798 runtime: add worldsema debug dump to checkdead

CL 252938 runtime: add worldsema debug dump to checkdead

README.md

CL 254800 time to rename the project

Revert "Revert "misc/spectre

CL 223837 add spectre index test""

Revert "cmd/link

CL 203603 use libmsvcrt.a during internal link"

Revert "encoding/binary

CL 105259 use an offset instead of slicing"

Revert "runtime

CL 150778 debug code to catch bad gcWork.puts"

WIP

CL 195397 POC for error.ErrorDetail method

CL 248578 runtime: add semaphore locked checking

CL 250263 runtime: add channel lock assertions

CL 250264 runtime: add itab lock assertions

CL 254817 merge chansend1 + chanrecv1 into unified chansendrecv1

CL 254818 extra debug bits

XXX cmd/compile

CL 210941 disable escape analysis

all

CL 198061 cleanup repository root

CL 216424 allow conversion from slice to array ptr

CL 243907 update references to symbols moved from os to io/fs

CL 254740 add GOOS=ios

CL 255860 update vendored dependencies during Go 1.16 development

archive

CL 243038 document security expectations

archive/zip

CL 129115 example to registerDecompressor

CL 186178 fix zip64 extra headers problems

CL 187357 detect and reject Better Zip Bomb

CL 202217 support adding raw files

CL 243937 make Reader implement FS

CL 246240 Fix zip64 reader when file size < 4GB and zip64 field is present

big/int

CL 73231 simpler code and minor formatting cleanups for lehmerGCD

bufio

CL 160557 adds a comment about io.EOF in bufio.ReadLine()

bytes

CL 156139 speed up asciiSet.contains

CL 202077 make Title treat Unicode punctuation as separators

cgo

CL 133944 add support for MSVC flags

cmd

CL 81275 use FC for gofmt -d on Windows

CL 166937 handle floats for ODIV better

CL 231679 fail go mod vendor on case-insensitive import collisions

CL 241088 default to old object file format

cmd.compile

CL 234580 simulate constraints of escape analysis on SSA compiler scheduling

cmd/addr2line

CL 255658 [release-branch.go1.15] don't assume that GOROOT_FINAL is clean

cmd/api

CL 198137 simplify building files list in Walker.ImportFrom

cmd/asm

CL 144100 add support for -buildmode=c-shared for GOARCH=mips{,le}

CL 153358 enable SVE(Scalar Vector Extension) instructions for arm64

CL 172581 remove support for old assembly style AX:CX

CL 180757 Add SHA3 hardware instructions for ARM64

CL 240602 reject misplaced go:build comments

CL 250758 add TLBI instruction on arm64

CL 250858 add DC instruction on arm64

cmd/cgo

CL 63277 use type aliases for primitive types

CL 63711 translate “opaque” types as struct types with opaque fields

CL 63831 do not instantiate C.void

CL 83215 support variadic functions

CL 133939 add toolchain flag to cgo command for MSVC support

CL 133943 add support for CC_FOR_CGO environment variable

CL 151017 fix linter error for error_ function

CL 226517 avoid array clone during cgo call

CL 237058 pass -mfp32 and -mhard/soft-float to MIPS GCC

CL 240777 recognize //go:export like //export

CL 249744 add JNI's jmethodID/jfieldID to uintptr for Android NDK

CL 255321 [release-branch.go1.15] use go:notinheap for anonymous structs

cmd/compile

CL 14790 always emit type for constants in export data

CL 19698 remove ptrdata for common types

CL 21434 hoist induction variable

CL 28250 remove unnecessary stack offset rounding

CL 28391 don't rematerialize thunk calls

CL 28832 prototype/experiment for register args and results

CL 33634 used shared epilogue

CL 34719 check pointer validity on conversion

CL 35471 add typo fix suggestions using Levenstein/Edit distance

CL 36355 add write barrier for implicit zeroing

CL 37338 hoist invariants out of loops

CL 38692 automatically handle commuting ops in rewrite rules

CL 40293 experiment to always call write barrier

CL 40492 cleanup MOVaddr code generation

CL 40996 implement simple loop unrolling

CL 41470 let -d ssa/help breathe

CL 42516 replace boolean simplification rule

CL 43050 experiment to measure costs of "fault branch"

CL 47270 heap characterization

CL 47512 perform rotation in layout

CL 47932 add "estimate" phase reporting "excess" op counts

CL 61490 add generic rotate ops

CL 62490 separate s390x SSA rules for global variables

CL 64191 add branch prediction rules for float special cases

CL 65591 free nilcheck value properly

CL 68010 disallow loop preemption in the runtime

CL 68011 record rescheduling target PC

CL 68013 indirect fault-based loop preemption

CL 68014 make bad safe-points throw

CL 85715 disambiguate clashing types by package

CL 87482 print unreachable blocks

CL 87483 detailed trace debugging for prove pass

CL 91415 remove nil checks based on offsets from known non-nil pointers

CL 93175 use unified backing store for debug info output

CL 97415 export/import OCLOSURE

CL 99676 ignore -race on non-supporting architectures

CL 99937 improve DWARF locationlist debugging output

CL 100837 optimize struct partial re-assign

CL 101675 disambiguate builtin types when shadowed

CL 104595 use floating point test instructions on s390x

CL 105255 add load/store pairing optimization pass for arm64

CL 105258 eliminate write barrier for b = b[n:]

CL 106376 WIP add intrinsics for multiword arithmetic

CL 111736 optimize append([]T(nil), make([]T, n)...)

CL 114006 opaque field experiment

CL 115997 replace x < 0 used as value by a right shift

CL 117295 add unconditional new amd64 instructions generation

CL 118996 add some inliner knobs for parameter search

CL 121155 detect and remove pointless conditionals

CL 121697 inline runtime.memequal if possible

CL 122484 restore LocalAddr CSE

CL 122519 use Go declaration to make GO_ARGS for assembly functions.

CL 128035 optimize away deferred/go call to empty functions

CL 129376 disable branchelim for the moment

CL 129380 strengthen IsInBounds optimizations

CL 129381 disable walk boundedness

CL 129382 start modifying test harness

CL 129383 more and better IsInBounds elim

CL 129384 add warnBCE

CL 129759 optimize integer divisions like (x%a)/b when b >= a

CL 130255 optimise some small equality comparisons

CL 133944 add support for MSVC flags

CL 133946 add support for MSVC toolchain to go build

CL 135955 add minor optimization rules for math.Is{Inf,NaN}

CL 141647 assign to a field of map element

CL 144100 add support for -buildmode=c-shared for GOARCH=mips{,le}

CL 144219 add option for user-supplied list of file/line/column specials

CL 148177 use memhash for hashing strings in arrays and structs

CL 148777 enable inline of functions containing "for" loops

CL 151497 don't generate algorithms for slice literal backing store

CL 151978 improved debug logging for prove phase

CL 152478 use Node.Name.Defn in optimizations

CL 154058 don't recurse into go:noinline during inlining walk

CL 156177 add instrumentation to catch double-walks of trees

CL 158238 intrinsify Ctz, Bswap on i386

CL 160637 avoid confusing error on pkg.keyword

CL 162240 make duplicate anonymous interface output deterministic

CL 165358 add unsafe.Unreachable

CL 166358 further changes for fault-preemption-experiments

CL 168117 replace OpSlicemask with branch

CL 168238 early variadic slice normalization

CL 169722 Use slice of biasedsparsemaps instead of map

CL 169738 clean up debug_test variable printing; add it for delve

CL 170125 represent slices as (ptr, len, cap-len) in SSA

CL 171218 add environment-variable-connected knobs to inliner

CL 172357 better "is not a type" error when parameter shadows type

CL 173439 sort DWARF variable info by source position

CL 173477 link source lines to blocks

CL 173659 emit s390x 'rotate then ... selected bits' instructions

CL 174530 special case escape analysis for fmt.Printf etc

CL 175417 make inlining conditional on file contents

CL 176622 benchmark for slow lea

CL 177041 allow tightening rematerializeable values into loops

CL 177497 add -skiprule

CL 179601 combo inliner-experiments CL

CL 183239 debug rewrite, enhanced

CL 183240 rearrange creation of ssa.Func to allow defer-cleanup

CL 183957 not rewrite 64-bit AND to shifts on 32-bit machines

CL 184437 mark R16, R17 clobbered for non-standard calls on ARM64

CL 186981 enable field tracking for unexported fields

CL 190415 enable loop preemption for problematic loops

CL 190577 add intrinsic sync.checkPreempt

CL 190657 introduce recursive, on-demand inference in prove

CL 193838 make prove trace OpAdd64 and OpMakeSlice

CL 193839 make prove trace OpIsSliceInBounds:

CL 196597 implement bound calculations in poset

CL 196679 use poset bounds in prove

CL 196680 in prove, remove manual limit tracking

CL 198039 add SSA rules for s390x test-under-mask instructions

CL 198679 fix wrong order in multiple assignments

CL 200137 warn about indirect calls with unsafe.Pointer->uintptr conversions

CL 202080 implement unsafe.Slice and unsafe.String

CL 202558 simplify isReflectHeaderDataField

CL 203597 consistently use camelCase in poset

CL 206937 optimize big structs

CL 208323 return LITERAL on INDEXMAP when map and key are LITERALs

CL 209937 add //go:nodebug to reduce amount/size of debugging info for a function

CL 210344 add //go:nodebug for package granularity no-debugging

CL 210637 change uint64/int64/float64 in structs to be 8-byte aligned on 32-bit architectures

CL 211278 output loclists in optimized mode

CL 212303 remove unnecessary MOV in channel receiving

CL 217015 during rulegen, pre-substitute ops

CL 219127 add rewrite to avoid MOV{L,Q}{i2f,f2i}

CL 220684 support := in rewrite rule conditions

CL 220696 demo use of := in rule conditions

CL 221680 avoid unnecessary sign/zero extension on riscv64

CL 221685 implement aligned zeroing for riscv64

CL 221686 implement DUFFZERO for riscv64

CL 221977 fuse floating point special case tests

CL 223358 use staticuint64s to optimize interface conversion of small integer constants (WIP)

CL 224197 replace CallImport with go:wasmimport directive

CL 224878 add more integer-in-range optimizations

CL 226217 in poset, use signed flag rather than unsigned

CL 227002 optimize some comparisons with sign extenstions

CL 227159 remove sign/zero extensions before comparisons with constants

CL 227161 add more sign and zero extension before cmp removal rules

CL 227498 delete SSA ops for shifts by uint8 and uint16

CL 227655 infer gdata width arg

CL 228824 enforce strongly typed rules for ARM (1)

CL 229058 add shortcircuit to late fuse

CL 229897 tighten s390x compare-and-branch instructions to 32 bits

CL 229984 fix type of ssa OpITab Values

CL 230032 recognize another BFI pattern on arm64

CL 230033 add more arm64 bitfield simplifications

CL 230034 remove more extraneous extensions on arm

CL 230035 allow ARM's MOVWconst to be type-flexible

CL 230036 merge more width extensions with UBFX/SBFX on arm64

CL 230057 merge ANDconst into UBFX on arm64

CL 230058 look through MOVDreg in arm64 UBFX rewrites

CL 230059 combine UBFZ and ANDconst

CL 232811 enforce strongly typed rules for ARM (2)

CL 232938 report property type in error on name mismatch

CL 233317 optimize shift pairs on s390x

CL 233439 enforce strongly typed rules for ARM (3)

CL 234197 enforce strongly typed rules for ARM (5)

CL 234198 enforce strongly typed rules for ARM (6)

CL 234217 improve atomic swap intrinsics on arm64

CL 238317 recognize unused variables even when captured

CL 238537 refactor "declared but not used" diagnostic

CL 238538 maintain legacy "declared but not used" behavior

CL 239637 optimize ARM64's code with REV16

CL 240601 reject misplaced go:build comments

CL 240997 enforce strongly typed rules for ARM (GOARM)

CL 241877 optimize ARM64's single-precision sqrt with FSQRTS

CL 242001 can't call SetABI() on a LSYM after it has been added to hash table

CL 242783 add builtin "sizeof" function

CL 243944 add //go:embed support

CL 244961 remove legacy wb flag

CL 245131 move expandCalls earlier to re-enable move optimizations

CL 245132 enable late call expansion for multiple results

CL 245133 fix late call expansion for SSA-able aggregate results and arguments

CL 246157 check indirect connection between if block and phi block in addLocalInductiveFacts

CL 246938 enable late expansion for address-of static calls

CL 247478 optimize-out redundant I->I type assertions

CL 247537 enable late expansion for interface calls

CL 247770 cosmetic and comments cleanups to call-expanding code.

CL 247771 enable late expansion for closure calls

CL 247898 late call expansion for go func and simple defer func

CL 248186 some minor cleanups

CL 248187 enable late call lowering for "callDeferStack"

CL 248188 enable late expansion in openDeferExit

CL 248189 late call expansion for rtcall

CL 248190 add generic optimization patterns for late-expanded calls.

CL 248404 using new calls, optimize strings.HasPrefix(s, lenOneConstString)

CL 248621 [release-branch.go1.15] fix live variable computation for deferreturn

CL 248622 [release-branch.go1.14] fix live variable computation for deferreturn

CL 248701 add support for Lsh64*64 and Mul64 to IsSliceInBounds

CL 248724 clean up buggy DWARF inlined info PC ranges

CL 249458 avoid generating duplicates, also handle interfaces and complex

CL 249459 rework [u]int64 on 32-bit expansion.

CL 249460 add remaining aggregate types to call site expansion

CL 250037 relax ":=" statements

CL 252338 allow directory specification for GOSSAFUNC output

CL 253217 change call expansion to allow it to run in more places.

CL 253603 mark type descriptor symbols content-addressable

CL 254457 tweak debug info decomposition for expand_calls

CL 254662 enforce strongly typed rules for ARM (4)

CL 254796 modify inlining heuristic for if; max arms, not sum

CL 255239 use depth first topological sort algorithm for layout

CL 255317 optimize generated struct/array equality code

CL 255318 [release-branch.go1.15] make Haspointers a method instead of a function

CL 255320 [release-branch.go1.15] don't allow go:notinheap on the heap or stack

CL 255337 [release-branch.go1.15] allow aliases to go:notinheap types

CL 255338 [release-branch.go1.15] make go:notinheap error message friendlier for cgo

CL 255697 [release-branch.go1.15] propagate go:notinheap implicitly

CL 256077 add rewrite rule to change callClosure(constant) to callStatic

CL 256097 enforce strongly typed rules for ARM (8)

CL 256099 switch to typed aux in more amd64 rules

cmd/compile/internal

CL 200078 test adding an op to convert memclrNoHeapPointers into an intrinsic

cmd/compile/internal/gc

CL 38250 noder.error cleanup

CL 40500 cleanup moveToHeap

CL 54412 catch more in range checks

cmd/compile/internal/ssa

CL 25386 use compact interval tree representation for live sets

CL 38448 tighten loads

CL 40491 simplify fitsARM64Offset

CL 40494 change StringData to return *obj.LSym

CL 42514 avoid generating some redundant matching rules

CL 95583 emit paired stores on arm64

CL 149537 optimize x*x*x*x to only 2 imuls

CL 201978 split lowered optimization passes

CL 204102 lower CondSelect on s390x

CL 239457 handle more cases in fuse pass

CL 252937 strengthen phiopt pass

cmd/compile/internal/syntax

CL 149638 parse/print support for type parameters and contracts

cmd/compile/ssa

CL 244737 optimize the derivable known branch of If block

cmd/compiler

CL 67611 add Syslook logic

CL 253748 add support for internal LoadAcq64 intrinsic on ppc64

cmd/cover

CL 172424 add feature to sort packages in coverage HTML file

CL 226538 change coverage precision to .2f

CL 249759 backport tools/cover

cmd/dist

CL 46426 check that -buildmode=pie produces runnable binaries

CL 112156 explicit option for crosscompilation

CL 144101 enable -buildmode=c-shared tests for GOARCH=mips{,le}

CL 172577 add flag to keep workdir

CL 193558 support c-shared buildmode for openbsd-amd64

CL 223755 run a checkNotStale on the builders before running tests

CL 236279 force keep going flag to true

CL 237858 fix build failure of misc/cgo/test on arm64

CL 250180 switch openbsd/amd64 to pthreads

CL 250578 add openbsd/mips64 as incomplete port

CL 250583 detect gohostarch for openbsd/mips64

cmd/doc

CL 121919 introduce -tags flag

CL 164759 fix handling of path parameters on Windows

CL 180137 add -ex flag

CL 195201 show documentation for explicitly-requested identifiers regardless of the `-u` flag

CL 251237 adding validation before adding comment marker

cmd/fix

CL 240555 always format source file before fixing

CL 240556 rename confusing boolean

CL 240597 print warning to stderr, show provenance

CL 240611 add buildtag fix

cmd/gc

CL 3032 fields in escape analysis

CL 3703 set colas

CL 3731 delay heap var promotion

cmd/go

CL 8630 fix -coverpkg=all

CL 8802 afl

CL 76370 make sure compiler uses importcfg always

CL 76372 be precise about paths that appear in packages and binaries

CL 84736 make -x output commands executable again

CL 90955 coverage profile use cache if the set of arguements equals

CL 105435 fix go get VCS tests that match go-import's

CL 119316 better quote the cfg.GOROOT output

CL 127818 cache results of EvalSymlinks

CL 144100 add support for -buildmode=c-shared for GOARCH=mips{,le}

CL 157682 Adds shared linking support for FreeBSD/amd64

CL 157800 improve goproxy and list documentation

CL 158477 update unexpected module import error to be more actionable

CL 159759 honor vendor.conf fork repositories in modconv

CL 164198 ignore test only packages with -coverpkg

CL 164957 make sure that the RelPaths always returns valid paths

CL 172617 set GIT_TERMINAL_PROMPT on individual git commands instead of process-wide

CL 173721 [WIP] error if mismatched major versions causes use of pseudo-version

CL 174201 implement parsing of Go version in Plan 9 binaries

CL 174258 respect -mod=readonly when performing 'mod verify'

CL 174939 use replacement, not replaced, module paths in binary

CL 179117 improve error message on go.mod name mismatch

CL 180497 create GOTMPDIR if missing instead of failing

CL 185540 Warn when GOPATH is a subdir of GOROOT

CL 191945 validate module proxy URLs received from go get queries

CL 192558 test debug.BuildInfo.Main for a binary from a different module

CL 193557 package modules into mod format for upload

CL 193558 support c-shared buildmode for openbsd-amd64

CL 194644 add .proto file support to 'go' command

CL 196519 do not modify an existing go.mod file if its 'go' version is unsupported

CL 209437 make cgo pkg-config work w/ lib paths that have spaces

CL 210943 trim source paths in generated cgo and C source files

CL 212358 return user provided path instead of mangled ImportPath

CL 216097 validate module path in mod why

CL 222577 add international language support to list_ambiguous_path

CL 224017 make undefined flag msg less ambiguous. Fixes #36364

CL 224057 relax module consistency checks if vendor/modules.txt is missing

CL 228517 make sure CC and CXX are absolute

CL 232017 default GOBIN to GOPATH[0]/bin for packages outside GOPATH

CL 233617 include cover percent on failures

CL 234658 delay os/arch pair check for better error message

CL 235925 assign missing import errors to importing package

CL 236165 group 'go get' update messages together near the end of output

CL 237058 pass -mfp32 and -mhard/soft-float to MIPS GCC

CL 237697 error when -c or -i are used with unknown flags

CL 238678 incomplete external linking check for pkg dependency

CL 240550 disable automatic go vet -unreachable during go test of std

CL 240552 remove Package.constraintIgnoredGoFiles

CL 240553 add IgnoredOtherFiles to go list; pass IgnoredFiles to vet

CL 240739 add -include to cgo whitelist

CL 242365 add trace spans for the skeleton of get

CL 243398 improve gopath documentation about internal directories

CL 243945 add //go:embed support

CL 243948 add tracing to mvs.buildList

CL 243949 annotate ImportPathsQuiet and modload.(*loader).doPkg

CL 246797 remove duplicate initialization of buildcontext

CL 248328 rewrite mvs.buildList to not use par.Work

CL 248685 support non .go named files in go build

CL 249657 updates documentation for 'go help build'

CL 250198 env -w validates GOTMPDIR value

CL 251879 let 'go list -mod=readonly' succeed if go.mod is inconsistent

CL 253747 add basic support for overlays

CL 255018 allow the CC path to contain spaces

CL 255052 default to GO111MODULE=on

CL 255498 [release-branch.go1.15] relax version's error on unexpected flags

CL 255960 add a '-e' flag to 'mod tidy' and 'mod vendor'

cmd/go/internal/base

CL 172599 add a Logf function and funnel stderr output through it

cmd/go/internal/envcmd

CL 223098 Replace any non-empty password in GOPROXY

cmd/go/internal/get

CL 60210 Proparly escaped . in vcs regexp

CL 230317 expose error when git ls-remote failed

CL 250557 add support for go get in azure devops repos

CL 255882 warn about -insecure deprecation

cmd/go/internal/load

CL 89455 follow possible $GOROOT/src symlinks

CL 107301 assign .ImportPath and .Root for a testdata package in GOPATH properly

CL 108036 ignore vendor imports from testdata

cmd/go/internal/lockedfile

CL 152718 fix EDEADLK error on aix/ppc64

cmd/go/internal/modcmd

CL 135735 mod download allow insecure download

CL 144106 warn when no version supplied to go mod download

cmd/go/internal/modfetch

CL 126615 update proxy usage

CL 126616 add unit tests to downloadZip

CL 174338 add gosum.io key

cmd/go/internal/modget

CL 172618 WIP

CL 209017 get correct first element of import path

CL 234681 clarify error for 'go get' without arguments

CL 255938 consolidate Load entrypoints

CL 255969 diagnose missing transitive dependencies

CL 255970 if building packages, only update go.mod if the build succeeds

cmd/go/internal/modload

CL 158257 improve error message when $HOME is unset

CL 256057 eliminate QueryPackage

cmd/go/internal/mvs

CL 244760 factor out an incremental implementation

cmd/go/internal/work

CL 227810 replace signal channel type with the empty struct

cmd/gofmt

CL 170679 have the doc.go match -h output

cmd/gointernal/cmdflag

CL 151980 remove "set only once" check

cmd/internal/gc

CL 9014 make OLEN/OCAP type as int instead of uint

cmd/internal/obj

CL 16076 serialize Reloc.Variant in objfile

CL 27932 add relocation variant to object file

CL 192700 clean up s390x morestack generator

CL 192701 debug mode to call function on stack check

CL 226284 remove TODO comment about NOFRAME, now done

CL 243943 move LSym.Func into LSym.Extra

cmd/internal/obj/arm64

CL 233277 add CASx/CASPx instructions

CL 251519 add support for arm64 instruction FLDPQ and FSTPQ

cmd/internal/obj/mips

CL 144097 add support for -buildmode=c-shared for GOARCH=mips{,le}

cmd/internal/obj/ppc64

CL 248720 avoid prolog calls to morestack in more cases

cmd/internal/obj/riscv

CL 221686 implement DUFFZERO for riscv64

cmd/internal/obj/s390x

CL 199647 introduce assembly instructions to replace exrl related calls on s390x

cmd/internal/obj/x86

CL 74810 use push/pop to manage frame pointer

CL 171732 permit new CMOVL syntax with suffix

CL 206837 prevent jumps crossing 32 byte boundaries

cmd/internal/objabi

CL 144098 add support for -buildmode=c-shared for GOARCH=mips{,le}

cmd/internal/objfile

CL 118775 fetch pclntab for PIE

CL 182758 correctly report the source file of assembly functions

cmd/link

CL 16076 serialize Reloc.Variant in objfile

CL 16459 load object files concurrently

CL 27932 add relocation variant to object file

CL 37732 enable c-archive on all Unix and Windows systems

CL 45992 pass -nopie, not -Wl,-nopie, on OpenBSD

CL 79635 fix R_ADDROFF reloc to SDYNIMPORT syms

CL 112215 add option to omit go DWARF user attributes

CL 124377 add -stats and -showdead debugging options

CL 133937 add flag rlocbss to relocate .bss data to .data

CL 133945 add external toolchain support for MSVC

CL 144098 add support for -buildmode=c-shared for GOARCH=mips{,le}

CL 145219 do not mark .text, .data and .bss as IMAGE_SCN_ALIGN_32BYTES

CL 151601 use IsDirectJump instead of writing it again

CL 152759 support PIE build mode on Windows

CL 157682 Adds shared linking support for FreeBSD/amd64

CL 171158 replace Base Address Selection Entry w/ new relocation

CL 174317 reserve 48 bytes in stack frame for ppc64

CL 185990 additional output for linker -stats flag

CL 203602 allow ASLR on Windows executables

CL 203606 enable ASLR by default on Windows

CL 211817 log searching directory instead of full pathname

CL 216599 panic if we try to create gcbits for shlibs

CL 217857 add trailing padding after Go ELF note

CL 232980 test fallocate

CL 239217 mips32, add .gnu.attributes and .MIPS.abiflags sections

CL 243517 add support for external linking on linux/riscv64

CL 244578 fix writeBlocks handling of sub symbols

CL 250180 switch openbsd/amd64 to pthreads

CL 250582 add support for openbsd/mips64

CL 252478 remove all constants of elf

CL 252824 add new -dumpsymsat linker option

CL 253157 add a test for reproducible build

CL 254777 ignore mmap failures in the linker

CL 255259 enable ASLR on windows binaries built with -buildmode=c-shared

cmd/link/internal/arm64

CL 250181 handle calls to SDYNIMPORT with internal linking

cmd/link/internal/ld

CL 249978 resolve shared libraries on openbsd

CL 255260 use libc based fcntl for (*OutBuf).fallocate on darwin

cmd/objdump

CL 227483 read file/line information for ELF PIE binaries

CL 253897 support reading from a pipe

cmd/pprof

CL 248499 sync pprof@1a94d8640e99

cmd/trace

CL 7680 fix time scale issue

CL 34031 user events

CL 152737 specify region time range in goroutine trace

cmd/vendor

CL 248499 sync pprof@1a94d8640e99

cmd/vet

CL 34451 detect IP address comparisons via bytes methods

CL 47670 weakvar: check for weakly used variables (possible unintended shadowing)

CL 101918 only zero/non-zero exit status matters

CL 127257 add a vet build tag so compiler test files can be excluded

CL 203998 remove DisableErrorForFlag0 since complaint about 0 flag has been disabled

CL 235677 vendor pass to catch invalid uses of testing.T in goroutines

CL 240554 look at ignored files in buildtag check

CL 240609 update buildtag check for //go:build lines

cmd/{asm,compile}

CL 36951 merge loads into floating point ops on s390x

compress

CL 28223 add generator format for compression tests

compress/flate

CL 136475 return error on closed stream write

CL 198757 add a check to recognize partial flush while decompressing

CL 227737 improve decompression speed

CL 243797 eliminate repeated judgments.

CL 244157 cancel redundant operations

CL 244197 unify code style and modify wrong comments

CL 244778 function call is meaningless

CL 255879 fix corrupted output

compress/gzip

CL 53637 permit parsing of GZIP files with long header fields

compress/lzw

CL 123478 optimize code hash table to reduce collisions

CL 245177 optimize code hash table to reduce collisions

container/heap

CL 56070 optimize heap to reduce compares

container/list

CL 228103 modify the move function

CL 233326 check the list state before mutation

CL 234720 Add elementPool for alloc new element

container/ring

CL 175637 optimize the Move method of the Ring struct

context

CL 187557 reduce nested conditionals in propagateCancel()

CL 210697 make Value() iterative for known Context types

crypto

CL 246877 check the Key Usage extension

crypto/aes

CL 38366 ARM assembly versions of encrypt, decrypt and expandKey

CL 51670 add optimized implementation of AES-CTR for AMD64

CL 136896 optimize AES-CTR mode on amd64

crypto/cipher

CL 142537 use Neon for xor on arm64

crypto/des

CL 254980 fix typo in permuteInitialBlock function comments

crypto/dsa

CL 230237 add benchmark tests of DSA signature algorithm

crypto/ecdsa

CL 232297 use FillBytes on s390x

CL 242103 fix dead reference link

crypto/ed25519

CL 216458 clarify doc of Sign and added package example

crypto/elliptic

CL 43716 use Montgomery ladder scalar multiplication

CL 60671 reuse bigints, avoid silent allocs

CL 109135 speed-up asm version on amd64

CL 161897 optimize generic CurveParams implementation

CL 203119 improve fuzz test for P256 assembly

CL 233939 upgrade from generic curve impl to specific if available

CL 235177 optimize function p256MovCond for arm64

CL 250217 update doc references for elliptic point compression

crypto/hmac

CL 72530 Added examples.

CL 207517 add some more benchmarks

crypto/internal/cryptotest

CL 102196 new testing package

crypto/rand

CL 119335 add package-level examples

CL 122775 adds examples for Int and Prime

CL 206817 detect biases in rand.Int(), clarify internals

CL 210057 generate random numbers using RtlGenRandom on Windows

CL 232860 use BCryptGenRandom instead of CryptGenRandom on Windows

crypto/rsa

CL 240008 add rand initialization for rsa.SignPSS

crypto/sha1

CL 135378 use SHA instructions on amd64, when possible

crypto/sha512

CL 180257 optimize ARM64 sha512 implemention

crypto/subtle

CL 62770 optimise ConstantTimeCompare

crypto/tls

CL 93255 add DialContextWithDialer function

CL 127548 add examples for use of crypto/x509

CL 160017 add a BoringSSL test suite (BoGo) integration

CL 160019 misc BoGo-induced fixes

CL 170702 avoid cache-based side channels in extracting the remote MAC

CL 170703 implement full Lucky 13 countermeasures for SHA-1 CBC ciphers

CL 181097 add context to tls structs

CL 231678 add r.Lock to protect r.flows in WriteTo

CL 239748 ensure the server picks an advertised ALPN protocol

CL 245160 make checkForResumption side-effect free

CL 245837 supprtedVersions:return rightly for nil pointer parameter and plainer

CL 246038 simplify the process of cipher suites checking.

CL 246263 delete one useless judge statement.

CL 246337 support post-handshake client authentication

CL 246637 returns a copy of c or nil if c is nil while using tls.Config.Clone()

CL 251859 drop macFunction abstraction

crypto/x509

CL 40866 self-signed cert key pair check

CL 64851 add cgo for system keychain loading

CL 71754 elaborated on a comment in CreateCRL

CL 85895 remove entrust CA constraint exemption

CL 125056 create typed versions of ParsePKCS8PrivateKey

CL 131575 validate HostName with VerifyHostname function

CL 141821 add path for TinyCore ca-certificates

CL 141837 VerifyHost should only match IDNA encoded domains

CL 171297 use already parsed fields for certificate verification

CL 186438 include ed25519 in MarshalPKIXPublicKey error message

CL 187778 add SignatureAlgorithm.Hash()

CL 224157 check the private key passed to CreateCertificate

CL 229917 add support for CertPool to load certs lazily

CL 230025 keep smaller root cert representation in memory until needed

CL 231240 subject/issuer hint fallback for unknown-authority errors

CL 232397 drop the cgo implementation of root_darwin_amd64.go

CL 232993 prioritize potential parents in chain building

CL 233163 add additional convenience fields to CertificateRequest

CL 234257 rework how system roots are loaded on unix systems

CL 235078 enforce SAN IA5String encoding restrictions

CL 235118 enforce algorithmIdentifier matching/encoding restrictions

CL 237217 improve memory allocation performance

CL 238362 add directory name constraints

CL 241118 clarify package use-case and implementation reasoning

CL 247117 update test case for windows

CL 248762 define certDirectories per GOOS

CL 252557 return errors instead of panicking

crypto/x509/internal/macos

CL 241878 rename package name to lowercase

crypto/{rand,ecdsa,elliptic}

CL 208484 clean up and reuse rand.Int

database/sql

CL 160448 add missing error check in test

CL 179298 run prepare & execute commands on the same conn from DB pool

CL 203580 prevent ErrBadConn from driver.Open()

CL 212411 support db filed value is NULL with variable type is string

CL 235527 correct *.Fatal inside goroutines in tests

CL 237337 Fix idle connection reuse

CL 244624 add on-connect hook support

CL 250178 fix tx stmt deadlock when rollback

CL 255966 add unit test confirming lifetimes

database/sql/driver

CL 230558 add value converter test for unused type

debug/dwarf

CL 236657 add support for DWARFv5 to (*Data).Ranges

debug/macho

CL 241237 add SymtabCmd data to *macho.Symtab in parseSymtab

debug/pe

CL 193819 ignore non-existent symbol and string table

CL 200617 limit the maximum size of the string table buffer to 1MB

doc

CL 45140 add GOROOT_BOOTSTRAP to the contribution guide

CL 103575 explain how to reply to a review in Gerrit

CL 116157 add AVX-512 wiki page link to asm.html

CL 120296 add note for newline after copyright header to contribute.html

CL 136760 clarify that signal receipt doesn't fire defer hooks

CL 148830 add missing import of the log package

CL 178119 note that go-contrib-init and git-codereview is installed in shell path. note that we should add a blank line after Fixes #xxx

CL 178120 clarify relative import paths don't work with modules

CL 178121 Add examples for all methods on regex.Regexp. Add example for FindAllIndex(), FindSubmatchIndex(), ReplaceAll(), NumSubexp().

CL 222897 document neither all.bash nor run.bash runs all tests

CL 237584 update install instructions to add GOBIN to PATH

CL 244625 improve re.ReplaceAllString documentation related to Expand part

doc/articles

CL 196681 document unsynchronized send/close in race detector article

doc/articles/wiki

CL 136757 remove misleading code in tutorial

doc/code.html

CL 105655 updates description of go install

doc/faq

CL 223898 update the MITM reference to "machine-in-the-middle"

doc/go1.14

CL 240547 add missing release note about text/template escaping

doc/mem

CL 247837 reword happens-rules in channel communication docs

docs

CL 236419 Add missing import in tutorial

dwarf

CL 66850 break debug_ranges

ecdsa

CL 225638 add marshaling support PrivateKey and PublicKey types

embed

CL 243942 implement Files

encoding/ascii85

CL 162926 add example for encode and decode

encoding/asn1

CL 84095 add test of Unmarshal slice of RawValue

CL 108355 support fractions of a second when unmarshaling GeneralizedTime

CL 134223 add ability to marshal to general string

CL 146117 make GeneralizedTime and UTCTime follow DER restriction

CL 150601 correctly parse GeneralizedTime

CL 152117 allow the user to specify the time format used to unmarshal

CL 163577 add example for encoding and decoding

CL 170217 support marshal uint/uint8/uint16/uint32/uint64

CL 212997 optimize asn1.Unmarshal

CL 229078 clarify use of SET suffix

CL 233038 document that RawContent aliases the input byte slice

CL 234017 respect omitempty when marshaling nil values

CL 240006 support ObjectIdentifier sub-oid values greater than 2^31-1

CL 248259 add dynamic length integer support for base 128 integer parsing

CL 255881 don't panic when invalid argument passed to Unmarshal

encoding/base64

CL 221857 add examples for Encode, Decode

CL 246377 fix base64 encoding when stream input comes

encoding/binary

CL 113075 fix error message for Write

CL 189758 fix error on unexpected EOF while reading a varint

CL 202517 removal of unnecessary boundary checks.

CL 246837 remove TODO in Write and add benchmarks

encoding/csv

CL 237658 allow for interpretation of empty lines

CL 237818 Allow quoted content to contain escaped quotes, such as stringified JSON

encoding/gob

CL 117875 fix handling of embedded structs without exported fields

CL 173781 Removal of panic from EncodeValue

encoding/json

CL 27453 with ,string tag, decode []float*, []int*, []uint* from string slices

CL 31091 allow overriding type marshaling

CL 102158 encoding/xml: interface to omit marshalling empty structs

CL 110119 include property name for marshal errors

CL 126255 optimize encdoer

CL 129756 updated the documentation to use embedded fields instead of anonymous fields.

CL 129815 say "embedded field" instead of "anonymous field"

CL 132735 add UseStrictNames to json.Decoder

CL 135595 add direct write mode to Encoder

CL 136035 fix usage of sync.Pool

CL 136761 Add "nonil" struct tag for json encoding of nil slices/maps

CL 140305 permit any string as a struct field name

CL 145277 add an example to HTMLEscape

CL 146318 json.Unmarshal fails to unmarshal a custom Unmarshaler struct field

CL 147897 add simple example

CL 148834 document the unmarshalling of missing json fields

CL 152297 created json.UnknownFieldsError

CL 171737 improve error messages with a "json:" prefix

CL 172499 add example tests for Marshal/Unmarshal

CL 188500 This CL adds Decoder.InternKeys

CL 198047 fix byte counter increments when using decoder.Token()

CL 205018 prevent compact twice to improve precomputed performance.

CL 205897 Add `nilasempty` option

CL 211457 allow "-" to shadow by struct field name

CL 212998 implement type override for serialization

CL 221117 clarify how we decode into structs

CL 224079 skip inexact matches after exact matches

CL 234818 allow semicolon in field key / struct tag

CL 241179 Enable the json encoder to distinguish between 0, null, and empty values.

CL 242257 add Decoder.Token benchmark

CL 247059 allow quotes in field key / struct tag

CL 248358 detect cyclic maps and slices

CL 249938 return a different error type for unknown field if they are disallowed

CL 254539 added tests for MarshalerError.Unwrap

CL 254540 added docs to UnsupportedValueError

encoding/pem

CL 150877 fix #bytes lineBreaker.Write returns

encoding/xml

CL 37945 add DOM-like API

CL 46433 Add xml attribute value normalization

CL 59830 add 'allowempty' tag for self-closing XML tags

CL 103875 fix absence of detection of another : in qualified names

CL 104655 fix normalization of attributes values

CL 105636 fix invalid empty namespace without prefix

CL 106575 add check of namespaces to detect field names conflicts

CL 106835 add tests

CL 107255 fix closing tag failure

CL 107755 fix duplication of namespace tags by encoder

CL 108395 check that struct is no anonymous

CL 108616 fix panic on embedded unexported XMLName

CL 108796 fix overriding by empty namespace

CL 108797 fix unexpected behavior of encoder.Indent("", "")

CL 109855 fixes to enforce XML namespace standard

CL 116056 fix printing of namespace prefix in tag names

CL 122486 support omitempty on custom marshalers

CL 127435 add RawXML token type and tests

CL 129756 updated the documentation to use embedded fields instead of anonymous fields.

CL 129815 say "embedded field" instead of "anonymous field"

CL 144518 allow cdata/chardata to be named and nested with annotations

CL 181499 use a depth counter rather than recursion in Decoder.Skip()

CL 191962 disallow unknown elements/attributes in Decoder

CL 207850 clarify doc on XMLName and field tags

CL 218658 decoder to use buffered start attr

CL 248340 simplify XML procInst

CL 254978 opt-in fix reserved namespace check to be case-insensitive

errors

CL 219497 add new function Temporary(error) bool

expvar

CL 200319 make possible to delete all exported variables

feat

CL 236877 close expired conn as soon as possible

flag

CL 144103 add description of default values to docs

CL 212599 add example for FlagSet

CL 224017 make undefined flag msg less ambiguous. Fixes #36364

fmt

CL 38259 speed up integer formatting using separate 32bit and 64bit functions

CL 68611 add example for Printf and Println functions fixed blank line before first example.

CL 110595 make scanning newlines work the same way on Windows and Linux

CL 132375 add doc example for Fprintf

CL 145917 add additional example for Printf

CL 146024 clean up and slightly restructure Printf docs

CL 240000 explain how Formatter interface affects verbs and flags

gc/internal/gcimporter

CL 37759 add test to verify position recorded positions

github.com/golang/gddo

CL 81935 Conditionally pluralize summary.

CL 115315 Allow users to set the log level for the root log15 handler.

CL 140719 Allow username in package name

CL 178597 Move to Go modules

CL 187097 Add extra scopes

CL 198098 Remove container max-width style inorder to see the documentation by utilizing the full device-width

CL 199498 Dark mode using prefers-color-scheme (fixes #434)

CL 201481 Removed max-width to make site more comfortable to read

CL 205417 Add Rich data for GitLab.com as code provider

github.com/golang/gddo/FIX

CL 122195 Missing HSTS-header

github.com/golang/gddo/all

CL 73031 fix tests

github.com/golang/gddo/database

CL 216098 remove search limit of 100 in searchAE

github.com/golang/gddo/doc

CL 173218 more accurate value for string literal size

github.com/golang/gddo/feat(gddo-server)

CL 205607 make log level configurable, default to info

github.com/golang/gddo/gae-service-proxy

CL 199717 migrate to go111

github.com/golang/gddo/gddo

CL 168066 add module files

github.com/golang/gddo/gddo-server

CL 38399 remove appengine libraries from main

CL 135536 fix expanding examples containing reserved characters

CL 135537 simplify onclick listener for example list

github.com/golang/gddo/gosrc

CL 28788 use go-github to fetch from GitHub

CL 163639 Add subdirectories to local mode

CL 168065 expand vcs pattern to match go-get

CL 168838 add mecurial vcs support

CL 169337 better vcs suffix support for github

CL 172737 improved sourcehut vcs support

CL 173217 calculate Bitbucket Directory.Stars with watchers API

github.com/golang/gddo/httuputil/header

CL 101255 Allow special character in header value in ParseValueAndParams

github.com/golang/gddo/site.css

CL 77290 Hide internal packages (issue #402) in package lists

go/ast

CL 120675 add Filter func test on AST

CL 252939 add test for Filter

CL 255657 add ast.Comment.EndSlash to fix End calculation

go/build

CL 101281 add examples for Import and Context

CL 103239 document purego convention

CL 229098 fix duplicate in InvalidGoFiles

CL 240551 add Package.IgnoredOtherFiles

CL 240598 clean up ctxt.shouldBuild, tests

CL 240600 reject //go:build without // +build

CL 240607 prefer //go:build over // +build lines

CL 241577 include files with parse errors in GoFiles and other lists

CL 243905 allow io/fs to depend on time

CL 243940 refactor per-file info & reader

CL 243941 recognize and report //go:embed lines

go/build/constraint

CL 240604 add parser for build tag constraint expressions

CL 240605 add +build expression parser

CL 240606 add PlusBuildLines

go/doc

CL 100815 add examples for creating Package and Examples

CL 131176 show exported fields of embedded structs

CL 221940 update url matcher to exclude trailing chars

CL 223577 make formatting comments more flexible using an interface

go/importer

CL 101280 add example of importer.For

go/minitypes

CL 255021 an experiment in managing a dual object graph

go/parser

CL 100060 add examples for using ParseFile with go/build

CL 250037 relax ":=" statements

CL 255657 add ast.Comment.EndSlash to fix End calculation

go/printer

CL 33294 steps towards fixing #16371

CL 109795 allow single-line const enum declarations

CL 162920 fix newline with a comment at the end

CL 240608 canonicalize //go:build and // +build lines while formatting

go/types

CL 101286 change examples to use source importer

CL 113855 use binary search when looking up a method in a sorted list

CL 179184 change cap, len to return untyped int if result is constant (experiment)

CL 234525 type-check _cgo_gotypes.go as its own Package

CL 234526 replace Config.UsesCgo with Checker.CgoFiles

CL 239558 eagerly complete interfaces

CL 241264 formalize the concept of phase

CL 241265 check var decls last, allowing some simplification

CL 241266 remove the concept of 'final' type from updateExprType

CL 241267 refactor error handling in convertUntyped

CL 241268 (minor) use token.NoPos rather than 0 in a few places

CL 241269 special handling for shifts inside string conversions

CL 241270 experiment with rewinding type-checking to check hypothetical AST changes

CL 248722 decouple the type checker from go/ast

CL 255020 decouple the type checker from go/ast

godoc

CL 77750 show interface method documentation

golang.org/dl

CL 235117 Do not rebuild gotip if the HEAD does not change

golang.org/dl/dl

CL 221978 exit with the exit code returned by cmd.Run

golang.org/dl/gotip

CL 217764 move gotip into internal/version

CL 223738 disable GC while building

CL 240002 check out any ref, not just gerrit CL numbers

golang.org/dl/internal/version

CL 217764 move gotip into internal/version

CL 217765 ignore signals intended for the child process

google.golang.org/api

CL 7994 Insert the description of the change.

google.golang.org/api/all

CL 57350 Read default mTLS endpoint from Discovery Doc

google.golang.org/api/transport/http

CL 57350 Read default mTLS endpoint from Discovery Doc

hash

CL 155118 Runtime, an API for the hash function used by the Go runtime

CL 217361 add other usage of CRC32-C in Castagnoli doc

hash/crc64

CL 237537 improve readbility by using binary package

hash/maphash

CL 255968 adjust package comment

hash/{crc32,adler32,fnv,maphash}

CL 250757 improve readbility by using binary package

html/template

CL 97875 simplify eatWhiteSpace

CL 148833 document that comments are stripped from html templates

CL 205419 define IncompleteTemplateErr type

CL 215797 remove RawGit link from docs

CL 243938 add ParseFS

image

CL 47255 pass reader through Decode and DecodeConfig when possible

CL 85475 Add documentation for methods on different Images

CL 243038 document security expectations

image/gif

CL 119319 fix acceptance of one non-significant byte in data

CL 232057 treat NUL byte between sections or before trailer as trailer

CL 237557 Add EncodeAllMultithreaded

image/jpeg

CL 125138 decomposes scan loops and pre-computes values

internal/bytealg

CL 134055 optimize generic Count function

CL 199597 improve mips64x equal on large size

CL 204664 make s390x assembly more consistent

internal/cpu

CL 126657 expose mips[64][le] feature flags for FMA

internal/reflectlite

CL 235522 include Kind in ValueError message

internal/syscall/windows

CL 8683 implement FileConn, FileListener

internal/syscall/windows/registry

CL 243903 remove dependency on io

internal/testenv

CL 133941 add testenv.CompilerType() to denote between host compiler type

internal/trace

CL 82255 add benchmark of testdata parse

internal/x/text/unicode/bidi

CL 160438 remove inefficient assignment

io

CL 240740 add ErrBadWriteCount

CL 245657 move Discard, NopCloser from ioutil

CL 245658 reimplement and move ReadAll from ioutil

io/fs

CL 243906 move FileInfo, FileMode, PathError, ErrInvalid, ... from os to io/fs

CL 243908 add FS, File, ReadDirFile

CL 243912 add ReadFile

CL 243913 add Stat

CL 243914 add ReadDir

CL 243915 add Glob

CL 243916 add Walk

lib/time

CL 198062 move to src/time/_zoneinfo

mail

CL 49410 improve ParseAddress error for badly quoted display name

math

CL 84438 add examples

CL 118895 add examples for functions which had none

CL 146777 add architecture independent maxint and maxuint

CL 148737 Add examples for Log10, Min, Max, Mod, and Modf

CL 188437 replace exported variables with runtime.KeepAlive in benchmarks

CL 234258 add more examples

CL 234819 implement Hypot in arm64 assembly

CL 247058 add MaxUint, MinInt, MaxInt

CL 247241 simplify comparison in FMA when swapping p and z

math/big

CL 17910 faster printing of floats with huge exponents

CL 45490 support for constant-time arithmetic

CL 123497 improve threshold calibration for karatsuba

CL 168257 add comprehensive aliasing tests (and minor fixes to Exp, Rand)

CL 170257 optimize amd64 asm shlVU and shrVU for shift==0 case

CL 224584 fix typo in Lucas chain

CL 233980 reduce allocations for building decimal strings

CL 250417 triple the speed of divWVW and optimize the div of nats by replacing the division with multiplying reciprocal

math/bits

CL 195202 Add examples for platform independent functions

CL 234957 modify the sample generation rules

math/rand

CL 200937 add NewLockedSource

mime

CL 191917 do not change initial configuration for mimeTypes

CL 236677 look up mime types on Arch Linux

mime/multipart

CL 87657 add Writer example

CL 153178 allow custom content types to be given for form files

CL 185637 make sure all contents are read from multipart form

CL 200079 Always show cte header

CL 247477 return overflow errors in Reader.ReadForm

misc/cgo

CL 133940 adjust tests to be compatible with MSVC toolchain support

CL 248683 Add test for C union read/write

misc/cgo/bench/symbollookup

CL 76373 add runtime.CallersFrames benchmark

misc/cgo/test

CL 240697 test C.enum_*

misc/cgo/testtls

CL 196378 force TLS accesses on a non-main thread

misc/cgo/{errors,test}

CL 63731 add tests for corruption of C bit-fields

misc/ios

CL 255257 add support for running programs on the iOS simulator

misc/lockcheck

CL 192705 runtime lock order checking tool

CL 192706 interactive lock graph viewer

CL 192707 check for lock cycles in all.bash

misc/spectre

CL 223753 add new spectre index test

misc/update

CL 255859 add program to update golang.org/x dependencies

misc/wasm

CL 204619 allow Uint8ClampedArray with copyBytesToJS/copyBytesToGo

CL 241119 fix the empty global fs check

mod

CL 187959 wrong require when migrate from dep with source config

modcmd

CL 125258 fix typo and add one more example to -fix

modules

CL 149966 Fix incorrect error with modules containing no Go source

multipart

CL 190217 encode non-US-ASCII characters in Content-Disposition

net

CL 8683 implement FileConn, FileListener

CL 29310 Implement UnixConn.GetPeerCredentials

CL 73830 recognize non-LDH domain names as valid per RFC 1035

CL 84696 use NetEnabled for TestInterfaceHardwareAddrWithWmic

CL 86575 update documentation on IP transport for network parameter

CL 86576 update documentation on IPConn and UPDConn

CL 97975 empty write to pipe should not block

CL 105095 make concurrent socket system calls in test safe

CL 105715 use callpathSW in TestDialContextCancelRace

CL 120956 drop the use of syscall package in platform-independent code

CL 132437 extend documentation for net.FileConn()

CL 147378 clarify the behavior of ListenConfig.Listen{,Packet} with context

CL 150618 make TestVariousDeadlines detect client closing its connection in the server handler

CL 159617 replace `' with `` to avoid breaking doc presentation

CL 162037 add Sys field to Interface for system-dependent information

CL 173359 introduce ListenConfig#AfterBind

CL 196817 add text marshalling and unmarshalling for HardwareAddr

CL 202599 Add LookupSOA methods

CL 209357 support TCP half-close when HTTP is upgraded in ReverseProxy

CL 221798 IPv6 network does not contain IPv4 to IPv6 translated addresses

CL 233577 add Backlog knob to ListenConfig

CL 238629 prefer /etc/hosts over DNS when no /etc/nsswitch.conf is present

CL 241258 remove dependency on math/rand

CL 247397 fix shadowing for vairable name

CL 255898 reflect TCP backlog size update of uint16->uint32 on Linux

net/http

CL 13240 consolidate server request body error handling

CL 55613 Try best to reuse tcp connection when early close case.

CL 71991 do not reuse connection after bodyless response with TE header

CL 103696 avoid incorrect redirection on paths containing encoded slashes

CL 111136 replace HTTP CONNECT client implementation

CL 124315 fix double-close of req.Body after request writing

CL 125635 fix double-close of of req.Body after redirect

CL 125636 fix no-close of req.Body after redirect

CL 127550 add an example for Client.Do and NewRequest

CL 132479 don't run backgroundRead if connection was hijacked

CL 139058 add Post example

CL 158840 track the state of HTTP/2 connections

CL 158977 add MethodSearch as http request method SEARCH (RFC7230/7231)

CL 162317 revendor x/net/http/httpproxy

CL 162318 support socks5h scheme in proxy URL

CL 181097 add context to tls structs

CL 191779 document additional uses of Requesty.GetBody()

CL 191971 improve FileServer error logging

CL 195557 fix reading cookie mistake if ";;" exists, most browsers like Chrome, Safari can handle such a cookie

CL 200437 don't cancel hijacked connection's request context

CL 207817 add additional doc regarding http request context cancel behaviour

CL 210123 rewind request body on ErrSkipAltProtocol

CL 212408 document shallow cloning of some Request fields

CL 213277 allow upgrading non keepalive connections

CL 221677 document that SetCookie can quote the value

CL 226137 remove another arbitrary timeout in TestTLSHandshakeTimeout

CL 227438 prototype ServerTraceState to capture state of a request being handled

CL 227717 fix request body race in httputil DumpRequestOut

CL 227857 httputil: reverse quit logic in DumpRequestOut to fix lockup

CL 228904 fix infinite 301 redirects of http.FileServe

CL 230740 document when (RoundTripper).RoundTrip may return a nil *Response

CL 233201 remove redundant numeric StatusCode from Status message

CL 234657 prevent incorrect redirections when the path contains %2F%2F

CL 234961 fix readCookies unable to parse out cookies that are not well written If cookie like "; xmuuid=XMGUEST-FCF117BF-4D1B-272F-829D-25E19826D4F8;type=protobuf", we can't get the cookie value Fixes #39087

CL 235077 adds ability to marshall cookiejar to struct

CL 235437 add to deadlines only when positive

CL 235523 add examples for disabling HTTP/2 in Transport

CL 237998 add SameSiteUnsetMode const

CL 243939 add HandlerFS to serve from fs.FS

CL 246977 fix TestTransportReadToEndReusesConn by replacing Content-Type to Content-Length

CL 250837 add a package to parse and serialize Structured Field Values

CL 251087 document concurrency expectations for Request.Body

CL 251518 add CONNECT example for http.Transport

CL 253198 removes DualStack in DefaultTransport

CL 254977 test that ParseMultipartForm returns an error for int overflow

net/http/httptest

CL 182917 make it possible to use a Server (TLS or not) to test cookies

CL 227924 add a regression test for #38370

CL 241137 use IPv6 when IPv4 is unavailable

net/http/httptrace

CL 186217 create internal copy of ClientTrace in WithClientTrace

net/http/httputil

CL 191937 empty outgoing request's Host once it is cloned by ReverseProxy.ServeHTTP

CL 215637 add support for X-Forwarded-Proto, X-Forwarded-Host and an option to not trust forwarded headers in ReverseProxy

CL 223118 improve compatibility with server sent events

CL 227773 test Dump functions with a real http.Client and http.RoundTripper

CL 232798 Fix deadlock in DumpRequestOut

net/http/pprof

CL 248700 add examples

net/internal/socktest

CL 105095 make concurrent socket system calls in test safe

net/mail

CL 139077 add Address.NameAddr method

CL 139177 decode RFC 2047 encoded strings within quotes

CL 235200 avoid ParseDate confusion if day name include "T"

CL 238118 declare that domain parsing is less strict than expected

CL 240906 improve date parsing

net/rpc

CL 71692 add execution tracer user annotations

net/smtp

CL 104435 fix the bug which makes golang cannot handle smtp fail-auth

CL 242017 add Client.TLSConfig field and Client.SendMail method

net/textproto

CL 85195 Add an example for textproto.Conn

CL 170317 simplify commonHeader initialization

net/url

CL 155922 give a proper error message on invalid character in scheme

CL 166464 reduce allocation on building URL String func

CL 168559 make URL.String parse and escape query

CL 172157 Parse allow ASCII percent-encoded chars in host

CL 174998 rework shouldEscape func to bitmask flag

CL 196622 use conversion table in shouldEscape

obj

CL 237797 riscv64: use Duff's devices

obj/x86

CL 219229 nop-only, align functions and jumps for better performance

os

CL 51414 add example for os.Readlink

CL 84896 use jobs to wait for process completion on windows

CL 87658 add example for os.PathError

CL 116075 respect setuid and setgid bit in Mkdir() on *nix

CL 125261 remove read-only directories on windows

CL 170077 clarify that IsNotExist, IsExist, IsPermission and IsTimeout work with nil errors

CL 176877 return link destination on error

CL 182397 open(2) files w/o blocking

CL 191313 fix ambiguous documentation of type FileMode

CL 201157 support Stat("CON") on Windows

CL 211801 implement FindProcess on Darwin instead of noop

CL 212437 check whence value before trying to seek

CL 216622 do not use procfs for os.Executable in dragonfly

CL 217101 error testing functions respect Unwrapper interface

CL 217105 document Process.Pid

CL 219638 make Chtimes accept zero time values to mean skipping file modification

CL 227457 permit Rename to read-only file on Windows

CL 228892 restart interrupted syscall on Plan 9

CL 235318 move TestStatSymlinkLoop out of the Windows-only test file

CL 235420 document Symlink idiosyncracies on Windows

CL 242998 export errFinished as ErrProcessDone

CL 243900 use keyed literals for PathError

CL 243901 add, use File ReadDir, ReadDirNames methods

CL 243911 add DirFS

CL 246158 clarify the purpose of Process.Release method on Unix systems

os/exec

CL 213337 add examples for exec.Error and exec.ExitError

CL 233363 Add Cmd.StartWithContext() and Cmd.RunWithContext()

os/signal

CL 232378 retune the settleTime again

os/user

CL 247700 add solaris getgroups support

path

CL 224997 enforce glob pattern syntax validation on Match function

CL 227958 add security note to Clean and related examples

CL 243904 avoid import of strings

path/filepath

CL 106975 TestEvalSymlinks tests with "/" prefix fail in Windows

CL 111355 short-circuit VolumeName calls

CL 143477 implement IsPatternValid(pattern)

CL 207837 Glob fails if it has a wildcard and ends with /

CL 211802 fix readDirNames to not unconditionally read a directory

CL 227958 add security note to Clean and related examples

CL 241278 try GetFinalPathNameByHandle with VOLUME_NAME_GUID

CL 242178 revert "path/filepath: fix EvalSymLink documentation"

CL 253197 add failing test for Rel() with UNC share on Windows

path/path

CL 235878 Avoid removing wildcard in front of /..

pkg/regexp

CL 231677 fix example for Match function

plugin

CL 248597 add OpenFile to allow loading of Plugins from file descriptors

pprof

CL 142000 replace bits = bits + "..." to bits += "..." where bits is a string.

CL 142001 Replace stk[:] to stk where stk is a slice.

range_escapes2

CL 242901 [test] fix range iterator issue

reflect

CL 63651 arena allocation API experiment

CL 114002 arena allocation API experiment

CL 179338 replace type assertion with a call to Type.common()

CL 191199 treat nil Value ptr as zero value of type

CL 224577 Dan's arena

CL 236937 change example to cover up FiledByName ineffectiveness

CL 248341 added multiple keys support for struct tags

regex

CL 162828 use step in allMatches instead of manually processing runes

regexp

CL 87795 examples for Regexp.NumSubexp method

CL 118115 Clarify MatchString documentation.

CL 142197 add examples for regexp functions

CL 171417 Scan backwards for patterns ending in $

CL 171597 improve test coverage

CL 188800 optimize for provably too long inputs

CL 243399 link to the regexp syntax documentation from go doc regexp

runtime

CL 3027 (SUPER HACKY) refactor runtime with adonovan's sockdrawer

CL 5461 system topology discovery

CL 5760 faster timers

CL 8194 more tests of deadlock detection

CL 9499 factor out object start computation

CL 9540 split greyobject into greyobject and checkmarkObject

CL 9541 push heapBitsForObject into greyobject/checkmarkObject

CL 9542 grey objects in bulk

CL 9873 add a more extensive gdb test for backtracing

CL 10110 Make forEachP more robust

CL 10553 always set iscgo=true on windows

CL 14071 (EXTRA HACKY) pull atomics out into pkg runtime/internal/atomic

CL 15560 direct bitmap allocation

CL 16296 signal forwarding for darwin-386

CL 21287 Assist ratio schemes code

CL 23432 ring buffer for binary debug logging

CL 25060 fix thread spinning in needm

CL 30013 move memstats.gc_trigger to gcController.gcTrigger

CL 30132 map a huge page at a time

CL 30133 rewrite persistentalloc to eliminate internal fragmentation

CL 33809 use frame pointers for callers

CL 34031 user events

CL 34291 bound number of sweeps per allocation

CL 34930 consolidate minPhysPageSize and minLegalPointer

CL 37222 stack traces of endless recursion now print top and bottom

CL 37335 augment inuse heap profile with collected garbage

CL 37732 enable c-archive on all Unix and Windows systems

CL 38180 add SchedStats API

CL 40294 perform card marking in the write barrier

CL 40295 inline card mark on write barrier fast path

CL 42830 do not remove the SIGPROF handler

CL 42931 benchmark page fault performance

CL 44012 elapsed time tracking utilities

CL 44339 benchmark for lots of itabs

CL 45142 start goroutines with a 16K stack

CL 46411 augment inuse heap profile with collected garbage

CL 47270 heap characterization

CL 56591 low level card marking types and functions

CL 56592 heap characterization

CL 59390 strength reduce key pointer calculations in generic map functions

CL 60430 improve makemap overflow checks

CL 61191 specialize makeslice calls

CL 62971 reduce contention in gcDrain

CL 63651 arena allocation API experiment

CL 65010 generational scratch pad

CL 65210 fix unpaired atomic operations

CL 67610 heap characteristics cleanup

CL 67611 add Syslook logic

CL 67612 Remove flaky buildModePie test

CL 67613 improve comments and print statements

CL 68012 keep rescheduling fault page together

CL 68013 indirect fault-based loop preemption

CL 68014 make bad safe-points throw

CL 68016 use page unmapping to preempt loops in STW

CL 68017 don't acquire m.locks in forEachP

CL 68018 use global preemption in forEachP and stack scanning

CL 68020 ignore loop preemption signals in GDB

CL 72650 use a spin loop to wait before stealing runnext

CL 74431 use typedslicecopy for growslice

CL 77651 internal access to Linux perf_events API

CL 80975 allowUnsafePointerMaps

CL 94335 reset block, mutex profile counters after rate change

CL 95676 mark itab go:notinheap

CL 98335 Expose MemStats for previous GC cycles.

CL 102755 background profiling support

CL 105357 Add card marking

CL 105358 Sanity checks on pointer maps

CL 105359 generational scratch changes

CL 105360 fixup commit

CL 105361 fixup for early return if card marking is not on.

CL 105362 scratch work DO NOT MAIL

CL 105363 Standardize wb buffer ordering

CL 105364 Allow unsafe pointer maps and add card counters

CL 105365 Schedule generational vs. full cycle

CL 105366 Generational WB performance cleanup.

CL 105367 Gen GC without Write Barriers

CL 105368 Generational GC optimization

CL 105369 No WB cards with span granularity

CL 105370 No WB with N cards/span

CL 105371 No WB cards with rehash at full GC

CL 105372 No WB cards that reseeds hash at full GC

CL 105373 Collect no WB card stats

CL 109417 improve performance of grow() in mheap.go

CL 111356 use CLOCK_BOOTTIME in nanotime on Linux

CL 112199 noWBCards buffering for aeshash

CL 114002 arena allocation API experiment

CL 122577 test g0 stack overflow handling on all OSes

CL 125216 add windows verion of TestPanicSystemstack

CL 136555 experimental GC-related changes to scheduling

CL 136715 adjust mark-assist boost, put info in trace

CL 137475 panic if tidExist returns unexpected error

CL 137476 constants and data structures for generational GC

CL 137477 card table initialization

CL 137478 process a shard of cards

CL 137479 is GC cycle full or generational

CL 137480 divide card scanning work

CL 137481 make mark bits sticky

CL 137482 trigger generational GC

CL 137483 debugging and trace aids

CL 138857 log profile record buffer overflow/underflow

CL 138961 helper to compute span's "fullness"

CL 138962 use asynchronous sweeping for small allocations

CL 138963 simplify sweepone result

CL 139101 use wrappers for op= map operations

CL 139458 debug racy/re-entrant gcWork use

CL 144099 add support for -buildmode=c-shared for GOARCH=mips{,le}

CL 148823 wire g and p

CL 148898 abstract out sweepgen

CL 148901 preempt goroutines that make repeated syscalls/cgo calls

CL 148978 hack for span allocation tracing

CL 153359 enhance memmove() function using SVE instructions

CL 153717 PROCESS_ALL_ACCESS didn't check for 0XFFFF

CL 155539 add zerobase tests

CL 157977 minor refactor

CL 159377 calculate young object mortality rates

CL 159580 allow inlining the runtime.(un)lock fast paths

CL 160497 add pairing heap implementation

CL 162159 calculate pointer hashing times

CL 169837 support for getting snapshots from perf record

CL 171720 new timers

CL 172057 tweaks to permit high inlining levels

CL 174317 reserve 48 bytes in stack frame for ppc64

CL 176218 record locks held by M

CL 180077 add back elided stack footer on traces of over 100 depth

CL 181498 Allow users of FreeBSD OS to choose between MADV_FREE and MADV_DONTNEED.

CL 183317 fix SetMaxHeap semantics

CL 184442 unscavenge span without heap lock

CL 184497 block on background scavenger only if necessary

CL 185617 avoid re-acquiring heap lock in scavengeLocked

CL 187137 keep track of netpoll usage

CL 187297 fix gdb pretty print for slices

CL 187817 bound small object sweeping to 100 spans

CL 190519 fix the Goroutine scheduler comment

CL 190617 change the page size to 64 KiB

CL 191000 avoid panicking on sigaction failure for SIGRTMAX-1

CL 191959 move forcegchelper to gcenable

CL 192702 warn instead of failing on stale runtime

CL 192703 retain build tags in GOFLAGS

CL 192704 lock operation logging support

CL 193857 make the scavenger sleep for a computed time if its ahead

CL 193858 fix huge page breaking logic in scavengeSplit

CL 194657 add GODEBUG=stwtrace=1

CL 195577 enable go programs to crash on windows

CL 200397 add allocation latency histogram

CL 202082 make use of unsafe.Slice

CL 202449 simplify mtab.init

CL 202452 improve interface conversion panic text

CL 204279 limit SIGPROF rate to 250 Hz on Linux

CL 207442 experiment with less aggressive GC-ing based on triggerRatio

CL 207961 support non-cooperative preemption on windows/arm

CL 208218 stress testing for non-cooperative preemption

CL 209197 always set up TLS storage for darwin/arm64

CL 211307 use monontonic time consistently on Windows

CL 211803 state more explicitly the behavior for buffered channels in the chansend's fast path under extreme conditions.

CL 212301 use frame pointers to implement physicalCallers(), speed up trace

CL 212638 disable scavenge

CL 212639 disable the scavenger

CL 214139 add a not-empty field atomically checked to reduce timer lock overhead

CL 214585 remove page allocator fast path and spin

CL 214999 arrange to stop tickers when they are garbage collected

CL 220419 swap the order of raceacquire() and racerelease()

CL 221517 inject a VZEROUPPER on darwin/amd64 even if we don't preempt

CL 221686 implement DUFFZERO for riscv64

CL 221799 fix the alignment of large persistent allocations

CL 221800 round up the capacity of h.allspans to physical page size

CL 221801 use persistentalloc to allocate buckhash rather than sysAlloc

CL 221981 save signal context before calling sigpanic on unix/windows

CL 223637 remove duplicate disable wb operation

CL 223797 prefer to wake an idle P when enlisting bg mark workers

CL 224577 Dan's arena

CL 226284 remove TODO comment about NOFRAME, now done

CL 226517 avoid array clone during cgo call

CL 227799 optimize mutex logic of netpoll and resolve TODO item on aix

CL 227809 replace signal channel type with the empty struct in gcenable()

CL 228577 expand BenchmarkWakeupParallel tests

CL 228817 add alloctrace

CL 228820 simplify and optimize memmove for amd64

CL 228893 implement async preemption on Plan 9

CL 229084 update mspan comment

CL 229220 remove unnecessary uint32 convert for bits

CL 232298 reduce timer latency

CL 233361 deflake TestSpuriousWakeupsNeverHangSemasleep

CL 233417 directly goready() in StopTrace

CL 235527 correct *.Fatal inside goroutines in tests

CL 236148 avoid a bit of unneeded work when MemProfileRate==1

CL 236518 handle signal 34 for musl setgid

CL 237057 enable race detector on openbsd amd64

CL 237797 riscv64: use Duff's devices

CL 241080 don't smash the frame pointer slot in asmcgocall on ARM64

CL 241139 use RDTSCP for instruction stream serialized read of TSC

CL 241158 adjust frame pointer on stack copy on ARM64

CL 241357 drop redundant gcBlackenEnabled reset

CL 241741 drop unused work.ndone field

CL 242397 assume worst-case scan work in revise with max heap

CL 242677 define the AddrRange used for testing in terms of addrRange

CL 242678 add tests for addrRanges.findSucc

CL 242679 implement addrRanges.findSucc with a binary search

CL 242681 add tests for addrRanges.add

CL 242817 ignore zero-sized ranges passed to addrRanges.add

CL 243097 dump the status of lockedg on error

CL 243977 release worldsema with a direct G handoff

CL 244633 fixes so fp is correct for open-coded defers called in same frame after a recovery

CL 245484 check held locks with staticlockranking

CL 246579 use atomic decIfPositive

CL 246657 increase/decrease npidle counter before operate pidle list

CL 246738 implement variable-sized frames

CL 246960 define and enforce synchronization on heap_scan

CL 246961 load gcControllerState.scanWork atomically in revise

CL 246962 make next_gc atomically accessed

CL 246963 access the assist ratio atomically

CL 246964 make distributed/local malloc stats the source-of-truth

CL 246965 make nlargealloc and largealloc mcache fields

CL 246966 remove mcentral.nmalloc and add mcache.local_nsmallalloc

CL 246967 don't flush local_tinyallocs

CL 246968 flush local_scan directly and more often

CL 246969 rename mcache fields to match Go style

CL 246970 make the span allocation purpose more explicit

CL 246971 delineate which memstats are system stats with a type

CL 246972 copy in MemStats fields explicitly

CL 246973 break down memstats.gc_sys

CL 246974 remove memstats.heap_idle

CL 246975 remove memstats.heap_alloc

CL 246976 add helper for getting an mcache in allocation contexts

CL 247037 add consistent heap statistics

CL 247038 replace some memstats with consistent stats

CL 247039 move malloc stats into consistentHeapStats

CL 247041 add memory metrics

CL 247042 add readMetrics latency benchmark

CL 247043 add heap object count metric

CL 247044 add heap goal and GC cycle metrics

CL 247045 add object size distribution metrics

CL 247046 add timeHistogram type

CL 247047 add metric for distribution of GC pauses

CL 247048 add metric to track scheduling latencies

CL 247049 export goroutine count as a metric

CL 247050 disable stack shrinking in activeStackChans race window

CL 248577 add world-stopped assertions

CL 248699 use CreateWaitableTimerEx to implement usleep

CL 250179 factor out stackIsSystemAllocated

CL 250180 switch openbsd/amd64 to pthreads

CL 250182 switch openbsd/arm64 to pthreads

CL 250183 use stacks from system for openbsd/mips64

CL 250261 add sched.lock assertions

CL 250262 add heap lock assertions

CL 250517 rename pageAlloc receiver

CL 250577 switch openbsd/386 to pthreads

CL 250579 add defs for openbsd/mips64

CL 250580 add support for openbsd/mips64

CL 251060 object lifetime prediction

CL 253398 deprecate SetCPUProfileRate

CL 253417 add 2 byte and 8 byte test for BenchmarkIssue18740

CL 254057 align 12-byte objects to 8 bytes on 32-bit systems

CL 254367 drop nosplit from primary lockrank functions

CL 254659 implement GODEBUG=inittrace=1 support

CL 255817 implement dumpmemstats in terms of readmemstats_m

CL 256058 expand gopark documentation

runtime/cgo

CL 120858 use pthread stack bounds on Linux

CL 133938 MSVC toolchain support in cgo native code

runtime/debug

CL 46751 add SetMaxHeap API

CL 227767 [release-branch.go1.14] add SetMaxHeap API

runtime/internal/atomic

CL 233098 add tests for Store8 and HammerLoadStore8

runtime/memmove

CL 243357 improve memmove performance on arm64

runtime/metrics

CL 247040 add package interface

CL 247041 add memory metrics

CL 247043 add heap object count metric

CL 247044 add heap goal and GC cycle metrics

CL 247045 add object size distribution metrics

CL 247047 add metric for distribution of GC pauses

CL 247048 add metric to track scheduling latencies

CL 247049 export goroutine count as a metric

runtime/pprof

CL 97495 change default cpu sample rate to 99 Hz.

CL 163137 removed code duplication and changed writer for tabwriter

CL 188499 add new LabelSet construction helper to reduce allocations

CL 196497 don't recommend ignoring Close errors

CL 241138 remove labelMap indirection

CL 248728 add logging for debugging issue 40823

runtime/pprof/internal/profile

CL 160447 do not ignore error

runtime/trace

CL 132676 document missing params for WithRegion

sizeof

CL 241679 new package with constants for Int, Uint, Uintptr, Int8, etc.

CL 242018 consolidate hardware size constants

sort

CL 101415 implement asymptotically optimal Stable

CL 236778 use math/bits.Len32 for log2(length) instead of loop

CL 237437 improve speed of HeapSort

src/run.bash

CL 173159 print version when running tests

src/runtime/testdata/testprogcgo

CL 218798 fix goroutine leak on timeout

src/time

CL 243402 Support LMT in MarshalBinary, UnmarshalBinary

ssa

CL 183677 partial prototype for open-coded defers.

CL 237797 riscv64: use Duff's devices

strconv

CL 170078 implement Ryū-like algorithm for atof

CL 170079 implement Ryū-like algorithm for fixed precision ftoa

CL 170080 Implement Ryū algorithm for ftoa shortest mode

CL 172077 benchmark large string in AppendQuoteToASCII

CL 248219 fix incorrect bit size in ParseComplex; add tests

strings

CL 66374 simplify (*byteReplacer).WriteString

CL 77092 switch Index to the Two-Way string matching algorithm

CL 202077 make Title treat Unicode punctuation as separators

CL 224097 change examples for ToTitle and Title, fixes #37334

CL 240521 add support to split in reverse direction

CL 242259 add Copy function

CL 244858 improve performance of ToUpper and ToLower

CL 247523 complete documentation of strings.Reader

sync

CL 16469 make Mutex fair

CL 33272 deflake TestWaitGroupMisuse2

CL 60570 Deduplicate some code in sync/map.go

CL 127552 add an example for Mutex

CL 132935 add examples for Map and Map.Range

CL 136115 clarify proper Pool usage for dynamically sized buffers

CL 153598 added an example for sync.Cond

CL 161722 add examples for Map

CL 172277 keep looping in TestWaitGroupMisuse{2,3} until the test times out

CL 174205 add examples for Mutex and RWMutex

CL 189837 avoid a dynamic check in WaitGroup on 64-bit architectures

CL 215359 add benchmark for issue 17973.

CL 215360 refactor RWMutex slightly to prepare for future changes.

CL 215361 Implement a version of RWMutex that can avoid cache contention.

CL 215362 Implement a procLocal abstraction.

CL 215364 implement the RWMutex's lockTable type.

CL 215365 write a benchmark for RLocks with a full table.

CL 234497 document the happens-before guarantees made by WaitGroup.

sync/atomic

CL 105041 split examples to a different file

CL 126295 make atomic.Value more useful

CL 133656 add example for CompareAndSwapInt32

CL 239166 add noCopy annotation to Value

CL 241661 use a better first-store-in-progress marker

CL 241678 add (*Value).Swap and (*Value).CompareAndSwap

CL 251797 remove duplicated comment for atomic.Value

sync/cond.go

CL 253378 add explanation comments to check func

syscall

CL 8683 implement FileConn, FileListener

CL 18253 extra error source info for StartProcess

CL 84896 use jobs to wait for process completion on windows

CL 160828 perform environment variable sort for createEnvBlock

CL 162037 add Sys field to Interface for system-dependent information

CL 171719 add more Getdirentries buf size validation (freebsd)

CL 180398 allow returning thread handle from StartProcess

CL 208537 add WSAENOBUFS and WSAEMFILE error codes to mark them as temporary.

CL 210639 support POSIX semantics for Linux syscalls

CL 235198 support O_SYNC flag for os.OpenFile on windows

CL 237737 add Get/Set methods to Stat_t.Size, Flock_t.{Start,Len}

CL 242999 document Sysinfo_t

CL 243902 remove dependency on io

CL 250581 add support for openbsd/mips64

syscalls

CL 255319 Separate illumos from solaris.

testing

CL 47411 add support for benchsplit flag

CL 92617 add option for running benchmarks a fixed number of iterations.

CL 145279 mention the "_test" package idiom

CL 146897 add SetBenchmarkLabel

CL 149720 correct benchmark output when running in parallel

CL 210979 print extra precision in the benchmark output

CL 219977 allow m.Run return if a test panics

CL 227499 use QueryPerformanceCounter for benchmarks

CL 230978 fail benchmarks that don't loop over b.N

CL 231717 reduce memory allocation in Helper()

CL 247057 move Internal types to internal package

CL 248257 add a couple of locks to guard Cleanup

CL 250950 fix failure using TempDir in Benchmark

CL 251597 inject new line if test ends in an incomplete line

CL 252637 [release-branch.go1.15] flush test summaries to stdout atomically when streaming output

CL 252638 [release-branch.go1.14] flush test summaries to stdout atomically when streaming output

CL 256098 send t.signal only if there is no panic

testing/fstest

CL 243910 new package for testing file system code

testing/iotest

CL 243909 add TestReader to test readers

tests

CL 133942 update various tests to prepare for MSVC compiler toolchain

text/tabwriter

CL 202257 add ANSI Graphics Rendition format

text/template

CL 144657 clarify truthiness of structs

CL 153339 make Execute copy io.Reader content

CL 243938 add ParseFS

CL 254257 allow newlines inside action delimiters

time

CL 104215 Improve example for Sleep

CL 144104 add an example on how to create a timestamp using a time object

CL 150137 parse dates using textual suffixes like "nd"

CL 163260 fix parse month error message

CL 167381 fail when Parse is given a stdNumTZ as stdTZ

CL 168460 Make conver constant public. Remove magic numbers from some time constants

CL 214999 arrange to stop tickers when they are garbage collected

CL 238540 don't allow early expiration in TestTicker

CL 240357 parse RFC5233 timezone UT correctly

CL 250719 avoid racing condition in NewTricker example

unicode

CL 154419 update Unicode tables using new generator

unicode/utf8

CL 33637 use range statement for RuneCountInString

unsafe

CL 48965 document conversion of bytes to struct

vet

CL 60950 add test case for build constraint(tag)

wrapper

CL 184818 built-in wrapper interface

x/arch/README.md

CL 254804 dummy change DO NOT REVIEW DO NOT SUBMIT

x/blog

CL 235525 content - amend reference to dated bug

CL 235897 Fix link and improve wording

CL 237820 The link of ⌘ is not available

CL 245161 added a trivial case that can save developers time in quick onboarding

x/blog/blog

CL 254803 dummy change DO NOT REVIEW DO NOT SUBMIT

x/blog/content

CL 226207 fix typo in concurrency-timeouts.article

CL 252825 explain double-pointer in errors.As example

x/blog/x/blog

CL 251559 fix images so that they actually render

CL 252877 add non-pointer note for errors.As example

x/build

CL 234660 Expose more ReviewInfo fields in the Go Gerrit client

x/build/all

CL 177918 add linux-mips64le qemu builder, cross-compiling from a fast VM

CL 188501 add riscv64 cross builder

x/build/build/maintner

CL 229017 Handle comment sync on deleted GitHub issue

x/build/buildlet

CL 225697 use plan9LogWriter only on GCE

x/build/cmd/coordinator

CL 103871 include the Change-ID in the farmer URL

CL 227319 add attempt prefix to TryBot runs

x/build/cmd/debugnewvm

CL 227441 add -override-machine flag

x/build/cmd/downscope

CL 129495 new command to trail audit logs for in-use permissions

x/build/cmd/gopherbot

CL 38285 add -review flag for checking Gerrit CL for invalid

CL 127930 change issue notification comment to include author name

CL 145658 freeze issues after 30 days, link to Questions wiki page

CL 170863 CC triaged issues to owners

CL 171238 assign reviewers based on commit message prefixes

CL 181977 add the author of the change to the notification on github

CL 182419 relaxed matching rule for the documentation label

x/build/cmd/racebuild

CL 239499 add OpenBSD platform

x/build/dashboard

CL 250117 add openbsd-arm64-joelsing builder (reverse)

CL 250118 add openbsd-mips64-joelsing builder (reverse)

x/build/devapp/owners

CL 252059 add codyoss as an owner of oauth2

CL 255437 remove hanwen as SSH owner

x/build/env

CL 163005 add Dockerfile for generating a Fuchsia buildlet

x/build/env/android-amdn64-emu

CL 235098 upgrade NDK to version 21.1.6352462

x/build/env/openbsd

CL 176237 add OpenBSD 6.5 release builder

x/build/gerrit

CL 215341 add GetContent method

CL 221614 add ListChangeComments method

x/build/internal

CL 255358 add a shared polling function

x/build/internal/coordinator/pool

CL 255358 add a shared polling function

x/build/internal/secret

CL 255941 add a must constructor for the secret client

x/build/maintner

CL 151658 add ability to define custom checks on sync errors

CL 152017 corpus can now add GitHub and Gerrit repos while in SyncLoop

CL 160699 tombstone issues that are moved to a differnt repository

CL 161521 correctly tombstone "transferred" issues

CL 170338 support gcslog updates from master mutation source

CL 176638 correctly tombstone "transferred" issues

CL 205598 add function to mark an Issue as Tombstoned

x/build/maintner/maintnerd/maintapi/version

CL 245277 support beta and RC release tags

x/build/x/build

CL 39536 added age-based retry refusal.

x/build/x/build/cmd/gopherbot

CL 185897 do not consider nested backport requests

x/crypto

CL 115336 adding new key wrap support as per rfc 3394 and 5649

CL 189338 Disambiguate error messages

CL 203337 Make default hash SHA-1 per RFC 4880 section 9.4

CL 209963 Test more OCSP ResponseStatus cases

CL 212359 Generates a public key from existing private key.

CL 219397 add cipher support for aes256-cbc aes192-cbc

CL 224857 Use correct default hashes and default ciphers when no preferences given

CL 226982 Add support for "hmac-sha2-512-etm@openssh.com"

CL 233166 Unmarshal subproblems from problem details

CL 234267 knownhost to support io.reader

CL 253820 Update bcrypt.go

x/crypto/#29286

CL 154458 proposal for interface which exposes either callback or db.

x/crypto/acme

CL 86635 Implement IETF draft-12

CL 209678 add support for external account bindings

CL 244617 Allow to customize isRetriable fn on the ACME client

x/crypto/acme/autocert

CL 155744 Enable custom ports

x/crypto/all

CL 80300 fix more issues reported by golint

x/crypto/argon2

CL 102422 add AVX2 implementation

CL 189878 fix panic when calling IDKey or Key with keyLen == 0

x/crypto/bcrypt

CL 177818 document 72-byte password length limit

CL 193079 add easy bcrypt example

x/crypto/blake2s

CL 241437 Allow computing variable-length digests.

x/crypto/crypto/ocsp

CL 216423 Add Raw field to ocsp.Response

x/crypto/crypto/openpgp

CL 38060 Support encryption of private keys

CL 198119 added compression in Encrypt function

x/crypto/crypto/poly1305

CL 105896 add arm64 implementation using multiword arithmetic

x/crypto/crypto/rc6

CL 73032 New package

x/crypto/crypto/salsa20/salsa

CL 235057 use stdlib rather than rotating/encoding by hand

x/crypto/crypto/ssh/terminal

CL 255883 add Terminal.GetPrompt method

x/crypto/cryptobyte

CL 98135 add support for UTCTIME values

x/crypto/cryptotest

CL 112315 new package

x/crypto/curve25519

CL 39770 improve amd64 ladderstep assembly

CL 165877 add faster X25519 for amd64 arch

CL 205158 implement new X25519 API

CL 242177 import fiat-crypto code

x/crypto/ed25519

CL 71950 improve EdDSA performance by 20-50% on amd64

CL 174941 implement Ed25519ph

x/crypto/internal/wycheproof

CL 234917 add RSA OAEP decryption tests

x/crypto/md4

CL 104576 implement BinaryMarshaler, BinaryUnmarshaler

x/crypto/ocsp

CL 34664 check OCSP EKU and valdity time on embedded responder certificates.

CL 37878 replace encoding/asn1 with cryptobyte

CL 220353 Improve documentation for ParseResponse and ParseResponseForCert

x/crypto/opengpg

CL 214478 ignore unsupported signatures in addUserID if there are other, valid signatures

x/crypto/openpgp

CL 32890 use prompt function to decrypt private key

CL 60990 add policy URI and notation data for OpenPGP Signatures

CL 118995 implement Cert Revocation Signature

CL 120315 add FlagsAuthenticate, FlagsGroupKey and FlagsSplitKey support to packet.Signature

CL 120555 add PreferredKeyServer support to packet.Signature

CL 132755 Define s2k magic numbers as consts

CL 137955 Handle DSA crypto.Signer

CL 149677 fix infinite loop on unknown cipher type / key

CL 161817 add RevokeKey, RevokeSubkey and AddSubkey methods to Entity

CL 191658 support GNU dummy S2K for missing private keys

x/crypto/openpgp/packet/signature

CL 133255 output reason for revocation

x/crypto/pbkdf2

CL 85535 use larger int64 iteration counts and key lengths

x/crypto/ripemd160

CL 104576 implement BinaryMarshaler, BinaryUnmarshaler

x/crypto/scrypt

CL 191760 explain how to generate a salt

CL 253357 use encoding/binary to simplify smix

x/crypto/sha3

CL 104576 implement BinaryMarshaler, BinaryUnmarshaler

CL 108715 add NewKMAC128 and NewKMAC256

CL 119255 implement assembly implementation on ARM

x/crypto/ssh

CL 35958 print faulty direction in the panic message.

CL 38454 add NoClientAuthCallback

CL 38531 exit auth loop on ForceDisconnectError

CL 75050 fix invalidation of the timeout when target is not a ssh server

CL 85155 remove arcfour{128,256} from default cipher list

CL 98056 add hmac-sha2-512.

CL 171682 implement zlib@openssh.com compression

CL 175978 add ssh partial success for ssh server 2FA

CL 190777 disable wantReply in some requests to comply with OpenSSH

CL 193117 export a transport interface

CL 218620 support for marshaling keys using the OpenSSH format

CL 220037 support RSA SHA-2 (RFC8332) signatures

CL 222077 fix ssh tests pass on non standard login shells

CL 223518 add support for aes256-gcm@openssh.com

CL 227781 add support for server side multi-step authentication

CL 234018 known_host comments with spaces break on m