cortesi / modd

A flexible developer tool that runs processes and responds to filesystem changes
MIT License
2.8k stars 128 forks source link

Add go.mod for go1.12 build #58

Closed deltam closed 5 years ago

deltam commented 6 years ago

I added go.mod for build on go1.11.

Fixes #57

I logged step of create go.mod below.

$ go version
go version go1.11 darwin/amd64
$ go mod init github.com/cortesi/modd
go: creating new go.mod: module github.com/cortesi/modd
go: copying requirements from Gopkg.lock
$ GO111MODULE=on go build ./cmd/modd/
go: extracting github.com/bmatcuk/doublestar v0.0.0-20180126204402-54c073d0225f
-> unzip /Users/deltam/.gopath/1.11/pkg/mod/cache/download/github.com/bmatcuk/doublestar/@v/v0.0.0-20180126204402-54c073d0225f.zip: malformed file path "test/a☺b": inval
id char '☺'
../../.gopath/1.11/pkg/mod/github.com/cortesi/moddwatch@v0.0.0-20180721212156-56d4369103b0/filter/filter.go:7:2: unknown import path "github.com/bmatcuk/doublestar": unz
ip /Users/deltam/.gopath/1.11/pkg/mod/cache/download/github.com/bmatcuk/doublestar/@v/v0.0.0-20180126204402-54c073d0225f.zip: malformed file path "test/a☺b": invalid cha
r '☺'
$ go get github.com/bmatcuk/doublestar@v1.1.1
$ GO111MODULE=on go build ./cmd/modd/
# github.com/rjeczalik/notify
../../.gopath/1.11/pkg/mod/github.com/rjeczalik/notify@v0.9.0/watcher_fsevents_cgo.go:51:216: cannot use nil as type _Ctype_CFAllocatorRef in argument to func literal
../../.gopath/1.11/pkg/mod/github.com/rjeczalik/notify@v0.9.0/watcher_fsevents_cgo.go:169:47: cannot use nil as type _Ctype_CFAllocatorRef in argument to _Cfunc_CFStringCreateWithCStringNoCopy
../../.gopath/1.11/pkg/mod/github.com/rjeczalik/notify@v0.9.0/watcher_fsevents_cgo.go:170:225: cannot use nil as type _Ctype_CFAllocatorRef in argument to func literal
$ go get github.com/rjeczalik/notify@4e54e7f
go: finding github.com/rjeczalik/notify 4e54e7f
$ GO111MODULE=on go build ./cmd/modd/
# Succeed!
deltam commented 6 years ago

github.com/rjeczalik/notify@v0.9.1 is released, so I updated go.mod to that. https://github.com/rjeczalik/notify/releases/tag/v0.9.1

$ go version
go version go1.11 darwin/amd64
$ GO111MODULE=on go get github.com/rjeczalik/notify@v0.9.1
go: finding github.com/rjeczalik/notify v0.9.1
go: downloading github.com/rjeczalik/notify v0.9.1
$ GO111MODULE=on go list -m all
github.com/cortesi/modd
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf
github.com/bmatcuk/doublestar v1.1.1
github.com/cortesi/moddwatch v0.0.0-20180721212156-56d4369103b0
github.com/cortesi/termlog v0.0.0-20171116205515-87cefd5ac843
github.com/fatih/color v0.0.0-20180516100307-2d684516a886
github.com/mattn/go-colorable v0.0.9
github.com/mattn/go-isatty v0.0.3
github.com/rjeczalik/notify v0.9.1
golang.org/x/crypto v0.0.0-20180723164146-c126467f60eb
golang.org/x/net v0.0.0-20180724234803-3673e40ba225
golang.org/x/sys v0.0.0-20180724212812-e072cadbbdc8
gopkg.in/alecthomas/kingpin.v2 v2.2.6
mvdan.cc/sh v2.5.0+incompatible
$ GO111MODULE=on go build ./cmd/modd/
go: finding github.com/rjeczalik/notify v0.9.1
go: downloading github.com/rjeczalik/notify v0.9.1
# Succeed!
deltam commented 6 years ago
$ go version
go version go1.11 darwin/amd64
$ GO111MODULE=on go mod tidy -v
go: finding github.com/stretchr/testify/assert latest
go: finding github.com/google/go-cmp/cmp latest
go: finding github.com/pmezard/go-difflib/difflib latest
go: finding github.com/davecgh/go-spew/spew latest
deltam commented 5 years ago

Update go.mod for latest master(e30792b1408111a0b23229f18d207a21af1e3bed).

$ cd $GOPATH/src/github.com/cortesi/modd
$ rm go.mod go.sum
$ go mod init github.com/cortesi/modd
$ GO111MODULE=on go mod init github.com/cortesi/modd
go: creating new go.mod: module github.com/cortesi/modd
go: copying requirements from Gopkg.lock
$ GO111MODULE=on go mod tidy
go: finding github.com/cortesi/moddwatch v0.0.0-20181226031657-d27f53de245e
go: finding github.com/rjeczalik/notify v0.0.0-20181126183243-629144ba06a1
go: finding golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4
go: finding golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9
go: finding golang.org/x/sys v0.0.0-20181221143128-b4a75ba826a6
go: finding golang.org/x/net v0.0.0-20181220203305-927f97764cc3
go: finding mvdan.cc/sh v0.0.0-20181216173157-8aeb0734cd0f
go: downloading mvdan.cc/sh v0.0.0-20181216173157-8aeb0734cd0f
go: downloading github.com/cortesi/moddwatch v0.0.0-20181226031657-d27f53de245e
go: downloading golang.org/x/net v0.0.0-20181220203305-927f97764cc3
go: downloading golang.org/x/sys v0.0.0-20181221143128-b4a75ba826a6
go: downloading gopkg.in/alecthomas/kingpin.v2 v2.2.6
go: downloading golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9
go: extracting github.com/cortesi/moddwatch v0.0.0-20181226031657-d27f53de245e
go: downloading github.com/rjeczalik/notify v0.0.0-20181126183243-629144ba06a1
go: extracting golang.org/x/net v0.0.0-20181220203305-927f97764cc3
go: extracting github.com/rjeczalik/notify v0.0.0-20181126183243-629144ba06a1
go: extracting golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9
go: extracting golang.org/x/sys v0.0.0-20181221143128-b4a75ba826a6
go: extracting mvdan.cc/sh v0.0.0-20181216173157-8aeb0734cd0f
go: extracting gopkg.in/alecthomas/kingpin.v2 v2.2.6
go: finding github.com/google/go-cmp/cmp latest
go: downloading golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4
go: downloading github.com/kr/pretty v0.1.0
go: extracting golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4
go: downloading github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc
go: extracting github.com/kr/pretty v0.1.0
go: downloading github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf
go: extracting github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf
go: finding github.com/stretchr/testify/assert latest
go: downloading github.com/google/go-cmp v0.2.0
go: extracting github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc
go: extracting github.com/google/go-cmp v0.2.0
go: downloading github.com/stretchr/testify v1.3.0
go: extracting github.com/stretchr/testify v1.3.0
go: downloading github.com/kr/text v0.1.0
go: downloading github.com/pmezard/go-difflib v1.0.0
go: downloading github.com/davecgh/go-spew v1.1.0
go: extracting github.com/pmezard/go-difflib v1.0.0
go: extracting github.com/kr/text v0.1.0
go: extracting github.com/davecgh/go-spew v1.1.0
$ cat go.mod
module github.com/cortesi/modd

go 1.12

require (
        github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc // indirect
        github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf // indirect
        github.com/bmatcuk/doublestar v1.1.1 // indirect
        github.com/cortesi/moddwatch v0.0.0-20181226031657-d27f53de245e
        github.com/cortesi/termlog v0.0.0-20171116205515-87cefd5ac843
        github.com/fatih/color v0.0.0-20181010231311-3f9d52f7176a // indirect
        github.com/google/go-cmp v0.2.0 // indirect
        github.com/kr/pretty v0.1.0 // indirect
        github.com/mattn/go-colorable v0.0.9 // indirect
        github.com/mattn/go-isatty v0.0.4 // indirect
        github.com/rjeczalik/notify v0.0.0-20181126183243-629144ba06a1 // indirect
        github.com/stretchr/testify v1.3.0 // indirect
        golang.org/x/crypto v0.0.0-20181203042331-505ab145d0a9 // indirect
        golang.org/x/net v0.0.0-20181220203305-927f97764cc3 // indirect
        golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4 // indirect
        golang.org/x/sys v0.0.0-20181221143128-b4a75ba826a6 // indirect
        gopkg.in/alecthomas/kingpin.v2 v2.2.6
        mvdan.cc/sh v0.0.0-20181216173157-8aeb0734cd0f
)
$ GO111MODULE=on go test ./...
ok      github.com/cortesi/modd 2.626s
?       github.com/cortesi/modd/cmd/modd        [no test files]
ok      github.com/cortesi/modd/conf    0.035s
?       github.com/cortesi/modd/notify  [no test files]
ok      github.com/cortesi/modd/shell   4.591s
?       github.com/cortesi/modd/utils   [no test files]
ok      github.com/cortesi/modd/varcmd  0.038s
cortesi commented 5 years ago

Thank you for trialling this. I've just done a conversion to modules with updated dependencies.

deltam commented 5 years ago

@cortesi I recommend you to run go mod tidy and make the next version tag name follow Semver(v0.9 -> v0.9.0).

$ GO111MODULE=on go mod tidy
go: finding github.com/stretchr/testify/assert latest
$ git diff go.mod
diff --git a/go.mod b/go.mod
index 6d3adde..ac82ffc 100644
--- a/go.mod
+++ b/go.mod
@@ -3,19 +3,12 @@ module github.com/cortesi/modd
 go 1.12

 require (
-    github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751
-    github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4
-    github.com/bmatcuk/doublestar v1.1.5
+    github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
+    github.com/alecthomas/units v0.0.0-20190717042225-c3de453c63f4 // indirect
     github.com/cortesi/moddwatch v0.0.0-20190809034736-2411614b3ac7
     github.com/cortesi/termlog v0.0.0-20190809035425-7871d363854c
-    github.com/fatih/color v1.7.0
-    github.com/mattn/go-colorable v0.1.2
-    github.com/mattn/go-isatty v0.0.8
-    github.com/rjeczalik/notify v0.0.0-20181126183243-629144ba06a1
-    golang.org/x/crypto v0.0.0-20190701094942-4def268fd1a4
-    golang.org/x/net v0.0.0-20190724013045-ca1201d0de80
-    golang.org/x/sync v0.0.0-20190423024810-112230192c58
-    golang.org/x/sys v0.0.0-20190804053845-51ab0e2deafa
+    github.com/kr/pretty v0.1.0 // indirect
+    github.com/stretchr/testify v1.3.0 // indirect
     gopkg.in/alecthomas/kingpin.v2 v2.2.6
     mvdan.cc/sh v2.6.4+incompatible
 )