On Tuesday, April 2, 2019 at 5:31:51 AM UTC-4, T L wrote:
>
> This is glide.lock file at 
> github.com/projectcalico/libcalico...@v3.7.0-0.dev+incompatible 
> <https://github.com/projectcalico/libcalico-go/blob/v3.7.0-0.dev/glide.lock>
> ,
>
>
> and this is the go.mod file after running go build:
>
> module a.b.c/ddd
>
> require (
>     contrib.go.opencensus.io/exporter/ocagent v0.4.10 // indirect
>     github.com/Azure/go-autorest v11.7.0+incompatible // indirect
>     github.com/coreos/bbolt v1.3.2 // indirect
>     github.com/coreos/etcd v3.3.12+incompatible // indirect
>     github.com/coreos/go-semver v0.2.0 // indirect
>     github.com/coreos/go-systemd v0.0.0-20190321100706-95778dfbb74e // 
> indirect
>     github.com/coreos/pkg v0.0.0-20180928190104-399ea9e2e55f // indirect
>     github.com/dgrijalva/jwt-go v3.2.0+incompatible // indirect
>     github.com/go-playground/locales v0.12.1 // indirect
>     github.com/go-playground/universal-translator v0.16.0 // indirect
>     github.com/gogo/protobuf v1.2.1 // indirect
>     github.com/golang/groupcache v0.0.0-20190129154638-5b532d6fd5ef // 
> indirect
>     github.com/golang/mock v1.2.0 // indirect
>     github.com/google/btree v1.0.0 // indirect
>     github.com/google/gofuzz v0.0.0-20170612174753-24818f796faf // 
> indirect
>     github.com/google/uuid v1.1.1 // indirect
>     github.com/googleapis/gnostic v0.2.0 // indirect
>     github.com/gophercloud/gophercloud v0.0.0-20190330013820-4d3066f119fa 
> // indirect
>     github.com/gorilla/websocket v1.4.0 // indirect
>     github.com/gregjones/httpcache v0.0.0-20190212212710-3befbb6ad0cc // 
> indirect
>     github.com/grpc-ecosystem/go-grpc-middleware v1.0.0 // indirect
>     github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect
>     github.com/grpc-ecosystem/grpc-gateway v1.8.5 // indirect
>     github.com/hashicorp/golang-lru v0.5.1 // indirect
>     github.com/imdario/mergo v0.3.7 // indirect
>     github.com/jonboulle/clockwork v0.1.0 // indirect
>     github.com/json-iterator/go v1.1.6 // indirect
>     github.com/kelseyhightower/envconfig v1.3.0 // indirect
>     github.com/leodido/go-urn v1.1.0 // indirect
>     github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // 
> indirect
>     github.com/modern-go/reflect2 v1.0.1 // indirect
>     github.com/peterbourgon/diskv v2.0.1+incompatible // indirect
>     github.com/projectcalico/go-json v0.0.0-20161128004156-6219dc7339ba 
> // indirect
>     github.com/projectcalico/go-yaml v0.0.0-20161201183616-955bc3e451ef 
> // indirect
>     github.com/projectcalico/go-yaml-wrapper 
> v0.0.0-20161127220527-598e54215bee // indirect
>     github.com/projectcalico/libcalico-go v3.7.0-0.dev+incompatible
>     github.com/satori/go.uuid v1.2.0 // indirect
>     github.com/sirupsen/logrus v1.4.0 // indirect
>     github.com/soheilhy/cmux v0.1.4 // indirect
>     github.com/spf13/pflag v1.0.3 // indirect
>     github.com/tmc/grpc-websocket-proxy 
> v0.0.0-20190109142713-0ad062ec5ee5 // indirect
>     github.com/ugorji/go/codec v0.0.0-20190320090025-2dc34c0b8780 // 
> indirect
>     github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 // 
> indirect
>     go.etcd.io/bbolt v1.3.2 // indirect
>     go.opencensus.io v0.20.0 // indirect
>     go.uber.org/atomic v1.3.2 // indirect
>     go.uber.org/multierr v1.1.0 // indirect
>     go.uber.org/zap v1.9.1 // indirect
>     golang.org/x/net v0.0.0-20190328230028-74de082e2cca // indirect
>     golang.org/x/oauth2 v0.0.0-20190319182350-c85d3e98c914 // indirect
>     golang.org/x/time v0.0.0-20190308202827-9d24e82272b4 // indirect
>     gopkg.in/go-playground/assert.v1 v1.2.1 // indirect
>     gopkg.in/go-playground/validator.v9 v9.28.0 // indirect
>     gopkg.in/inf.v0 v0.9.1 // indirect
>     k8s.io/api v0.0.0-20190327184913-92d2ee7fc726 // indirect
>     k8s.io/apimachinery v0.0.0-20190402064448-91ffda0f6be2 // indirect
>     k8s.io/client-go v10.0.0+incompatible // indirect
>     k8s.io/klog v0.2.0 // indirect
>     sigs.k8s.io/yaml v1.1.0 // indirect
> )
>
> go 1.12
>
> Who can help me on how to specify the version numbers in go.mod file to 
> let the program compile ok?
>
> On Tuesday, April 2, 2019 at 12:36:27 AM UTC-4, T L wrote:
>>
>>
>>
>> On Tuesday, April 2, 2019 at 12:33:41 AM UTC-4, T L wrote:
>>>
>>>
>>>
>>> On Monday, April 1, 2019 at 9:01:28 AM UTC-4, Jakob Borg wrote:
>>>>
>>>> On 1 Apr 2019, at 11:22, T L <tapi...@gmail.com> wrote:
>>>>
>>>>
>>>> How to use this package in vgo mode?
>>>>
>>>>
>>>> go mod init a.b.c/ddd
>>>> go get github.com/projectcalico/libcalico-go@master
>>>>
>>>> The problem is that their latest non-prerelease tag is v1.7.3, which is 
>>>> several years old and doesn’t contain the package you want to import.
>>>>
>>>> //jb
>>>>
>>>
>>>
>>> There are still some problems:
>>>
>>> $ cat main.go
>>> package main
>>>
>>> import _ "github.com/projectcalico/libcalico-go/lib/apiconfig"
>>> import _ "github.com/projectcalico/libcalico-go/lib/clientv3"
>>>
>>> func main() {
>>>     
>>> }
>>>
>>> $ cat go.mod
>>> module a.b.c/ddd
>>>
>>> require (
>>>     github.com/projectcalico/libcalico-go v3.7.0-0.dev+incompatible
>>> )
>>>
>>> go 1.12
>>>
>>> $ go build
>>> go: finding github.com/coreos/etcd/clientv3 latest
>>> go: finding github.com/coreos/etcd/mvcc/mvccpb latest
>>> go: finding github.com/coreos/etcd/mvcc latest
>>> go: finding k8s.io/apimachinery/pkg/runtime/schema latest
>>> go: finding k8s.io/apimachinery/pkg/runtime/serializer latest
>>> go: finding k8s.io/apimachinery/pkg/runtime latest
>>> go: finding k8s.io/apimachinery/pkg/apis/meta latest
>>> go: finding k8s.io/apimachinery/pkg/util/validation latest
>>> go: finding k8s.io/apimachinery/pkg/util/uuid latest
>>> go: finding k8s.io/api/core latest
>>> go: finding k8s.io/client-go/kubernetes latest
>>> go: finding k8s.io/client-go/plugin/pkg/client/auth latest
>>> go: finding k8s.io/client-go/tools/clientcmd latest
>>> go: finding k8s.io/apimachinery/pkg latest
>>> go: finding k8s.io/apimachinery/pkg/apis latest
>>> go: finding k8s.io/apimachinery/pkg/util latest
>>> go: finding k8s.io/api latest
>>> go: finding github.com/coreos/etcd/pkg/transport latest
>>> go: finding github.com/coreos/etcd/pkg latest
>>> go: finding k8s.io/apimachinery latest
>>> go: finding k8s.io/client-go/plugin/pkg/client latest
>>> go: finding k8s.io/client-go/tools latest
>>> go: finding k8s.io/apimachinery/pkg/api/meta latest
>>> go: finding k8s.io/apimachinery/pkg/types latest
>>> go: finding k8s.io/apimachinery/pkg/util/intstr latest
>>> go: finding k8s.io/apimachinery/pkg/api/errors latest
>>> go: finding k8s.io/client-go/plugin/pkg latest
>>> go: finding k8s.io/apimachinery/pkg/api latest
>>> go: finding k8s.io/api/networking latest
>>> go: finding k8s.io/apimachinery/pkg/watch latest
>>> go: finding k8s.io/client-go/plugin latest
>>> go: finding k8s.io/client-go/tools/cache latest
>>> go: finding k8s.io/client-go/rest latest
>>> go: finding k8s.io/apimachinery/pkg/fields latest
>>> go: finding k8s.io/client-go/kubernetes/scheme latest
>>> go: finding github.com/projectcalico/go-yaml-wrapper latest
>>> go: finding golang.org/x/net/http2 latest
>>> go: finding golang.org/x/net latest
>>> go: finding github.com/projectcalico/go-json/json latest
>>> go: finding github.com/projectcalico/go-yaml latest
>>> go: finding github.com/projectcalico/go-json latest
>>> go: finding k8s.io/api/admissionregistration/v1alpha1 latest
>>> go: finding github.com/Azure/go-autorest/autorest latest
>>> go: finding github.com/gogo/protobuf/proto latest
>>> go: finding github.com/gogo/protobuf/gogoproto latest
>>> go: finding github.com/Azure/go-autorest/autorest/adal latest
>>> go: finding k8s.io/api/admissionregistration latest
>>> go: finding github.com/Azure/go-autorest/autorest/azure latest
>>> go: finding github.com/golang/protobuf/proto latest
>>> go: finding github.com/google/gofuzz latest
>>> go: finding golang.org/x/net/context latest
>>> go: finding github.com/gogo/protobuf/sortkeys latest
>>> go: finding golang.org/x/oauth2 latest
>>> go: finding github.com/googleapis/gnostic/OpenAPIv2 latest
>>> go: finding golang.org/x/oauth2/google latest
>>> go: finding github.com/gregjones/httpcache/diskcache latest
>>> go: finding github.com/gregjones/httpcache latest
>>> go: finding google.golang.org/grpc/codes latest
>>> go: finding google.golang.org/grpc/credentials latest
>>> go: finding google.golang.org/grpc/grpclog latest
>>> go: finding google.golang.org/grpc/metadata latest
>>> go: finding google.golang.org/grpc/status latest
>>> go: finding google.golang.org/grpc/keepalive latest
>>> go: finding github.com/gophercloud/gophercloud/openstack latest
>>> go: finding github.com/gophercloud/gophercloud latest
>>> go: finding google.golang.org/grpc/health/grpc_health_v1 latest
>>> go: finding google.golang.org/grpc/health latest
>>> go: finding golang.org/x/time/rate latest
>>> go: finding golang.org/x/time latest
>>> go: finding github.com/modern-go/concurrent latest
>>> go: finding go.opencensus.io/plugin/ochttp latest
>>> go: finding go.opencensus.io/stats/view latest
>>> go: finding go.opencensus.io/trace latest
>>> go: finding go.opencensus.io/plugin/ochttp/propagation/tracecontext 
>>> latest
>>> go: finding go.opencensus.io/plugin latest
>>> go: finding go.opencensus.io/stats latest
>>> go: finding go.opencensus.io/plugin/ochttp/propagation latest
>>> go: finding github.com/grpc-ecosystem/grpc-gateway/runtime latest
>>> go: finding github.com/grpc-ecosystem/grpc-gateway/utilities latest
>>> build a.b.c/ddd: cannot load k8s.io/api/admissionregistration/v1alpha1: 
>>> cannot find module providing package 
>>> k8s.io/api/admissionregistration/v1alpha1
>>>
>>>
>>> It looks the problem is the same as the old one.
>>> It should be possible that I can find the proper versions for the 
>>> indirect dependencies.
>>> The libcalico-go project uses glide as the dependency tool.
>>> There is a glide.lock file.
>>> The go command should get the indirect dependency version there,
>>> instead of failing to exit and letting uses to find the proper versions.
>>>
>>
>> Without godep/glide/etc import built-in, it would be a big obstacle to 
>> use some modules (which not using vgo currently) with many indirect 
>> dependencies. 
>>
>
ok, from the tip here: 
https://github.com/golang/go/wiki/Modules#automatic-migration-from-prior-dependency-managers
I run "go mod init a/bc/xxx" under the 
"libcalico...@v3.7.0-0.dev+incompatible" folder in the module cache 
directory.
Then I copy the require lines from the generated go.mod file into the 
"a.b.c/ddd" project.
It compiles ok now.

But the whole experience is really not happy.

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to