Merge pull request #571 from restic/raise-go-version

Require Go 1.6 or greater
This commit is contained in:
Alexander Neumann 2016-08-16 21:20:59 +02:00
commit b5c397435c
6 changed files with 14 additions and 17 deletions

View file

@ -2,10 +2,8 @@ language: go
sudo: false sudo: false
go: go:
- 1.3.3 - 1.6.3
- 1.4.3 - 1.7
- 1.5.4
- 1.6.2
os: os:
- linux - linux
@ -14,11 +12,7 @@ os:
matrix: matrix:
exclude: exclude:
- os: osx - os: osx
go: 1.3.3 go: 1.6.3
- os: osx
go: 1.4.3
- os: osx
go: 1.5.4
notifications: notifications:
irc: irc:

View file

@ -18,7 +18,7 @@
FROM ubuntu:14.04 FROM ubuntu:14.04
ARG GOVERSION=1.6 ARG GOVERSION=1.7
ARG GOARCH=amd64 ARG GOARCH=amd64
# install dependencies # install dependencies

View file

@ -22,7 +22,7 @@ latest released version.
Build restic Build restic
============ ============
Install Go/Golang (at least version 1.3), then run `go run build.go`, Install Go/Golang (at least version 1.6), then run `go run build.go`,
afterwards you'll find the binary in the current directory: afterwards you'll find the binary in the current directory:
$ go run build.go $ go run build.go

View file

@ -13,8 +13,8 @@ init:
install: install:
- rmdir c:\go /s /q - rmdir c:\go /s /q
- appveyor DownloadFile https://storage.googleapis.com/golang/go1.6.1.windows-amd64.msi - appveyor DownloadFile https://storage.googleapis.com/golang/go1.7.windows-amd64.msi
- msiexec /i go1.6.1.windows-amd64.msi /q - msiexec /i go1.7.windows-amd64.msi /q
- go version - go version
- go env - go env
- appveyor DownloadFile http://sourceforge.netcologne.de/project/gnuwin32/tar/1.13-1/tar-1.13-1-bin.zip -FileName tar.zip - appveyor DownloadFile http://sourceforge.netcologne.de/project/gnuwin32/tar/1.13-1/tar-1.13-1-bin.zip -FileName tar.zip

View file

@ -278,6 +278,10 @@ func (cs Constants) LDFlags() string {
} }
func main() { func main() {
if runtime.Version() < "go1.6" {
fmt.Fprintf(os.Stderr, "old version of Go detected (%v), I'll try but no guarantees\n", runtime.Version())
}
buildTags := []string{} buildTags := []string{}
skipNext := false skipNext := false

View file

@ -168,7 +168,7 @@ func (env *TravisEnvironment) Prepare() error {
} }
} }
if *runCrossCompile { if *runCrossCompile && !(runtime.Version() < "go1.7") {
// only test cross compilation on linux with Travis // only test cross compilation on linux with Travis
if err := run("go", "get", "github.com/mitchellh/gox"); err != nil { if err := run("go", "get", "github.com/mitchellh/gox"); err != nil {
return err return err
@ -191,8 +191,7 @@ func (env *TravisEnvironment) Prepare() error {
msg("gox: OS/ARCH %v\n", env.goxOSArch) msg("gox: OS/ARCH %v\n", env.goxOSArch)
v := runtime.Version() if runtime.Version() < "go1.5" {
if !strings.HasPrefix(v, "go1.5") && !strings.HasPrefix(v, "go1.6") {
err := run("gox", "-build-toolchain", err := run("gox", "-build-toolchain",
"-osarch", strings.Join(env.goxOSArch, " ")) "-osarch", strings.Join(env.goxOSArch, " "))
@ -318,7 +317,7 @@ func (env *TravisEnvironment) RunTests() error {
env.env["GOPATH"] = cwd + ":" + filepath.Join(cwd, "vendor") env.env["GOPATH"] = cwd + ":" + filepath.Join(cwd, "vendor")
if *runCrossCompile { if *runCrossCompile && !(runtime.Version() < "go1.7") {
// compile for all target architectures with tags // compile for all target architectures with tags
for _, tags := range []string{"release", "debug"} { for _, tags := range []string{"release", "debug"} {
runWithEnv(env.env, "gox", "-verbose", runWithEnv(env.env, "gox", "-verbose",