Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cmd/go: 'go mod edit -exclude' erroneously rejects '+incompatible' versions #44497

Closed
bcmills opened this issue Feb 22, 2021 · 8 comments
Closed

cmd/go: 'go mod edit -exclude' erroneously rejects '+incompatible' versions #44497

bcmills opened this issue Feb 22, 2021 · 8 comments
Assignees
Milestone

Comments

@bcmills
Copy link
Member

@bcmills bcmills commented Feb 22, 2021

In CL 279394 and CL 283853, we added version validation for the -retract and -exclude flags of the go mod edit command.

Unfortunately, something about that validation is off: go mod edit -exclude with a +incompatible version should succeed (and does with go 1.15.8), but instead it fails with version … invalid: must be of the form v1.2.3.

In CL 279394 we are calling semver.Canonical, but in light of this bug I believe we should be using module.CanonicalVersion instead. (The two are very easily confused, and we missed this problem during code-review and testing.)

#44494 may or may not be related. (I noticed this while investigating go-chi/chi#561.)

$ go version
go version devel +0f66fb7b8 Sun Feb 21 02:25:41 2021 +0000 linux/amd64

$ go mod init example.com
go: creating new go.mod: module example.com

$ go get -d github.com/99designs/gqlgen
go: downloading github.com/99designs/gqlgen v0.13.0
go: downloading github.com/vektah/dataloaden v0.2.1-0.20190515034641-a19b9a6e7c9e
go: downloading github.com/matryer/moq v0.0.0-20200106131100-75d0ddfc0007
go: downloading github.com/pkg/errors v0.8.1
go: downloading github.com/urfave/cli/v2 v2.1.1
go: downloading github.com/vektah/gqlparser/v2 v2.1.0
go: downloading gopkg.in/yaml.v2 v2.2.4
go: downloading github.com/gorilla/websocket v1.4.2
go: downloading golang.org/x/tools v0.0.0-20200114235610-7ae403b6b589
go: downloading github.com/mitchellh/mapstructure v0.0.0-20180203102830-a4e142e9c047
go: downloading github.com/hashicorp/golang-lru v0.5.0
go: downloading github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d
go: downloading github.com/agnivade/levenshtein v1.0.3
go: downloading github.com/russross/blackfriday/v2 v2.0.1
go: downloading github.com/shurcooL/sanitized_anchor_name v1.0.0
go get: added github.com/99designs/gqlgen v0.13.0

$ go list -m github.com/go-chi/chi
github.com/go-chi/chi v3.3.2+incompatible

$ go mod edit -exclude github.com/go-chi/chi@v3.3.2+incompatible
go mod: -exclude=github.com/go-chi/chi@v3.3.2+incompatible: version "v3.3.2+incompatible" invalid: must be of the form v1.2.3

$ go1.15.8 mod edit -exclude github.com/go-chi/chi@v3.3.2+incompatible

$ go list -m github.com/go-chi/chi
go list -m: module github.com/go-chi/chi: not a known dependency

CC @jayconrod @matloob

@bcmills bcmills added this to the Go1.17 milestone Feb 22, 2021
@bcmills
Copy link
Member Author

@bcmills bcmills commented Feb 22, 2021

@gopherbot, please backport to Go 1.16: this results in confusing (and incorrect) errors on the command line.

@gopherbot
Copy link

@gopherbot gopherbot commented Feb 22, 2021

Backport issue(s) opened: #44498 (for 1.16).

Remember to create the cherry-pick CL(s) as soon as the patch is submitted to master, according to https://golang.org/wiki/MinorReleases.

@gopherbot
Copy link

@gopherbot gopherbot commented Feb 22, 2021

Change https://golang.org/cl/295089 mentions this issue: modfile: check canonicalness against the relevant module path, not abstract semver

@gopherbot
Copy link

@gopherbot gopherbot commented Feb 22, 2021

Change https://golang.org/cl/295150 mentions this issue: cmd/go: fix version validation in 'go mod edit -exclude'

@gopherbot
Copy link

@gopherbot gopherbot commented Feb 22, 2021

Change https://golang.org/cl/295149 mentions this issue: cmd/go: reproduce issue #44497 in TestScript/mod_edit

gopherbot pushed a commit to golang/mod that referenced this issue Feb 23, 2021
…stract semver

In CL 279394 we started validating that versions in "exclude" and
"retract" directives are canonical. Unfortunately, we use the semver
package's notion of canonicalness, and the semver package doesn't know
anything about +incompatible versions or major-version suffixes.

The resulting error messages also don't indicate an appropriate fix if
the problem is that the user forgot either the "+incompatible" suffix
on the version string or the "/vN" suffix on the module path.

This change corrects both of those problems by validating the version
against the corresponding module path. (For "exclude" directives, that
is the module path to be excluded; for "retract" directives, it is the
module declared in the "module" directive of the same go.mod file.)

For golang/go#44497

Change-Id: I39732d79c3ab3a43bb1fb8905062fe6cb26d3edc
Reviewed-on: https://go-review.googlesource.com/c/mod/+/295089
Trust: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Jay Conrod <jayconrod@google.com>
Reviewed-by: Michael Matloob <matloob@golang.org>
gopherbot pushed a commit that referenced this issue Feb 23, 2021
For #44497

Change-Id: Ie5285b9c526506b6b1280a590a5dcbee4074f57b
Reviewed-on: https://go-review.googlesource.com/c/go/+/295149
Trust: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Jay Conrod <jayconrod@google.com>
@gopherbot gopherbot closed this in 691ac80 Feb 24, 2021
@gopherbot
Copy link

@gopherbot gopherbot commented Feb 24, 2021

Change https://golang.org/cl/295930 mentions this issue: [release-branch.go1.16] cmd/go: fix version validation in 'go mod edit -exclude'

@gopherbot
Copy link

@gopherbot gopherbot commented Feb 24, 2021

Change https://golang.org/cl/295931 mentions this issue: [internal-branch.go1.16-vendor] modfile: check canonicalness against the relevant module path, not abstract semver

gopherbot pushed a commit to golang/mod that referenced this issue Mar 1, 2021
…the relevant module path, not abstract semver

In CL 279394 we started validating that versions in "exclude" and
"retract" directives are canonical. Unfortunately, we use the semver
package's notion of canonicalness, and the semver package doesn't know
anything about +incompatible versions or major-version suffixes.

The resulting error messages also don't indicate an appropriate fix if
the problem is that the user forgot either the "+incompatible" suffix
on the version string or the "/vN" suffix on the module path.

This change corrects both of those problems by validating the version
against the corresponding module path. (For "exclude" directives, that
is the module path to be excluded; for "retract" directives, it is the
module declared in the "module" directive of the same go.mod file.)

Updates golang/go#44497
For golang/go#44498

Change-Id: I39732d79c3ab3a43bb1fb8905062fe6cb26d3edc
Reviewed-on: https://go-review.googlesource.com/c/mod/+/295089
Trust: Bryan C. Mills <bcmills@google.com>
Reviewed-by: Jay Conrod <jayconrod@google.com>
Reviewed-by: Michael Matloob <matloob@golang.org>
(cherry picked from commit 66f6d92)
Reviewed-on: https://go-review.googlesource.com/c/mod/+/295931
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
gopherbot pushed a commit that referenced this issue Mar 1, 2021
…t -exclude'

The fix is to pull in CL 295931 from the x/mod repo.

Updates #44497
Fixes #44498

Change-Id: I008b58d0f4bb48c09d4f1e6ed31d11a714f87dc0
Reviewed-on: https://go-review.googlesource.com/c/go/+/295150
Trust: Bryan C. Mills <bcmills@google.com>
Run-TryBot: Bryan C. Mills <bcmills@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Jay Conrod <jayconrod@google.com>
Reviewed-by: Michael Matloob <matloob@golang.org>
(cherry picked from commit 691ac80)
Reviewed-on: https://go-review.googlesource.com/c/go/+/295930
@gopherbot
Copy link

@gopherbot gopherbot commented Mar 4, 2021

Change https://golang.org/cl/298649 mentions this issue: [dev.go2go] all: merge master (12bb256) into dev.go2go

gopherbot pushed a commit that referenced this issue Mar 5, 2021
Included in this merge are CL 293010 switching to a new ast.ListExpr for
type argument lists (instead of overloading CallExpr), and CL 295929
partially hiding the new type parameter API.

As a result of those two CLs, the following changes were made to fix the
go2go tool:
 + Update the go2go rewriter for the new syntax.
 + Update test cases to eliminate some remaining '()' syntax for type
   argument lists.
 + Add new files exposing the now-hidden API.

These changes can be reviewed by comparing the latest patchset to
patchset 1.

Merge List:

+ 2021-03-04 12bb256 go/types: use correct recv for parameterized embedded methods
+ 2021-03-03 6db80d7 cmd/compile/internal/types2: use correct recv for parameterized embedded methods
+ 2021-03-03 d6f6ef6 cmd/compile: remove races introduced in abiutils field update
+ 2021-03-03 3e524ee cmd/compile: make modified Aux type for OpArgXXXX pass ssa/check
+ 2021-03-03 9f33dc3 cmd/compile: handle aggregate OpArg in registers
+ 2021-03-03 c4e3f6c cmd/compile: remove 8-byte alignment requirement of stack slot on s390x
+ 2021-03-03 85f62b0 cmd/compile: remove 8-byte alignment requirement of stack slot on mips
+ 2021-03-03 497feff cmd/compile: intrinsify runtime/internal/atomic.{And,Or}{8,} on RISCV64
+ 2021-03-03 00cb841 syscall: implement rawVforkSyscall for remaining linux platforms
+ 2021-03-03 f2df1e3 cmd/compile: retrieve Args from registers
+ 2021-03-03 06c72f3 A+C: change email address for Baokun Lee
+ 2021-03-03 84ca494 cmd/compile: remove 8-byte alignment requirement of stack slot on mips64
+ 2021-03-03 7797386 cmd/compile: use abiutils for all rcvr/in/out frame offsets.
+ 2021-03-03 aea1259 cmd/link: disable flaky Darwin "symbols" test
+ 2021-03-02 312fd99 cmd/go: remove -insecure flag on go get
+ 2021-03-02 2a2f99e cmd/go/internal/modload: do not resolve an arbitrary version for 'go list --versions'
+ 2021-03-02 b65091c cmd/go: add a test case that reproduces #44296
+ 2021-03-02 e9eed78 cmd/go: resolve std-vendored dependencies as std packages except in 'go get' and 'go mod'
+ 2021-03-02 09f4ef4 cmd/go/internal/mvs: prune spurious dependencies in Downgrade
+ 2021-03-02 c6374f5 dist: generate stub go.mod in workdir
+ 2021-03-02 97b32a6 cmd/compile: better version of check frame offsets against abi
+ 2021-03-02 2b50ab2 cmd/compile: optimize single-precision floating point square root
+ 2021-03-02 ebb92df internal/poll, runtime: handle netpollopen error in poll_runtime_pollOpen
+ 2021-03-02 4c1a7ab49c cmd/go: reject relative paths in GOMODCACHE environment
+ 2021-03-02 580636a all: fix spelling
+ 2021-03-02 a6eeb4a go/parser,go/types: hide API changes related to type parameters
+ 2021-03-02 ff5cf4c cmd/link,debug/elf: mips32, add .gnu.attributes and .MIPS.abiflags sections
+ 2021-03-01 700b739 runtime: use entersyscall in syscall_syscallX on Darwin
+ 2021-03-01 a69c452 go/types: review of expr.go
+ 2021-03-01 b98ce3b cmd/compile:  import empty closure function correctly
+ 2021-03-01 97bdac0 cmd: upgrade golang.org/x/mod to relax import path check
+ 2021-03-01 f6a74c6 cmd/compile/internal/ir: fix up stale comment
+ 2021-03-01 87beecd cmd/go: add missing newline to retraction warning message
+ 2021-03-01 a400eb3 Revert "cmd/compile: check frame offsets against abi"
+ 2021-03-01 5fafc0b cmd/go/internal/modload: don't query when fixing canonical versions
+ 2021-03-01 2a8df44 os: mark pipes returned by os.Pipe() as inheritable by default
+ 2021-02-27 5ff7ec9 cmd/compile: check frame offsets against abi
+ 2021-02-27 a429926 cmd/compile: fix escape analysis of heap-allocated results
+ 2021-02-27 998fe70 cmd/compile: fixed which-result confusion in presence of 0-width types
+ 2021-02-27 d9fd38e time: correct unusual extension string cases
+ 2021-02-26 cda8ee0 reflect: fix register ABI spill space calculation
+ 2021-02-26 d8e33d5 cmd/compile: deal with closures in generic functions and instantiated function values
+ 2021-02-26 19f96e7 syscall: introduce SysProcAttr.ParentProcess on Windows
+ 2021-02-26 3146166 syscall: introduce SysProcAttr.AdditionalInheritedHandles on Windows
+ 2021-02-26 2d76081 syscall: restrict inherited handles on Windows
+ 2021-02-26 ba9168b syscall: add support for proc thread attribute lists
+ 2021-02-26 f414601 cmd/link: recognize ARM64 PE files and relocations
+ 2021-02-26 a655208 cmd/link: handle types as converted to interface when dynlink
+ 2021-02-26 23943a6 cmd/compile: fix mishandling of unsafe-uintptr arguments with call method in go/defer
+ 2021-02-26 e25040d cmd/compile: change StaticCall to return a "Results"
+ 2021-02-26 9a555fc cmd/compile:  fix missing descend in Addrtaken for closures.
+ 2021-02-25 a61524d cmd/internal/obj: add Prog.SetFrom3{Reg,Const}
+ 2021-02-25 5f15af1 syscall: comment on fields omitted from the win32finddata1 struct
+ 2021-02-25 9a7fe19 Revert "cmd/compile: fix mishandling of unsafe-uintptr arguments with call method in go/defer"
+ 2021-02-25 b83d073 reflect: add Method.IsExported and StructField.IsExported methods
+ 2021-02-25 7fcf989 cmd/internal/obj: fix typo in docs
+ 2021-02-25 6c3bcda cmd/compile: declare inlined result params early for empty returns
+ 2021-02-25 526ee96 os: avoid allocation in File.WriteString
+ 2021-02-25 194b636 database/sql: close driver.Connector if it implements io.Closer
+ 2021-02-25 4ebb6f5 cmd/compile: automate resultInArg0 register checks
+ 2021-02-25 1a3e968 cmd/compile: fix mishandling of unsafe-uintptr arguments with call method in go/defer
+ 2021-02-25 ee2a45e runtime: use pipe2 for nonblockingPipe on dragonfly
+ 2021-02-25 1f7a014 runtime: batch moving gFree list between local p and global schedt
+ 2021-02-25 bcac57f cmd: upgrade golang.org/x/mod to fix go.mod parser
+ 2021-02-25 3137da8 cmd/go: add a script test corresponding to the downhiddenartifact MVS test
+ 2021-02-25 2c4c189 cmd/go/internal/mvs: add test cases for downgrade interaction with hidden versions
+ 2021-02-25 9fe8ebf test: add test case that failed with gccgo
+ 2021-02-25 ad17b65 testing/fstest: treat dash specially when building glob
+ 2021-02-25 37ca84a syscall: return error if GetQueuedCompletionStatus truncates key
+ 2021-02-25 76c0003 syscall, os: use pipe2 syscall on DragonflyBSD instead of pipe
+ 2021-02-25 666ad85 cmd/compile: fix typo in rewrite_test.go
+ 2021-02-25 d822ffe test: fix inline.go test for linux-amd64-noopt
+ 2021-02-25 ff614b1 runtime: subtract one from ip when determining abort
+ 2021-02-24 dbbc5ec syscall: restore broken GetQueuedCompletionStatus signature but make it not crash
+ 2021-02-24 d0d21b7 cmd/compile: plumb abi info into expandCalls
+ 2021-02-24 8027343 cmd/compile: disable inlining functions with closures for now
+ 2021-02-24 6c3f8a2 cmd/link: use ctxt.Logf instead of package log
+ 2021-02-24 3ee3243 cmd/compile: ARM64 optimize []float64 and []float32 access
+ 2021-02-24 80ddc17 cmd/compile/internal-abi: fix ABI0-equivalence for zero-sized values
+ 2021-02-24 3deb528 cmd/compile/internal-abi: update internal ABI spec for g register
+ 2021-02-24 478277f cmd/compile/internal-abi: use x87 mode, not MMX mode
+ 2021-02-24 bf48163 cmd/compile: add rule to coalesce writes
+ 2021-02-24 b7f62da cmd/internal/goobj: add test case for object file reader
+ 2021-02-24 c9d9b40 context: avoid importing context package twice
+ 2021-02-24 dc4698f syscall: do not overflow key memory in GetQueuedCompletionStatus
+ 2021-02-24 7a2f327 cmd/compile: plumb abi info into ssagen/ssa
+ 2021-02-24 adb467f cmd/compile: reduce inline cost of OCONVOP
+ 2021-02-24 27684ea testing: print late arriving log line in panic
+ 2021-02-24 ae1fa08 context: reduce contention in cancelCtx.Done
+ 2021-02-24 691ac80 cmd/go: fix version validation in 'go mod edit -exclude'
+ 2021-02-24 b97b145 cmd/go, cmd/cgo: pass -mfp32 and -mhard/soft-float to MIPS GCC
+ 2021-02-24 07c6583 io/ioutil: forward TempFile and TempDir to os package
+ 2021-02-24 04edf41 encoding/json: reduce allocated space in Unmarshal
+ 2021-02-24 e496120 database: remove race in TestTxContextWait
+ 2021-02-24 26001d1 go/types: review of call.go
+ 2021-02-24 35b80ea hash/maphash: remove duplicate from Hash documentation
+ 2021-02-24 eb86324 runtime: remove unused const stackSystem on dragonfly
+ 2021-02-24 084b07d spec: improve sentence structure for passing a slice
+ 2021-02-24 6ba4a30 docs: fix spelling
+ 2021-02-24 43652dc bufio, bytes, strings: handle negative runes in WriteRune
+ 2021-02-24 3780529 unicode: correctly handle negative runes
+ 2021-02-24 0694fb3 image: resolve the TODO of doc comment style
+ 2021-02-23 6cc8aa7 go/types: minor updates to comments to align with types2
+ 2021-02-23 42b9e3a context: fix XTestInterlockedCancels
+ 2021-02-23 aaed6cb testing/race: fixing intermittent test failure
+ 2021-02-23 fbed561 runtime: reset stack poison flag accidentally set
+ 2021-02-23 0458d8c go/types, types2: constraints may be parenthesized and that includes "any"
+ 2021-02-23 7490355 doc: start draft go1.17 release notes, move go1.16 to x/website
+ 2021-02-23 fa40c02 cmd/go: reproduce issue #44497 in TestScript/mod_edit
+ 2021-02-23 a4dac8b runtime: use BX instead of R15 in race detector
+ 2021-02-23 c49c7a6 runtime: save R15 before checking AVX state
+ 2021-02-23 d2911d7 cmd/compile: fold MOV*nop and MOV*const
+ 2021-02-23 d434c23 runtime: clarify GC fractional mode description
+ 2021-02-23 a671e33 all: use more precise build tags
+ 2021-02-23 c584f42 cmd/compile: change riscv64 Eq32/Neq32 to zero extend before subtraction
+ 2021-02-23 0801197 runtime: fix usleep on windows/arm
+ 2021-02-23 74cac8d cmd/compile: add AMD64 parameter register defs, Arg ops, plumb to ssa.Config
+ 2021-02-23 42cd40e cmd/compile: improve bit test code
+ 2021-02-23 f1562c7 cmd/go: recognize DLL magic from llvm binaries
+ 2021-02-23 bf5fa2d cmd/compile: guard special register usage with GOEXPERIMENT=regabi
+ 2021-02-23 c7f596f cmd/go: resolve TODO by replacing InDir() function
+ 2021-02-23 5e94fe9 go/build/constraint: fix splitPlusBuild func doc comment
+ 2021-02-23 55d7dcc runtime: optimize the memory padding in p struct
+ 2021-02-23 ab331c0 runtime/cgo: use correct lean and mean macro
+ 2021-02-23 91cfbf3 cmd/link: set .ctors COFF section to writable and aligned
+ 2021-02-23 811167e cmd/link: do not pass -Bsymbolic for PE DLLs
+ 2021-02-23 a51daac cmd/link: set SizeOfRawData rather than VirtualSize in COFF files for .bss section
+ 2021-02-23 e5159b2 cmd/internal/dwarf: minor cleanups
+ 2021-02-23 b3b65f2 runtime: enable race detector on openbsd/amd64
+ 2021-02-23 a78b0e6 internal/poll: fix the verbose condition in splice
+ 2021-02-23 08543f0 ios/fs: mention f.dir in (*subFS).fixErr godoc
+ 2021-02-23 0398a77 cmd/internal/obj/riscv: prevent constant loads that do not target registers
+ 2021-02-23 6525abd cmd/internal/obj/riscv: clean up branch tests
+ 2021-02-23 c4b7713 runtime: fix windows/arm signal handling assembly
+ 2021-02-23 2a18e37 cmd/compile: remove backend's "scratch mem" support
+ 2021-02-23 e521498 cmd/compile: simplify assert{E,I}2I{,2} calling conventions
+ 2021-02-23 86deb45 cmd/compile: remove selectnbrecv2
+ 2021-02-23 4048491 cmd/compile,runtime: make selectnbrecv return two values
+ 2021-02-23 5e804ba cmd/compile: use transitive relations for slice len/cap in poset
+ 2021-02-23 6a40dd0 cmd/compile/internal/types2: review of sanitize.go
+ 2021-02-23 975ba6e cmd/compile: mark OpSB, OpSP as poor statement Op
+ 2021-02-23 a2e150c go/types, cmd/compile/internal/types2: use regular type printing for unsafe.Pointer
+ 2021-02-23 5a0e4fc cmd/compile/internal/types2: review of conversions.go
+ 2021-02-23 89eb2b5 cmd/compile/internal/types2: review of issues_test.go
+ 2021-02-23 378f73e cmd/compile/internal/types2: enable TestIssue25627
+ 2021-02-23 1901e26 test: add test for findTypeLoop with symbols from other packages
+ 2021-02-23 5f3dabb cmd/compile: fix import of functions of multiple nested closure
+ 2021-02-23 7af821a all: faster midpoint computation in binary search
+ 2021-02-23 f113e9a cmd/dist: match goexperiment.regabi tag when GOEXPERIMENT is on
+ 2021-02-22 1126bbb go/parser: return ast.BadExpr for missing index operands
+ 2021-02-22 1678829 cmd/compile: correctly use X15 to zero frame
+ 2021-02-22 094048b cmd/compile/internal: loop opt
+ 2021-02-22 1391d41 fix typo in issue16760.go
+ 2021-02-22 0490347 cmd/compile: reject some rare looping CFGs in shortcircuit
+ 2021-02-22 87e984a test: add test for issue 38698
+ 2021-02-22 b2bdadf cmd/internal: cleanup ppc64 optab structure
+ 2021-02-21 0f66fb7 go/internal/gccgoimporter: fix up gccgo installation test
+ 2021-02-21 e78e04c cmd/compile: fix panic in DWARF-gen handling obfuscated code
+ 2021-02-20 03d36d8 syscall: add explicit ios build tag
+ 2021-02-20 40656f3 doc/1.16: fix link to fs.FileInfo
+ 2021-02-20 d4b2638 all: go fmt std cmd (but revert vendor)
+ 2021-02-20 0625460 cmd/vet: update buildtag check for //go:build lines
+ 2021-02-20 9fd6cc1 go/printer: canonicalize //go:build and // +build lines while formatting
+ 2021-02-20 5b76343 go/build: prefer //go:build over // +build lines
+ 2021-02-20 a8942d2 runtime/pprof: disable TestMorestack on darwin/arm64
+ 2021-02-20 078f08f spec: every type has a method set (minor clarification)
+ 2021-02-19 26713b5 go/types: don't write during sanitizeInfo if nothing has changed
+ 2021-02-19 9a99515 all: REVERSE MERGE dev.typeparams (7cdfa49) into master
+ 2021-02-19 7cdfa49 [dev.typeparams] all: merge master (06b86e9) into dev.typeparams
+ 2021-02-19 6521c7b [dev.typeparams] cmd/compile/internal/types2: resolve decl cycle the same way as in go/types
+ 2021-02-19 06b86e9 cmd/compile:  fix check to avoid creating new closure function when typechecking inline body
+ 2021-02-19 9322eec codereview.cfg: add codereview.cfg for master branch
+ 2021-02-19 02e5a8f runtime: ignore SPWRITE in syscall functions
+ 2021-02-19 fa18f22 runtime/pprof: disable TestMorestack on macOS under race detector
+ 2021-02-19 01eb70e os: fix hex exit code print on 32-bit windows
+ 2021-02-19 49add6a runtime: fix spurious stack overflow detection
+ 2021-02-19 fce2a94 cmd/compile: fix buglet in inlined info abstract function dwarf-gen
+ 2021-02-19 dfe0ef9 [dev.typeparams] go/types, types2: revert fancy struct printing (fixes x/tools tests)
+ 2021-02-19 7764ee5 runtime: fix invalid nil g check for for mips64x
+ 2021-02-19 2f37939 go/parser: improve error recovery from invalid selector exprs
+ 2021-02-19 8654db4 [dev.typeparams] go/types: adjust printing of embedded struct fields (fixes x/tools/cmd/guru tests)
+ 2021-02-19 87f425d cmd/go/internal/mvs: split Reqs into narrower per-function interfaces
+ 2021-02-19 4da0188 cmd/go/internal/modget: split resolveCandidates into two methods
+ 2021-02-19 5f2e24e cmd/internal/diff: skip over Cygwin warning in diff output
+ 2021-02-19 ee7038f net: disable Windows netsh tests when netsh won't run
+ 2021-02-19 40765ff os/exec: disable failing LookPathTest on windows/arm64
+ 2021-02-19 b445d6e runtime/pprof: expect tests to pass on macOS
+ 2021-02-19 b110a43 runtime: delete gosave (dead code)
+ 2021-02-19 474d5f4 math: remove most 387 implementations
+ 2021-02-19 c7c6c11 runtime: convert windows/arm64 assembly
+ 2021-02-19 3527caa runtime: initial windows/arm64 implementation files
+ 2021-02-19 427bd75 runtime: generate windows/arm64 callback asm
+ 2021-02-19 f6c4b4b syscall: add windows/arm64 support
+ 2021-02-19 ac024a0 cmd/vendor: get golang.org/x/sys@beda7e5e158
+ 2021-02-19 a3b97e7 test: disable nilptr on windows/arm64
+ 2021-02-19 985d087 cmd/link: add windows/arm64 support
+ 2021-02-19 95a44d2 cmd/internal/objfile: recognize Windows ARM64 executables
+ 2021-02-19 0ca0551 debug/pe: recognize arm64 executables
+ 2021-02-19 47e4b07 Merge "[dev.typeparams] all: merge master (eb98272) into dev.typeparams" into dev.typeparams
+ 2021-02-19 0c63312 cmd/dist: add windows/arm64 support
+ 2021-02-19 bb6efb9 build: set GOPATH consistently in run.bash, run.bat, run.rc
+ 2021-02-19 a1222b7 cmd/link: add debug print in deadcode
+ 2021-02-19 1c659f2 cmd/link: clean up windows PE generation
+ 2021-02-19 b6379f1 syscall: clean up windows a bit
+ 2021-02-19 09e059a runtime: enable framepointer on all arm64
+ 2021-02-19 b19e7b5 runtime: clean up windows a bit
+ 2021-02-19 5421c37 runtime: fix windows/arm externalthreadhandler
+ 2021-02-19 91cc484 runtime: fix time on windows/arm under WINE
+ 2021-02-19 38672d3 runtime: crash earlier on windows for runtime.abort
+ 2021-02-19 a1e9148 runtime: print hex numbers with hex prefixes in traceback debug
+ 2021-02-19 75e273f runtime: fix windows/arm CONTEXT_CONTROL
+ 2021-02-19 76ab626 runtime: factor common code out of defs_windows_*.go
+ 2021-02-19 ece954d runtime: find g in Windows profiler using SP
+ 2021-02-19 a54f7fc runtime: do not treat asmcgocall as a topofstack on g0
+ 2021-02-19 776ee40 runtime: do not treat morestack as a topofstack
+ 2021-02-19 5ecd9e3 runtime: do not treat mcall as a topofstack
+ 2021-02-19 54da3ab runtime: use TOPFRAME to identify top-of-frame functions
+ 2021-02-19 fbe74db runtime: use FuncInfo SPWRITE flag to identify untraceable profile samples
+ 2021-02-19 4dd77bd cmd/asm, cmd/link, runtime: introduce FuncInfo flag bits
+ 2021-02-19 aa0388f runtime: remove unnecessary writes to gp.sched.g
+ 2021-02-19 6fe8981 cmd/internal/obj/riscv: fix JMP name<>(SB)
+ 2021-02-19 01f05d8 runtime: unify asmcgocall and systemstack traceback setup
+ 2021-02-19 229695a runtime: clean up funcID assignment
+ 2021-02-19 c80da0a runtime: handle nil gp in cpuprof
+ 2021-02-19 a78879a runtime: move sys.DefaultGoroot to runtime.defaultGOROOT
+ 2021-02-19 8ac23a1 runtime: document, clean up internal/sys
+ 2021-02-19 678568a runtime: delete windows setlasterror (unused)
+ 2021-02-19 0d94f98 runtime: clean up system calls during cgo callback init
+ 2021-02-19 e7ee3c1 os: report Windows exit status in hex
+ 2021-02-18 a789be7 [dev.typeparams] cmd/compile: use new converter functions rather than methods (fix build)
+ 2021-02-18 20050a1 [dev.typeparams] cmd/compile:  support generic types (with stenciling of method calls)
+ 2021-02-18 e7493a9 [dev.typeparams] all: merge master (eb98272) into dev.typeparams
+ 2021-02-18 2ff1e05 [dev.typeparams] all: update parent repository
+ 2021-02-18 eb98272 cmd/go/internal/mvs: fix Downgrade to match Algorithm 4
+ 2021-02-18 3b7277d cmd/go: add a script test for artifacts resulting from 'go get -u'
+ 2021-02-18 8960ce7 [dev.typeparams] cmd/compile/internal/types2: minor adjustments to match go/types more closely
+ 2021-02-18 6f3878b [dev.typeparams] cmd/compile/internal/types: review of typestring_test.go
+ 2021-02-18 d6bdd1a [dev.typeparams] cmd/compile/internal/types: review of typestring.go
+ 2021-02-18 c2314ba [dev.typeparams] cmd/compile/internal/types: review of type.go
+ 2021-02-18 099374b [dev.typeparams] cmd/compile/internal/types2: remove Type.Under method in favor of function
+ 2021-02-18 653386a [dev.typeparams] cmd/compile/internal/types2: replace Named, TypeParam methods with functions
+ 2021-02-18 5e4da86 [dev.typeparams] cmd/compile/internal/types2: use converter functions rather than methods
+ 2021-02-18 5ecb9a7 [dev.typeparams] go/types: use a new ast.ListExpr for multi-type instances
+ 2021-02-18 f3c2208 cmd/go: add script tests for potential upgrades due to downgrades
+ 2021-02-18 a5c8a15 cmd/go/internal/mvs: clarify and annotate test cases
+ 2021-02-18 a76efea cmd/go/internal/mvs: don't emit duplicates from Req
+ 2021-02-18 609d82b cmd/dist: set GOARM=7 for windows/arm
+ 2021-02-18 7b67961 [dev.typeparams] go/types: conversions to type parameters are not constant
+ 2021-02-18 f0be3cc runtime: unbreak linux/riscv64 following regabi merge
+ 2021-02-18 07ef313 runtime/cgo: add cast in C code to avoid C compiler warning
+ 2021-02-17 f5d0c65 [dev.typeparams] merge master (2f0da6d) into dev.typeparams
+ 2021-02-17 e196cb8 [dev.typeparams] cmd/dist:  disable -G=3 on the std go tests for now
+ 2021-02-17 2f0da6d go/types: revert "no 'declared but not used' errors for invalid var decls"
+ 2021-02-17 70c37ee cmd/compile/internal/test: gofmt abiutils_test.go
+ 2021-02-16 8482559 all: merge branch dev.regabi (d3cd483) into master
+ 2021-02-16 d3cd483 [dev.regabi] test: run abi/regabipragma test with -c=1
+ 2021-02-16 03cea56 [dev.regabi] all: merge master (5faf941) into dev.regabi
+ 2021-02-16 b8fb049 [dev.regabi] cmd/go: copy internal/abi in TestNewReleaseRebuildsStalePackagesInGOPATH
+ 2021-02-16 5faf941 internal/goversion: update Version to 1.17
+ 2021-02-16 ed55da4 [dev.regabi] go/types: overlapping embedded interfaces requires go1.14
+ 2021-02-16 7696c94 [dev.regabi] go/types: type alias decl requires go1.9
+ 2021-02-16 c2358a1 [dev.regabi] runtime: stub out spillArgs and unspillArgs
+ 2021-02-16 8cfbf34 internal/abi: set register count constants to zero for regabi experiment
+ 2021-02-16 6f3da9d README: pull gopher image from website
+ 2021-02-16 d28aae2 [dev.regabi] cmd/link: recognize internal/abi as runtime package
+ 2021-02-16 098504c cmd/link: generate trampoline for inter-dependent packages
+ 2021-02-16 1004a7c runtime/metrics: update documentation to current interface
+ 2021-02-16 6530f26 doc/go1.16: remove draft notice
+ 2021-02-16 353e111 doc/go1.16: fix mismatched id attribute
+ 2021-02-16 e021531 [dev.regabi] reflect: support for register ABI on amd64 for reflect.(Value).Call
+ 2021-02-16 f0d23c9 internal/poll: netpollcheckerr before sendfile
+ 2021-02-16 0cb3415 doc: remove all docs not tied to distribution
+ 2021-02-16 626ef08 doc: remove install.html and install-source.html
+ 2021-02-16 30641e3 internal/poll: if copy_file_range returns 0, assume it failed
+ 2021-02-15 33d72fd doc/faq: update generics entry to reflect accepted proposal
+ 2021-02-15 852ce7c cmd/go: provide a more helpful suggestion for "go vet -?"
+ 2021-02-13 66c2709 cmd/link: fix typo in link_test.go
+ 2021-02-13 b81efb7 [dev.regabi] go/types: add support for language version checking
+ 2021-02-13 a7e9b4b [dev.regabi] go/types: untyped shift counts must fit into uint
+ 2021-02-13 060fa49 [dev.regabi] go/types: refuse excessively long constants
+ 2021-02-12 a06bd9f [dev.typeparams] cmd/compile/internal/types: review of resolver_test.go
+ 2021-02-12 042f88f [dev.typeparams] cmd/compile/internal/types: review of errors_test.go
+ 2021-02-12 0abd7b7 [dev.typeparams] cmd/compile/internal/types: review of universe.go
+ 2021-02-12 1b6f0bf [dev.typeparams] cmd/compile/internal/types: review of sizes_test.go
+ 2021-02-12 1758780 [dev.typeparams] cmd/compile/internal/types: review of sizes.go
+ 2021-02-12 3aee461 [dev.typeparams] cmd/compile/internal/types: review of return.go
+ 2021-02-12 7428318 [dev.typeparams] cmd/compile/internal/types: review of object_test.go
+ 2021-02-12 b20f9e2 [dev.typeparams] cmd/compile/internal/types: review of object.go
+ 2021-02-12 20746b2 [dev.typeparams] cmd/compile/internal/types: review of labels.go
+ 2021-02-12 bab3461 [dev.typeparams] cmd/compile/internal/types: review of infer.go
+ 2021-02-12 9168590 [dev.typeparams] cmd/compile/internal/types: review of builtin_test.go
+ 2021-02-12 f1777cf [dev.typeparams] cmd/compile/internal/types: review of builtin.go
+ 2021-02-12 baa6c75 [dev.regabi] internal/abi: add new internal/abi package for ABI constants
+ 2021-02-12 d1fd9a8 [dev.regabi] all: merge master (ff0e93e) into dev.regabi
+ 2021-02-12 ff0e93e doc/go1.16: note that package path elements beginning with '.' are disallowed
+ 2021-02-12 0f43973 [dev.typeparams] go/types: make predeclared "any" alias for interface{}
+ 2021-02-12 58758e0 [dev.typeparams] go/types: better error message for invalid ... use
+ 2021-02-11 c0aa7bd [dev.typeparams] cmd/compile: small fixes for stenciling
+ 2021-02-11 249da7e CONTRIBUTORS: update for the Go 1.16 release
+ 2021-02-11 864d4f1 cmd/go: multiple small 'go help' fixes
+ 2021-02-11 26ceae8 spec: More precise wording in section on function calls.
+ 2021-02-11 930c2c9 cmd/go: reject embedded files that can't be packed into modules
+ 2021-02-11 e5b08e6 io/fs: allow backslash in ValidPath, reject in os.DirFS.Open
+ 2021-02-10 df23540 [dev.typeparams] cmd/gofmt: add the -G flag to allow generic code
+ 2021-02-10 ed80790 cmd/compile: mark concrete call of reflect.(*rtype).Method as REFLECTMETHOD
+ 2021-02-10 ddec18c [dev.typeparams] cmd/compile/internal/types2: overlapping embedded interfaces requires go1.14
+ 2021-02-10 59703d5 [dev.regabi] cmd/link: stop using ABI aliases if wrapper is enabled
+ 2021-02-10 fdf3496 [dev.typeparams] cmd/compile:  make type conversions by type parameters work
+ 2021-02-10 12e15d4 [dev.typeparams] cmd/compile: handle calling a method on a type param in stenciling
+ 2021-02-09 e9c9683 cmd/go: suppress errors from 'go get -d' for packages that only conditionally exist
+ 2021-02-09 168d6a4 [dev.regabi] go/types: use 512 bits as max. integer precision
+ 2021-02-09 0a62067 [dev.regabi] go/types: adjust importer to match compiler importer
+ 2021-02-09 1c58fcf [dev.regabi] go/types: handle untyped constant arithmetic overflow
+ 2021-02-09 493363c [dev.regabi] go/types: must not import a package called "init"
+ 2021-02-09 e0ac989 archive/tar: detect out of bounds accesses in PAX records resulting from padded lengths
+ 2021-02-09 c48d150 [dev.regabi] go/types: report unused packages in source order
+ 2021-02-09 813958f [dev.regabi] go/types: factor out sorting of methods
+ 2021-02-09 11d15c1 [dev.regabi] go/types: convert untyped arguments to delete
+ 2021-02-08 ca18c42 [dev.typeparams] merge dev.regabi (618e3c1) into dev.typeparams
+ 2021-02-09 c9d6f45 runtime/metrics: fix a couple of documentation typpos
+ 2021-02-09 cea4e21 io/fs: backslash is always a glob meta character
+ 2021-02-08 dc725bf doc/go1.16: mention new vet check for asn1.Unmarshal
+ 2021-02-08 618e3c1 [dev.regabi] go/types: consistently report nil type as "untyped nil"
+ 2021-02-08 a360eeb [dev.typeparams] cmd/compile/internal/types2: conversions to type parameters are not constant
+ 2021-02-08 0fbde54 [dev.typeparams] cmd/compile: allow generic funcs to call other generic funcs for stenciling
+ 2021-02-08 50449de [dev.regabi] all: merge master (1901853) into dev.regabi
+ 2021-02-08 7b0dfb1 [dev.regabi] runtime: use g register in some assembly functions on AMD64
+ 2021-02-08 2e60c00 [dev.regabi] cmd/internal/obj/x86: use g register in stack bounds check
+ 2021-02-08 22f9e1c [dev.regabi] runtime: initialize special registers before sigpanic
+ 2021-02-08 5d7dc53 [dev.regabi] cmd/compile, runtime: reserve R14 as g registers on AMD64
+ 2021-02-08 1901853 runtime/metrics: fix panic in readingAllMetric example
+ 2021-02-08 ed3e4af syscall/plan9: remove spooky fd action at a distance
+ 2021-02-08 a21de9e [dev.regabi] cmd/link: resolve symbol ABI in shared linkage
+ 2021-02-05 724d072 doc/go1.16: add missed heading tag in vet section
+ 2021-02-05 b54cd94 embed, io/fs: clarify that leading and trailing slashes are disallowed
+ 2021-02-05 4516afe testing/fstest: avoid symlink-induced failures in tester
+ 2021-02-05 8fa8477 [dev.regabi] runtime: delete gosave function
+ 2021-02-05 946351d [dev.regabi] runtime: zero X15 in racecall
+ 2021-02-05 397a46a [dev.regabi] cmd/asm: define g register on AMD64
+ 2021-02-05 e79c2fd [dev.regabi] runtime: mark racecallbackthunk as ABIInternal
+ 2021-02-05 7cc6de5 [dev.regabi] runtime: don't mark rt0_go ABIInternal
+ 2021-02-05 dcb5e03 [dev.typeparams] cmd/compile: add stenciling of simple generic functions
+ 2021-02-05 63de211 [dev.regabi] runtime/cgo: call setg_gcc in crosscall_amd64
+ 2021-02-04 f37b0c6 [dev.typeparams] cmd/compile/internal/types2: type alias decl requires go1.9
+ 2021-02-04 7214884 [dev.typeparams] cmd/compile: pass -lang flag value to new type checker
+ 2021-02-04 1ff2fda [dev.typeparams] cmd/compile/internal/types2: add support for language version checking
+ 2021-02-04 370e9f5 [dev.typeparams] cmd/compile/internal/types2: use 512 bits as max. integer precision
+ 2021-02-04 120b819 [dev.regabi] go/types: report error for invalid main function signature
+ 2021-02-04 52d5cb2 [dev.regabi] cmd/internal/obj: access Attribute atomically
+ 2021-02-04 bc451b5 [dev.regabi] go/types: port check_test.go ergonomics from dev.typeparams
+ 2021-02-04 afd67f3 [dev.regabi] go/types: no "declared but not used" errors for invalid var decls
+ 2021-02-04 ca2f152 [dev.typeparams] go/types: add missing test from dev.go2go
+ 2021-02-04 8869086 runtime: fix typo in histogram.go
+ 2021-02-03 401d7e5 [dev.regabi] cmd/compile: reserve X15 as zero register on AMD64
+ 2021-02-03 bfc7418 [dev.regabi] runtime, syscall, etc.: mark Darwin syscall wrappers as ABIInternal
+ 2021-02-03 e491c6e math/big: fix comment in divRecursiveStep

Change-Id: Idc1fbc206629b016f7bb24c2066c2be9046a511a
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants