cmd/go/internal/vgo: ignore appengine imports

As an unfortunate special case, just ignore import of appengine or appengine/*
when scanning a source tree to find modules that need to be imported.
A more aggressive option would be to ignore all paths that don't start
with an element with a dot (that is, don't start with a plausible domain name),
but I don't want to require that all modules have a dot at the start of the name.

The real problem here is that appengine was introduced so long ago that it
predates "go get" and did not use URL-like paths, and some code exists that
is still using those old imports. I am unaware of any other special cases like
that. If they arise, we can add them too, or we can revisit whether there is a
more general fix. For now this should suffice.

Fixes golang/go#25881.

Change-Id: I38cdbc1cd83a2f55d87f598bd0cbf1f6bcade88a
Reviewed-on: https://go-review.googlesource.com/118757
Run-TryBot: Russ Cox <rsc@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ross Light <light@google.com>
5 files changed
tree: 57ad871b435716787664121c1ce2e700bb67a053
  1. vendor/
  2. AUTHORS
  3. codereview.cfg
  4. CONTRIBUTING.md
  5. CONTRIBUTORS
  6. LICENSE
  7. main.go
  8. PATENTS
  9. README.md
README.md

Versioned Go Prototype (vgo)

This repository holds a prototype of what the go command might look like with integrated support for package versioning.

See research.swtch.com/vgo for documents about the design.

Download/Install

Use go get -u golang.org/x/vgo.

You can also manually git clone the repository to $GOPATH/src/golang.org/x/vgo.

Report Issues / Send Patches

See CONTRIBUTING.md.

This is still a very early prototype. You are likely to run into bugs. Please file bugs in the main Go issue tracker, golang.org/issue, and put the prefix x/vgo: in the issue title.

Thank you.