Skip to content

cmd/go: spurious recursive VCS reference using Mercurial #22201

@philpennock

Description

@philpennock

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

go 1.9.1, and confirmed issue not present with go 1.9

Does this issue reproduce with the latest release?

yes

What operating system and processor architecture are you using (go env)?

GOHOSTARCH="amd64"
GOHOSTOS="darwin"

It's Darwin 16.7.0 from macOS 10.12.6 but problem also observed in Linux docker images under Circle CI, so it appears to be platform independent.

What did you do?

I ran go get -v -u -t -d ./... twice on a project which pulls in bitbucket.org/pkg/inflect as a dependency. When run with a clean tree, it succeeds without error. When run with the content already checked out, it errors. Across 385 lines of output from the above, there is one line of difference between the two:

-bitbucket.org/pkg/inflect (download)
+package bitbucket.org/pkg/inflect: directory "/Users/pdp/tmp/go-foo/src/bitbucket.org/pkg/inflect" uses hg, but parent "/Users/pdp/tmp/go-foo/src/bitbucket.org/pkg" uses hg

There is no .hg directory in the parent. This error appears spurious.

If I switch /usr/local/go from 1.9.1 back to 1.9, then go get -v -u -t -d ./... succeeds.

Thus 1.9.1 appears to be incorrectly determining that the parent is using hg and that this is some kind of conflict.

What did you expect to see?

No error, no difference between the two runs

What did you see instead?

A spurious failure.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions