dep ensure produces incomplete vendor results #1890
Description
I believe this explains itself. my code won't compile if I use dep as my vendor appears to be missing source files. I've checked that the missing directories do actually contain .go
files.
this is how I check out a working vendor dependency:
git clone https://github.com/moby/moby.git vendor/github.com/docker/docker
git -C vendor/github.com/docker/docker checkout -b api/v1.32 05121d555475b3d7cfa5b29f22dc85262cd1a1a8
this is what I have in Gopkg.toml
:
[[constraint]]
name = "github.com/docker/docker"
revision = "05121d555475b3d7cfa5b29f22dc85262cd1a1a8"
source = "https://github.com/moby/moby.git"
I've verified using api/common.go
that in both instances the code is checked out from the correct revision. it appears that dep simply just didn't get some .go
files.
for example, common.go has no differences:
% diff -u vendor/github.com/docker/docker{,2}/api/common.go
%
I've also used go ensure -v
to see additional output but unfortunately the output does not detail exactly what occurred here.
any help would be appreciated. thank you.
also: I realize that constraining to a revision is an anti-pattern but unfortunately docker/moby upstream developers have failed to properly add a tag for the API version I need to use in my software. please don't remind me.
What version of dep
are you using (dep version
)?
dep:
version : v0.4.1
build date : 2018-01-27
git hash : 37d9ea0
go version : go1.9.3
go compiler : gc
platform : darwin/amd64
What dep
command did you run?
dep ensure
What did you expect to see?
docker % ls -l
total 824
-rw-r--r-- 1 dariorusso staff 74397 8 Jun 13:55 AUTHORS
-rw-r--r-- 1 dariorusso staff 206320 8 Jun 13:55 CHANGELOG.md
-rw-r--r-- 1 dariorusso staff 19924 8 Jun 13:55 CONTRIBUTING.md
-rw-r--r-- 1 dariorusso staff 9121 8 Jun 13:55 Dockerfile
-rw-r--r-- 1 dariorusso staff 2631 8 Jun 13:55 Dockerfile.e2e
-rw-r--r-- 1 dariorusso staff 1987 8 Jun 13:55 Dockerfile.simple
-rw-r--r-- 1 dariorusso staff 11376 8 Jun 13:55 Dockerfile.windows
-rw-r--r-- 1 dariorusso staff 10765 8 Jun 13:55 LICENSE
-rw-r--r-- 1 dariorusso staff 15157 8 Jun 13:55 MAINTAINERS
-rw-r--r-- 1 dariorusso staff 9878 8 Jun 13:55 Makefile
-rw-r--r-- 1 dariorusso staff 638 8 Jun 13:55 NOTICE
-rw-r--r-- 1 dariorusso staff 3395 8 Jun 13:55 README.md
-rw-r--r-- 1 dariorusso staff 3776 8 Jun 13:55 ROADMAP.md
-rw-r--r-- 1 dariorusso staff 2664 8 Jun 13:55 TESTING.md
-rw-r--r-- 1 dariorusso staff 1952 8 Jun 13:55 VENDORING.md
drwxr-xr-x 11 dariorusso staff 374 8 Jun 13:55 api/
drwxr-xr-x 7 dariorusso staff 238 8 Jun 13:55 builder/
drwxr-xr-x 7 dariorusso staff 238 8 Jun 13:55 cli/
drwxr-xr-x 214 dariorusso staff 7276 8 Jun 13:55 client/
drwxr-xr-x 3 dariorusso staff 102 8 Jun 13:55 cmd/
-rw-r--r-- 1 dariorusso staff 359 8 Jun 13:55 codecov.yml
drwxr-xr-x 22 dariorusso staff 748 8 Jun 13:55 container/
drwxr-xr-x 33 dariorusso staff 1122 8 Jun 13:55 contrib/
drwxr-xr-x 148 dariorusso staff 5032 8 Jun 13:55 daemon/
drwxr-xr-x 21 dariorusso staff 714 8 Jun 13:55 distribution/
drwxr-xr-x 4 dariorusso staff 136 8 Jun 13:55 dockerversion/
drwxr-xr-x 5 dariorusso staff 170 8 Jun 13:55 docs/
drwxr-xr-x 7 dariorusso staff 238 8 Jun 13:55 errdefs/
drwxr-xr-x 15 dariorusso staff 510 8 Jun 13:55 hack/
drwxr-xr-x 13 dariorusso staff 442 8 Jun 13:55 image/
drwxr-xr-x 16 dariorusso staff 544 8 Jun 13:55 integration/
drwxr-xr-x 115 dariorusso staff 3910 8 Jun 13:55 integration-cli/
drwxr-xr-x 4 dariorusso staff 136 8 Jun 13:55 internal/
drwxr-xr-x 21 dariorusso staff 714 8 Jun 13:55 layer/
drwxr-xr-x 22 dariorusso staff 748 8 Jun 13:55 libcontainerd/
drwxr-xr-x 3 dariorusso staff 102 8 Jun 13:55 migrate/
drwxr-xr-x 6 dariorusso staff 204 8 Jun 13:55 oci/
drwxr-xr-x 21 dariorusso staff 714 8 Jun 13:55 opts/
drwxr-xr-x 47 dariorusso staff 1598 8 Jun 13:55 pkg/
drwxr-xr-x 18 dariorusso staff 612 8 Jun 13:55 plugin/
-rw-r--r-- 1 dariorusso staff 4667 8 Jun 13:55 poule.yml
drwxr-xr-x 4 dariorusso staff 136 8 Jun 13:55 profiles/
drwxr-xr-x 16 dariorusso staff 544 8 Jun 13:55 project/
drwxr-xr-x 5 dariorusso staff 170 8 Jun 13:55 reference/
drwxr-xr-x 21 dariorusso staff 714 8 Jun 13:55 registry/
drwxr-xr-x 9 dariorusso staff 306 8 Jun 13:55 reports/
drwxr-xr-x 4 dariorusso staff 136 8 Jun 13:55 restartmanager/
drwxr-xr-x 14 dariorusso staff 476 8 Jun 13:55 runconfig/
drwxr-xr-x 8 dariorusso staff 272 8 Jun 13:55 vendor/
-rw-r--r-- 1 dariorusso staff 7813 8 Jun 13:55 vendor.conf
drwxr-xr-x 8 dariorusso staff 272 8 Jun 13:55 volume/
% rg DefaultVersion vendor/github.com/docker/docker/api/common.go
17: // DefaultVersion of Current REST API
18: DefaultVersion string = "1.32"
What did you see instead?
docker % ls -l
total 176
-rw-r--r-- 1 dariorusso staff 70478 8 Jun 13:47 AUTHORS
-rw-r--r-- 1 dariorusso staff 10765 8 Jun 13:47 LICENSE
-rw-r--r-- 1 dariorusso staff 638 8 Jun 13:47 NOTICE
drwxr-xr-x 10 dariorusso staff 340 8 Jun 13:47 api/
drwxr-xr-x 117 dariorusso staff 3978 8 Jun 13:47 client/
drwxr-xr-x 5 dariorusso staff 170 8 Jun 13:47 contrib/
drwxr-xr-x 3 dariorusso staff 102 8 Jun 13:47 docs/
drwxr-xr-x 4 dariorusso staff 136 8 Jun 13:47 hack/
drwxr-xr-x 8 dariorusso staff 272 8 Jun 13:47 pkg/
drwxr-xr-x 3 dariorusso staff 102 8 Jun 13:47 project/
% rg DefaultVersion vendor/github.com/docker/docker/api/common.go
17: // DefaultVersion of Current REST API
18: DefaultVersion string = "1.32"