mirror of
https://github.com/golang/go
synced 2024-09-05 07:54:46 +00:00
go/build: rename WorkingDir to Dir
Fixes #36168 Change-Id: If2b7368671e83657a3a74dd030e66e7c68bf2361 Reviewed-on: https://go-review.googlesource.com/c/go/+/211657 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
This commit is contained in:
parent
ba4593ac47
commit
a5bfd9da1d
|
@ -144,7 +144,7 @@ pkg debug/dwarf, method (*Reader) ByteOrder() binary.ByteOrder
|
|||
pkg encoding/asn1, const TagBMPString = 30
|
||||
pkg encoding/asn1, const TagBMPString ideal-int
|
||||
pkg encoding/json, method (*Decoder) InputOffset() int64
|
||||
pkg go/build, type Context struct, WorkingDir string
|
||||
pkg go/build, type Context struct, Dir string
|
||||
pkg go/doc, func NewFromFiles(*token.FileSet, []*ast.File, string, ...interface{}) (*Package, error)
|
||||
pkg go/doc, type Example struct, Suffix string
|
||||
pkg go/doc, type Func struct, Examples []*Example
|
||||
|
|
|
@ -36,13 +36,13 @@ type Context struct {
|
|||
GOROOT string // Go root
|
||||
GOPATH string // Go path
|
||||
|
||||
// WorkingDir is the caller's working directory, or the empty string to use
|
||||
// Dir is the caller's working directory, or the empty string to use
|
||||
// the current directory of the running process. In module mode, this is used
|
||||
// to locate the main module.
|
||||
//
|
||||
// If WorkingDir is non-empty, directories passed to Import and ImportDir must
|
||||
// If Dir is non-empty, directories passed to Import and ImportDir must
|
||||
// be absolute.
|
||||
WorkingDir string
|
||||
Dir string
|
||||
|
||||
CgoEnabled bool // whether cgo files are included
|
||||
UseAllFiles bool // use files regardless of +build lines, file names
|
||||
|
@ -1041,8 +1041,8 @@ func (ctxt *Context) importGo(p *Package, path, srcDir string, mode ImportMode)
|
|||
var absSrcDir string
|
||||
if filepath.IsAbs(srcDir) {
|
||||
absSrcDir = srcDir
|
||||
} else if ctxt.WorkingDir != "" {
|
||||
return fmt.Errorf("go/build: WorkingDir is non-empty, so relative srcDir is not allowed: %v", srcDir)
|
||||
} else if ctxt.Dir != "" {
|
||||
return fmt.Errorf("go/build: Dir is non-empty, so relative srcDir is not allowed: %v", srcDir)
|
||||
} else {
|
||||
// Find the absolute source directory. hasSubdir does not handle
|
||||
// relative paths (and can't because the callbacks don't support this).
|
||||
|
@ -1076,16 +1076,16 @@ func (ctxt *Context) importGo(p *Package, path, srcDir string, mode ImportMode)
|
|||
parent string
|
||||
err error
|
||||
)
|
||||
if ctxt.WorkingDir == "" {
|
||||
if ctxt.Dir == "" {
|
||||
parent, err = os.Getwd()
|
||||
if err != nil {
|
||||
// A nonexistent working directory can't be in a module.
|
||||
return errNoModules
|
||||
}
|
||||
} else {
|
||||
parent, err = filepath.Abs(ctxt.WorkingDir)
|
||||
parent, err = filepath.Abs(ctxt.Dir)
|
||||
if err != nil {
|
||||
// If the caller passed a bogus WorkingDir explicitly, that's materially
|
||||
// If the caller passed a bogus Dir explicitly, that's materially
|
||||
// different from not having modules enabled.
|
||||
return err
|
||||
}
|
||||
|
@ -1105,8 +1105,8 @@ func (ctxt *Context) importGo(p *Package, path, srcDir string, mode ImportMode)
|
|||
|
||||
cmd := exec.Command("go", "list", "-e", "-compiler="+ctxt.Compiler, "-tags="+strings.Join(ctxt.BuildTags, ","), "-installsuffix="+ctxt.InstallSuffix, "-f={{.Dir}}\n{{.ImportPath}}\n{{.Root}}\n{{.Goroot}}\n{{if .Error}}{{.Error}}{{end}}\n", "--", path)
|
||||
|
||||
if ctxt.WorkingDir != "" {
|
||||
cmd.Dir = ctxt.WorkingDir
|
||||
if ctxt.Dir != "" {
|
||||
cmd.Dir = ctxt.Dir
|
||||
}
|
||||
|
||||
var stdout, stderr strings.Builder
|
||||
|
|
|
@ -328,7 +328,7 @@ func TestImportDirNotExist(t *testing.T) {
|
|||
defer os.RemoveAll(emptyDir)
|
||||
|
||||
ctxt.GOPATH = emptyDir
|
||||
ctxt.WorkingDir = emptyDir
|
||||
ctxt.Dir = emptyDir
|
||||
|
||||
tests := []struct {
|
||||
label string
|
||||
|
@ -459,7 +459,7 @@ func TestImportPackageOutsideModule(t *testing.T) {
|
|||
os.Setenv("GOPATH", gopath)
|
||||
ctxt := Default
|
||||
ctxt.GOPATH = gopath
|
||||
ctxt.WorkingDir = filepath.Join(gopath, "src/example.com/p")
|
||||
ctxt.Dir = filepath.Join(gopath, "src/example.com/p")
|
||||
|
||||
want := "cannot find module providing package"
|
||||
if _, err := ctxt.Import("example.com/p", gopath, FindOnly); err == nil {
|
||||
|
@ -519,7 +519,7 @@ func TestMissingImportErrorRepetition(t *testing.T) {
|
|||
os.Setenv("GONOPROXY", "none")
|
||||
|
||||
ctxt := Default
|
||||
ctxt.WorkingDir = tmp
|
||||
ctxt.Dir = tmp
|
||||
|
||||
pkgPath := "example.com/hello"
|
||||
_, err = ctxt.Import(pkgPath, tmp, FindOnly)
|
||||
|
|
Loading…
Reference in a new issue