commit | 0cffec9e30d002e3af58010197795a3e089688b5 | [log] [tgz] |
---|---|---|
author | Robert Findley <rfindley@google.com> | Tue Sep 14 13:07:03 2021 -0400 |
committer | Robert Findley <rfindley@google.com> | Wed Sep 15 00:13:36 2021 +0000 |
tree | 4c129ec0ae5dbbd0fbd06938537b3eb70ebf0fab | |
parent | 5492d01d98d3be4e014a66fc31953c04cc38c8c8 [diff] |
go/internal/gcimporter: update iimport.go to support type parameters This CL pulls in the latest changes from go/internal/gcimporter, while avoiding breaking the build on older go versions. To help maintain compatibility with older Go versions while minimizing the diff with the standard library importer, the internal/typeparams package was significantly expanded. I decided to use type aliases in the internal/typeparams package on Go version >= go1.18, and placeholder types on Go version < go1.18. This reduces the amount of copying needed in the APIs, though it might not be the best decision if we ever decide to export this package. Documentation was also updated to be more concise and specific to the Go version being used. In order to actually fix the x/tools Trybot for packages using generics in the standard library, we need to switch from the 'typeparams' build constraint to the 'go1.18' build constraint. This means if we make any additional API changes in go/types we'll have to submit them with a broken x/tools Trybot and then immediately fix the x/tools build. Change-Id: Ifa0b1c37b89dc549ee295fa3a959f03deda86e56 Reviewed-on: https://go-review.googlesource.com/c/tools/+/349949 Trust: Robert Findley <rfindley@google.com> Run-TryBot: Robert Findley <rfindley@google.com> gopls-CI: kokoro <noreply+kokoro@google.com> TryBot-Result: Go Bot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
This subrepository holds the source for various packages and tools that support the Go programming language.
Some of the tools, godoc
and vet
for example, are included in binary Go distributions.
Others, including the Go guru
and the test coverage tool, can be fetched with go get
.
Packages include a type-checker for Go and an implementation of the Static Single Assignment form (SSA) representation for Go programs.
The easiest way to install is to run go get -u golang.org/x/tools/...
. You can also manually git clone the repository to $GOPATH/src/golang.org/x/tools
.
This repository uses prettier to format JS and CSS files.
The version of prettier
used is 1.18.2.
It is encouraged that all JS and CSS code be run through this before submitting a change. However, it is not a strict requirement enforced by CI.
This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.
The main issue tracker for the tools repository is located at https://github.com/golang/go/issues. Prefix your issue with “x/tools/(your subdir):” in the subject line, so it is easy to find.