Skip to content
This repository has been archived by the owner on Sep 9, 2020. It is now read-only.

Revision / branch in manifest is ignored #321

Closed
tomwilkie opened this issue Mar 12, 2017 · 9 comments
Closed

Revision / branch in manifest is ignored #321

tomwilkie opened this issue Mar 12, 2017 · 9 comments

Comments

@tomwilkie
Copy link
Contributor

I need to use a specific version of https://github.com/Azure/azure-sdk-for-go (revision bd73d950fa4440dae889bd9917bff7cef539f86e).

If I run dep ensure -v github.com/Azure/azure-sdk-for-go@bd73d950fa4440dae889bd9917bff7cef539f86e, dep selects the latest tagged release:

$ dep ensure -v github.com/Azure/azure-sdk-for-go@bd73d950fa4440dae889bd9917bff7cef539f86e
Root project is "github.com/weaveworks/cortex"
 27 transitively valid internal packages
 70 external packages imported from 29 projects
(0)   ✓ select (root)
(1)	? attempt github.com/Masterminds/squirrel with 1 pkgs; at least 1 versions to try
(1)	    try github.com/Masterminds/squirrel@v1
(1)	✓ select github.com/Masterminds/squirrel@v1 w/1 pkgs
(2)	? attempt github.com/armon/go-socks5 with 1 pkgs; at least 1 versions to try
(2)	    try github.com/armon/go-socks5@master
(2)	✓ select github.com/armon/go-socks5@master w/1 pkgs
(3)	? attempt github.com/Sirupsen/logrus with 1 pkgs; at least 1 versions to try
(3)	    try github.com/Sirupsen/[email protected]
(3)	✓ select github.com/Sirupsen/[email protected] w/1 pkgs
(4)	? attempt github.com/golang/snappy with 1 pkgs; at least 1 versions to try
(4)	    try github.com/golang/snappy@master
(4)	✓ select github.com/golang/snappy@master w/1 pkgs
(5)	? attempt github.com/gorilla/mux with 1 pkgs; at least 1 versions to try
(5)	    try github.com/gorilla/[email protected]
(5)	✓ select github.com/gorilla/[email protected] w/1 pkgs
(6)	? attempt github.com/aws/aws-sdk-go with 7 pkgs; at least 1 versions to try
(6)	    try github.com/aws/[email protected]
(6)	✓ select github.com/aws/[email protected] w/29 pkgs
(7)	? attempt github.com/docker/docker with 1 pkgs; at least 1 versions to try
(7)	    try github.com/docker/[email protected]
(7)	✓ select github.com/docker/[email protected] w/2 pkgs
(8)	? attempt github.com/gorilla/context with 1 pkgs; at least 1 versions to try
(8)	    try github.com/gorilla/[email protected]
(8)	✓ select github.com/gorilla/[email protected] w/1 pkgs
(9)	? attempt github.com/grpc-ecosystem/grpc-opentracing with 1 pkgs; at least 1 versions to try
(9)	    try github.com/grpc-ecosystem/grpc-opentracing@master
(9)	✓ select github.com/grpc-ecosystem/grpc-opentracing@master w/1 pkgs
(10)  ? attempt github.com/jonboulle/clockwork with 1 pkgs; at least 1 versions to try
(10)      try github.com/jonboulle/[email protected]
(10)  ✓ select github.com/jonboulle/[email protected] w/1 pkgs
(11)  ? attempt github.com/hashicorp/consul with 1 pkgs; at least 1 versions to try
(11)      try github.com/hashicorp/[email protected]
(11)  ✓ select github.com/hashicorp/[email protected] w/1 pkgs
(12)  ? attempt github.com/bradfitz/gomemcache with 1 pkgs; at least 1 versions to try
(12)      try github.com/bradfitz/gomemcache@master
(12)  ✓ select github.com/bradfitz/gomemcache@master w/1 pkgs
(13)  ? attempt github.com/golang/protobuf with 1 pkgs; at least 1 versions to try
(13)      try github.com/golang/protobuf@master
(13)  ✓ select github.com/golang/protobuf@master w/1 pkgs
(14)  ? attempt github.com/hashicorp/go-cleanhttp with 1 pkgs; at least 1 versions to try
(14)      try github.com/hashicorp/go-cleanhttp@master
(14)  ✓ select github.com/hashicorp/go-cleanhttp@master w/1 pkgs
(15)  ? attempt github.com/gogo/protobuf with 3 pkgs; at least 1 versions to try
(15)      try github.com/gogo/[email protected]
(15)  ✓ select github.com/gogo/[email protected] w/4 pkgs
(16)  ? attempt github.com/mattes/migrate with 2 pkgs; at least 1 versions to try
(16)      try github.com/mattes/[email protected]
(16)  ✓ select github.com/mattes/[email protected] w/6 pkgs
(17)  ? attempt github.com/hashicorp/serf with 1 pkgs; at least 1 versions to try
(17)      try github.com/hashicorp/[email protected]
(17)  ✓ select github.com/hashicorp/[email protected] w/1 pkgs
(18)  ? attempt github.com/prometheus/alertmanager with 11 pkgs; at least 1 versions to try
(18)      try github.com/prometheus/[email protected]
(18)  ✓ select github.com/prometheus/[email protected] w/15 pkgs
(19)  ? revisit github.com/golang/protobuf to add 2 pkgs
(19)    ✓ include 5 more pkgs from github.com/golang/protobuf@master
(19)  ? attempt github.com/cenkalti/backoff with 1 pkgs; at least 1 versions to try
(20)      try github.com/cenkalti/[email protected]
(20)  ✓ select github.com/cenkalti/[email protected] w/1 pkgs
(20)  ? attempt github.com/mwitkow/go-grpc-middleware with 1 pkgs; at least 1 versions to try
(21)      try github.com/mwitkow/go-grpc-middleware@master
(21)  ✓ select github.com/mwitkow/go-grpc-middleware@master w/1 pkgs
(21)  ? attempt github.com/opentracing/opentracing-go with 2 pkgs; at least 1 versions to try
(22)      try github.com/opentracing/[email protected]
(22)  ✓ select github.com/opentracing/[email protected] w/3 pkgs
(22)  ? attempt github.com/go-ini/ini with 1 pkgs; at least 1 versions to try
(23)      try github.com/go-ini/[email protected]
(23)  ✓ select github.com/go-ini/[email protected] w/1 pkgs
(23)  ? attempt github.com/mgutz/ansi with 1 pkgs; at least 1 versions to try
(24)      try github.com/mgutz/ansi@master
(24)  ✓ select github.com/mgutz/ansi@master w/1 pkgs
(24)  ? attempt github.com/prometheus/client_golang with 1 pkgs; at least 1 versions to try
(25)      try github.com/prometheus/[email protected]
(25)  ✓ select github.com/prometheus/[email protected] w/1 pkgs
(25)  ? attempt github.com/beorn7/perks with 1 pkgs; at least 1 versions to try
(26)      try github.com/beorn7/perks@master
(26)  ✓ select github.com/beorn7/perks@master w/1 pkgs
(26)  ? attempt golang.org/x/tools with 1 pkgs; at least 1 versions to try
(27)      try golang.org/x/tools@master
(27)  ✓ select golang.org/x/tools@master w/1 pkgs
(27)  ? attempt github.com/prometheus/common with 3 pkgs; at least 1 versions to try
(28)      try github.com/prometheus/common@master
(28)  ✓ select github.com/prometheus/common@master w/3 pkgs
(28)  ? attempt github.com/jmespath/go-jmespath with 1 pkgs; at least 1 versions to try
(29)      try github.com/jmespath/[email protected]
(29)  ✓ select github.com/jmespath/[email protected] w/1 pkgs
(29)  ? attempt github.com/julienschmidt/httprouter with 1 pkgs; at least 1 versions to try
(30)      try github.com/julienschmidt/[email protected]
(30)  ✓ select github.com/julienschmidt/[email protected] w/1 pkgs
(30)  ? revisit github.com/prometheus/common to add 1 pkgs
(31)    ✓ include 3 more pkgs from github.com/prometheus/common@master
(30)  ? attempt golang.org/x/net with 2 pkgs; at least 1 versions to try
(32)      try golang.org/x/net@master
(32)  ✓ select golang.org/x/net@master w/2 pkgs
(31)  ? attempt github.com/prometheus/prometheus with 9 pkgs; at least 1 versions to try
(33)      try github.com/prometheus/[email protected]
(33)  ✓ select github.com/prometheus/[email protected] w/31 pkgs
(32)  ? revisit github.com/aws/aws-sdk-go to add 1 pkgs
(34)    ✓ include 16 more pkgs from github.com/aws/[email protected]
(32)  ? attempt github.com/mattn/go-colorable with 1 pkgs; at least 1 versions to try
(35)      try github.com/mattn/[email protected]
(35)  ✓ select github.com/mattn/[email protected] w/1 pkgs
(33)  ? attempt github.com/Azure/azure-sdk-for-go with 2 pkgs; at least 1 versions to try
(36)      try github.com/Azure/[email protected]
(36)  ✓ select github.com/Azure/[email protected] w/2 pkgs
(34)  ? attempt github.com/prometheus/procfs with 1 pkgs; at least 1 versions to try
(37)      try github.com/prometheus/procfs@master
(37)  ✓ select github.com/prometheus/procfs@master w/2 pkgs
(35)  ? revisit github.com/opentracing/opentracing-go to add 1 pkgs
(38)    ✓ include 2 more pkgs from github.com/opentracing/[email protected]
(35)  ? attempt github.com/Azure/go-autorest with 1 pkgs; at least 1 versions to try
(39)      try github.com/Azure/[email protected]
(39)  ✓ select github.com/Azure/[email protected] w/3 pkgs
(36)  ? attempt golang.org/x/time with 1 pkgs; at least 1 versions to try
(40)      try golang.org/x/time@master
(40)  ✓ select golang.org/x/time@master w/1 pkgs
(37)  ? attempt github.com/mattn/go-isatty with 1 pkgs; at least 1 versions to try
(41)      try github.com/mattn/[email protected]
(41)  ✓ select github.com/mattn/[email protected] w/1 pkgs
(38)  ? revisit github.com/Azure/go-autorest to add 4 pkgs
(42)    ✓ include 4 more pkgs from github.com/Azure/[email protected]
(38)  ? revisit github.com/prometheus/common to add 1 pkgs
(43)    ✓ include 1 more pkgs from github.com/prometheus/common@master
(38)  ? attempt golang.org/x/oauth2 with 2 pkgs; at least 1 versions to try
(44)      try golang.org/x/oauth2@master
(44)  ✓ select golang.org/x/oauth2@master w/5 pkgs
(39)  ? attempt cloud.google.com/go with 1 pkgs; at least 1 versions to try
(45)      try cloud.google.com/[email protected]
(45)  ✓ select cloud.google.com/[email protected] w/2 pkgs
(40)  ? attempt github.com/dgrijalva/jwt-go with 1 pkgs; at least 1 versions to try
(46)      try github.com/dgrijalva/[email protected]
(46)  ✓ select github.com/dgrijalva/[email protected] w/1 pkgs
(41)  ? attempt github.com/googleapis/gax-go with 1 pkgs; at least 1 versions to try
(47)      try github.com/googleapis/gax-go@master
(47)  ✓ select github.com/googleapis/gax-go@master w/1 pkgs
(42)  ? attempt gopkg.in/yaml.v2 with 1 pkgs; at least 1 versions to try
(48)      try gopkg.in/yaml.v2@v2
(48)  ✓ select gopkg.in/yaml.v2@v2 w/1 pkgs
(43)  ? attempt github.com/lann/builder with 1 pkgs; at least 1 versions to try
(49)      try github.com/lann/builder@master
(49)  ✓ select github.com/lann/builder@master w/1 pkgs
(44)  ? attempt github.com/lann/ps with 1 pkgs; at least 1 versions to try
(50)      try github.com/lann/ps@master
(50)  ✓ select github.com/lann/ps@master w/1 pkgs
(45)  ? attempt google.golang.org/grpc with 1 pkgs; at least 1 versions to try
(51)      try google.golang.org/[email protected]
(51)  ✓ select google.golang.org/[email protected] w/1 pkgs
(46)  ? attempt github.com/matttproud/golang_protobuf_extensions with 1 pkgs; at least 1 versions to try
(52)      try github.com/matttproud/[email protected]
(52)  ✓ select github.com/matttproud/[email protected] w/1 pkgs
(47)  ? attempt github.com/lib/pq with 1 pkgs; at least 1 versions to try
(53)      try github.com/lib/pq@master
(53)  ✓ select github.com/lib/pq@master w/2 pkgs
(48)  ? attempt github.com/satori/go.uuid with 1 pkgs; at least 1 versions to try
(54)      try github.com/satori/[email protected]
(54)  ✓ select github.com/satori/[email protected] w/1 pkgs
(49)  ? attempt golang.org/x/sys with 1 pkgs; at least 1 versions to try
(55)      try golang.org/x/sys@master
(55)  ✓ select golang.org/x/sys@master w/1 pkgs
(50)  ? revisit golang.org/x/sys to add 1 pkgs
(56)    ✓ include 3 more pkgs from golang.org/x/sys@master
(50)  ? attempt github.com/weaveworks/common with 10 pkgs; at least 1 versions to try
(57)      try github.com/weaveworks/common@master
(57)  ✓ select github.com/weaveworks/common@master w/12 pkgs
(51)  ? attempt github.com/opentracing-contrib/go-stdlib with 1 pkgs; at least 1 versions to try
(58)      try github.com/opentracing-contrib/go-stdlib@master
(58)  ✓ select github.com/opentracing-contrib/go-stdlib@master w/1 pkgs
(52)  ? attempt github.com/pmezard/go-difflib with 1 pkgs; at least 1 versions to try
(59)      try github.com/pmezard/[email protected]
(59)  ✓ select github.com/pmezard/[email protected] w/1 pkgs
(53)  ? attempt github.com/samuel/go-zookeeper with 1 pkgs; at least 1 versions to try
(60)      try github.com/samuel/go-zookeeper@master
(60)  ✓ select github.com/samuel/go-zookeeper@master w/1 pkgs
(54)  ? attempt google.golang.org/api with 1 pkgs; at least 1 versions to try
(61)      try google.golang.org/api@master
(61)  ✓ select google.golang.org/api@master w/4 pkgs
(55)  ? attempt github.com/prometheus/client_model with 1 pkgs; at least 1 versions to try
(62)      try github.com/prometheus/client_model@master
(62)  ✓ select github.com/prometheus/client_model@master w/1 pkgs
(56)  ? revisit google.golang.org/grpc to add 2 pkgs
(63)    ✓ include 11 more pkgs from google.golang.org/[email protected]
(56)  ? revisit golang.org/x/net to add 3 pkgs
(64)    ✓ include 7 more pkgs from golang.org/x/net@master
(56)  ? attempt github.com/stretchr/testify with 2 pkgs; at least 1 versions to try
(65)      try github.com/stretchr/[email protected]
(65)  ✓ select github.com/stretchr/[email protected] w/2 pkgs
(57)  ? attempt google.golang.org/appengine with 2 pkgs; at least 1 versions to try
(66)      try google.golang.org/[email protected]
(66)  ✓ select google.golang.org/[email protected] w/10 pkgs
(58)  ? attempt gopkg.in/fsnotify.v1 with 1 pkgs; at least 1 versions to try
(67)      try gopkg.in/[email protected]
(67)  ✓ select gopkg.in/[email protected] w/1 pkgs
(59)  ? attempt k8s.io/client-go with 6 pkgs; at least 1 versions to try
(68)      try k8s.io/[email protected]
(68)  ✓ select k8s.io/[email protected] w/103 pkgs
(60)  ? attempt github.com/blang/semver with 1 pkgs; at least 1 versions to try
(69)      try github.com/blang/[email protected]
(69)  ✓ select github.com/blang/[email protected] w/1 pkgs
(61)  ? attempt github.com/coreos/go-oidc with 3 pkgs; at least 1 versions to try
(70)      try github.com/coreos/go-oidc@master
(70)  ✓ select github.com/coreos/go-oidc@master w/5 pkgs
(62)  ? attempt github.com/coreos/pkg with 2 pkgs; at least 1 versions to try
(71)      try github.com/coreos/pkg@v3
(71)  ✓ select github.com/coreos/pkg@v3 w/3 pkgs
(63)  ? attempt github.com/emicklei/go-restful with 1 pkgs; at least 1 versions to try
(72)      try github.com/emicklei/[email protected]
(72)  ✓ select github.com/emicklei/[email protected] w/3 pkgs
(64)  ? attempt github.com/golang/glog with 1 pkgs; at least 1 versions to try
(73)      try github.com/golang/glog@master
(73)  ✓ select github.com/golang/glog@master w/1 pkgs
(65)  ? attempt github.com/docker/distribution with 1 pkgs; at least 1 versions to try
(74)      try github.com/docker/[email protected]
(74)  ✓ select github.com/docker/[email protected] w/2 pkgs
(66)  ? attempt github.com/juju/ratelimit with 1 pkgs; at least 1 versions to try
(75)      try github.com/juju/ratelimit@master
(75)  ✓ select github.com/juju/ratelimit@master w/1 pkgs
(67)  ? attempt github.com/davecgh/go-spew with 1 pkgs; at least 1 versions to try
(76)      try github.com/davecgh/[email protected]
(76)  ✓ select github.com/davecgh/[email protected] w/1 pkgs
(68)  ? attempt github.com/ghodss/yaml with 1 pkgs; at least 1 versions to try
(77)      try github.com/ghodss/yaml@master
(77)  ✓ select github.com/ghodss/yaml@master w/1 pkgs
(69)  ? attempt github.com/syndtr/goleveldb with 5 pkgs; at least 1 versions to try
(78)      try github.com/syndtr/goleveldb@master
(78)  ✓ select github.com/syndtr/goleveldb@master w/12 pkgs
(70)  ? attempt github.com/sercand/kuberesolver with 1 pkgs; at least 1 versions to try
(79)      try github.com/sercand/kuberesolver@master
(79)  ✓ select github.com/sercand/kuberesolver@master w/1 pkgs
(71)  ? revisit google.golang.org/grpc to add 2 pkgs
(80)    ✓ include 2 more pkgs from google.golang.org/[email protected]
(71)  ? attempt gopkg.in/inf.v0 with 1 pkgs; at least 1 versions to try
(81)      try gopkg.in/[email protected]
(81)  ✓ select gopkg.in/[email protected] w/1 pkgs
(72)  ? attempt github.com/weaveworks/mesh with 1 pkgs; at least 1 versions to try
(82)      try github.com/weaveworks/mesh@v0
(82)  ✓ select github.com/weaveworks/mesh@v0 w/1 pkgs
(73)  ? attempt github.com/spf13/pflag with 1 pkgs; at least 1 versions to try
(83)      try github.com/spf13/pflag@master
(83)  ✓ select github.com/spf13/pflag@master w/1 pkgs
(74)  ? attempt github.com/miekg/dns with 1 pkgs; at least 1 versions to try
(84)      try github.com/miekg/dns@master
(84)  ✓ select github.com/miekg/dns@master w/1 pkgs
(75)  ? attempt github.com/pborman/uuid with 1 pkgs; at least 1 versions to try
(85)      try github.com/pborman/[email protected]
(85)  ✓ select github.com/pborman/[email protected] w/1 pkgs
(76)  ? attempt github.com/ugorji/go with 1 pkgs; at least 1 versions to try
(86)      try github.com/ugorji/go@master
(86)  ✓ select github.com/ugorji/go@master w/1 pkgs
(77)  ? attempt github.com/go-openapi/spec with 1 pkgs; at least 1 versions to try
(87)      try github.com/go-openapi/spec@master
(87)  ✓ select github.com/go-openapi/spec@master w/1 pkgs
(78)  ? attempt github.com/go-openapi/jsonpointer with 1 pkgs; at least 1 versions to try
(88)      try github.com/go-openapi/jsonpointer@master
(88)  ✓ select github.com/go-openapi/jsonpointer@master w/1 pkgs
(79)  ? attempt github.com/go-openapi/jsonreference with 1 pkgs; at least 1 versions to try
(89)      try github.com/go-openapi/jsonreference@master
(89)  ✓ select github.com/go-openapi/jsonreference@master w/1 pkgs
(80)  ? attempt github.com/PuerkitoBio/purell with 1 pkgs; at least 1 versions to try
(90)      try github.com/PuerkitoBio/[email protected]
(90)  ✓ select github.com/PuerkitoBio/[email protected] w/1 pkgs
(81)  ? revisit golang.org/x/net to add 1 pkgs
(91)    ✓ include 1 more pkgs from golang.org/x/net@master
(81)  ? attempt github.com/go-openapi/swag with 1 pkgs; at least 1 versions to try
(92)      try github.com/go-openapi/swag@master
(92)  ✓ select github.com/go-openapi/swag@master w/1 pkgs
(82)  ? attempt github.com/PuerkitoBio/urlesc with 1 pkgs; at least 1 versions to try
(93)      try github.com/PuerkitoBio/urlesc@master
(93)  ✓ select github.com/PuerkitoBio/urlesc@master w/1 pkgs
(83)  ? attempt github.com/weaveworks-experiments/loki with 1 pkgs; at least 1 versions to try
(94)      try github.com/weaveworks-experiments/loki@master
(94)  ✓ select github.com/weaveworks-experiments/loki@master w/1 pkgs
(84)  ? attempt github.com/apache/thrift with 1 pkgs; at least 1 versions to try
(95)      try github.com/apache/[email protected]
(95)  ✓ select github.com/apache/[email protected] w/1 pkgs
(85)  ? attempt github.com/google/gofuzz with 1 pkgs; at least 1 versions to try
(96)      try github.com/google/gofuzz@master
(96)  ✓ select github.com/google/gofuzz@master w/1 pkgs
(86)  ? attempt github.com/openzipkin/zipkin-go-opentracing with 2 pkgs; at least 1 versions to try
(97)      try github.com/openzipkin/[email protected]
(97)  ✓ select github.com/openzipkin/[email protected] w/6 pkgs
(87)  ? attempt github.com/Shopify/sarama with 1 pkgs; at least 1 versions to try
(98)      try github.com/Shopify/[email protected]
(98)  ✓ select github.com/Shopify/[email protected] w/1 pkgs
(88)  ? attempt github.com/eapache/go-resiliency with 1 pkgs; at least 1 versions to try
(99)      try github.com/eapache/[email protected]
(99)  ✓ select github.com/eapache/[email protected] w/1 pkgs
(89)  ? attempt github.com/go-logfmt/logfmt with 1 pkgs; at least 1 versions to try
(100)     try github.com/go-logfmt/[email protected]
(100) ✓ select github.com/go-logfmt/[email protected] w/1 pkgs
(90)  ? attempt github.com/eapache/go-xerial-snappy with 1 pkgs; at least 1 versions to try
(101)     try github.com/eapache/go-xerial-snappy@master
(101) ✓ select github.com/eapache/go-xerial-snappy@master w/1 pkgs
(91)  ? attempt github.com/klauspost/crc32 with 1 pkgs; at least 1 versions to try
(102)     try github.com/klauspost/[email protected]
(102) ✓ select github.com/klauspost/[email protected] w/1 pkgs
(92)  ? attempt github.com/rcrowley/go-metrics with 1 pkgs; at least 1 versions to try
(103)     try github.com/rcrowley/go-metrics@master
(103) ✓ select github.com/rcrowley/go-metrics@master w/1 pkgs
(93)  ? attempt github.com/kr/logfmt with 1 pkgs; at least 1 versions to try
(104)     try github.com/kr/logfmt@master
(104) ✓ select github.com/kr/logfmt@master w/1 pkgs
(94)  ? attempt github.com/eapache/queue with 1 pkgs; at least 1 versions to try
(105)     try github.com/eapache/[email protected]
(105) ✓ select github.com/eapache/[email protected] w/1 pkgs
(95)  ? attempt github.com/mailru/easyjson with 2 pkgs; at least 1 versions to try
(106)     try github.com/mailru/easyjson@master
(106) ✓ select github.com/mailru/easyjson@master w/3 pkgs
(96)  ? attempt github.com/pierrec/lz4 with 1 pkgs; at least 1 versions to try
(107)     try github.com/pierrec/lz4@master
(107) ✓ select github.com/pierrec/lz4@master w/1 pkgs
(97)  ? attempt github.com/pierrec/xxHash with 1 pkgs; at least 1 versions to try
(108)     try github.com/pierrec/[email protected]
(108) ✓ select github.com/pierrec/[email protected] w/1 pkgs
(98)  ? attempt golang.org/x/crypto with 2 pkgs; at least 1 versions to try
(109)     try golang.org/x/crypto@master
(109) ✓ select golang.org/x/crypto@master w/5 pkgs
(99)  ? attempt golang.org/x/text with 2 pkgs; at least 1 versions to try
(110)     try golang.org/x/text@master
(110) ✓ select golang.org/x/text@master w/7 pkgs
  ✓ found solution with 388 packages from 99 projects

Solver wall times by segment:
  b-deduce-proj-root: 5.226671974s
         b-list-pkgs: 4.957298224s
     b-source-exists: 3.026180237s
              b-gmal: 1.567557078s
         select-atom:  178.37082ms
             satisfy:   85.28377ms
         select-root:  10.250353ms
            new-atom:   7.209009ms
               other:    498.044µs
            add-atom:     73.582µs

  TOTAL: 15.059393091s

The manifest is updated correctly, but the lock file shows this not being honored:

$ cat manifest.json 
{
    "dependencies": {
        "github.com/Azure/azure-sdk-for-go": {
            "revision": "bd73d950fa4440dae889bd9917bff7cef539f86e"
        },
    }
}
$ grep -B1 -A7 Azure lock.json 
        {
            "name": "github.com/Azure/azure-sdk-for-go",
            "version": "v8.1.1-beta",
            "revision": "4897648e310020dae650a89c31ff633284c13a24",
            "packages": [
                "arm/compute",
                "arm/network"
            ]
        },
@sdboyer
Copy link
Member

sdboyer commented Mar 12, 2017

Do any packages in weaveworks/cortex import github.com/Azure/azure-sdk-for-go directly? If not, that'd be the easiest explanation here - see #302.

If so, then hopefully it's a bug in how we report constraints to gps, not gps itself, because otherwise I did something hairy. Could you dump the results of dep hash-inputs to here?

(/cc @kris-nova - looks like there's a counting bug in the trace output, see it hopping up and down?)

@tomwilkie
Copy link
Contributor Author

They don't, no - its imported transitively by Prometheus.

I made it an override instead, and that seemed to do the trick:

{
    "overrides": {
        "github.com/Azure/azure-sdk-for-go": {
            "revision": "bd73d950fa4440dae889bd9917bff7cef539f86e"
        }
    }
}
$ dep hash-inputs
-CONSTRAINTS-
-IMPORTS/REQS-
github.com/Masterminds/squirrel
github.com/Sirupsen/logrus
github.com/armon/go-socks5
github.com/aws/aws-sdk-go/aws
github.com/aws/aws-sdk-go/aws/awserr
github.com/aws/aws-sdk-go/aws/credentials
github.com/aws/aws-sdk-go/aws/session
github.com/aws/aws-sdk-go/service/dynamodb
github.com/aws/aws-sdk-go/service/dynamodb/dynamodbiface
github.com/aws/aws-sdk-go/service/s3
github.com/bradfitz/gomemcache/memcache
github.com/docker/docker/pkg/ioutils
github.com/gogo/protobuf/gogoproto
github.com/gogo/protobuf/proto
github.com/gogo/protobuf/sortkeys
github.com/golang/protobuf/proto
github.com/golang/snappy
github.com/gorilla/mux
github.com/grpc-ecosystem/grpc-opentracing/go/otgrpc
github.com/hashicorp/consul/api
github.com/jonboulle/clockwork
github.com/lib/pq
github.com/mattes/migrate/driver/postgres
github.com/mattes/migrate/migrate
github.com/mgutz/ansi
github.com/mwitkow/go-grpc-middleware
github.com/opentracing/opentracing-go
github.com/prometheus/alertmanager/api
github.com/prometheus/alertmanager/config
github.com/prometheus/alertmanager/dispatch
github.com/prometheus/alertmanager/inhibit
github.com/prometheus/alertmanager/nflog
github.com/prometheus/alertmanager/notify
github.com/prometheus/alertmanager/provider/mem
github.com/prometheus/alertmanager/silence
github.com/prometheus/alertmanager/template
github.com/prometheus/alertmanager/types
github.com/prometheus/alertmanager/ui
github.com/prometheus/client_golang/prometheus
github.com/prometheus/common/log
github.com/prometheus/common/model
github.com/prometheus/common/route
github.com/prometheus/prometheus/config
github.com/prometheus/prometheus/notifier
github.com/prometheus/prometheus/promql
github.com/prometheus/prometheus/retrieval
github.com/prometheus/prometheus/rules
github.com/prometheus/prometheus/storage/local
github.com/prometheus/prometheus/storage/local/chunk
github.com/prometheus/prometheus/storage/metric
github.com/prometheus/prometheus/web/api/v1
github.com/stretchr/testify/assert
github.com/stretchr/testify/require
github.com/weaveworks/common/errors
github.com/weaveworks/common/instrument
github.com/weaveworks/common/logging
github.com/weaveworks/common/mflag
github.com/weaveworks/common/mflagext
github.com/weaveworks/common/middleware
github.com/weaveworks/common/mtime
github.com/weaveworks/common/server
github.com/weaveworks/common/test
github.com/weaveworks/common/user
github.com/weaveworks/mesh
golang.org/x/net/context
golang.org/x/net/context/ctxhttp
golang.org/x/time/rate
golang.org/x/tools/cover
google.golang.org/grpc
google.golang.org/grpc/codes
-IGNORES-
-OVERRIDES-
github.com/Azure/azure-sdk-for-go
r-bd73d950fa4440dae889bd9917bff7cef539f86e
-ANALYZER-
dep
0.0.1

Thanks!

@sdboyer
Copy link
Member

sdboyer commented Mar 12, 2017

Yep, that was the backup - an override will do it.

I'm interested more in this case in general, though - what are the circumstances that lead to a situation where you need to use a specific version of a transitive dep? In the simple model, we generally assume that if it's not your direct dependency, you don't have to care about it.

Also, overrides are really a sledgehammer. For this case, it might be preferable to create a dummy import, or a required entry, that names github.com/Azure/azure-sdk-for-go, thus promoting it to a direct dependency and allowing you to use a regular constraint, instead of an override.

@sdboyer sdboyer closed this as completed Mar 12, 2017
@tomwilkie
Copy link
Contributor Author

what are the circumstances that lead to a situation where you need to use a specific version of a transitive dep?

This is a bit of a special case, but cortex uses prometheus as a library, and prometheus has to use a specific version of the azure client library. The real problem is the azure client library latest version isn't up to date enough if you go by the tags.

@sdboyer
Copy link
Member

sdboyer commented Mar 12, 2017

That doesn't actually sound like a special case at all - it's one of the exact cases we've designed to accommodate. If prometheus had its own manifest that declared its constraint on azure-sdk, then the solve for cortex would incorporate that constraint, and you wouldn't need to do anything.

It looks like prometheus is currently managed with govendor. As discussed in #222, it would be possible for us to make dep able to read and convert that information on the fly, in such a way that you'd be able to rely on existing versions of prometheus and still pick up that constraint on azure-sdk. (There would be side effects to this, though, and if we do something like that, it's likely to be very cautious)

@tomwilkie
Copy link
Contributor Author

Ah, very cool. @juliusv - do you think the prometheus devs would consider moving to dep at some point?

@sdboyer
Copy link
Member

sdboyer commented Mar 12, 2017

I would encourage no one to move to dep until we at least close out #276 😄 manifest and lock will be changing structure, names, formats, and we won't provide an upgrade path.

We're pushing as hard as we can on getting that done, but for now, experimentation and feedback is what we really need to get there.

@juliusv
Copy link

juliusv commented Mar 12, 2017

@tomwilkie I'm pretty sure we'll move to dep the second it's the officially recommended Go tool for managing dependencies :) Can't wait for this to be standardized in Go-land.

@sdboyer
Copy link
Member

sdboyer commented Mar 12, 2017

@juliusv exactly what i love to hear! 🎉

if you have a chance to test it out and give feedback before then, that'd be awesome, too.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants