language: go os: - linux - osx addons: apt: update: true env: matrix: - GOTAGS= - GOTAGS=libsqlite3 - GOTAGS=sqlite_allow_uri_authority - GOTAGS=sqlite_app_armor - GOTAGS=sqlite_foreign_keys - GOTAGS=sqlite_fts5 - GOTAGS=sqlite_icu - GOTAGS=sqlite_introspect - GOTAGS=sqlite_json - GOTAGS=sqlite_secure_delete - GOTAGS=sqlite_see - GOTAGS=sqlite_stat4 - GOTAGS=sqlite_trace - GOTAGS=sqlite_userauth - GOTAGS=sqlite_vacuum_full - GOTAGS=sqlite_vacuum_incr - GOTAGS=sqlite_vtable go: - 1.7.x - 1.8.x - 1.9.x - 1.10.x - master matrix: allow_failures: - go: master exclude: - os: osx go: 1.7.x include: - os: linux go: 1.7.x env: GOTAGS= GOOS=windows GOARCH=386 - os: linux go: 1.7.x env: GOTAGS= GOOS=windows GOARCH=amd64 - os: linux go: 1.7.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=386 - os: linux go: 1.7.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=amd64 - os: linux go: 1.7.x env: GOTAGS=trace GOOS=windows GOARCH=386 - os: linux go: 1.7.x env: GOTAGS=trace GOOS=windows GOARCH=amd64 - os: linux go: 1.7.x env: GOTAGS=vtable GOOS=windows GOARCH=386 - os: linux go: 1.7.x env: GOTAGS=vtable GOOS=windows GOARCH=amd64 - os: linux go: 1.8.x env: GOTAGS= GOOS=windows GOARCH=386 - os: linux go: 1.8.x env: GOTAGS= GOOS=windows GOARCH=amd64 - os: linux go: 1.8.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=386 - os: linux go: 1.8.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=amd64 - os: linux go: 1.8.x env: GOTAGS=trace GOOS=windows GOARCH=386 - os: linux go: 1.8.x env: GOTAGS=trace GOOS=windows GOARCH=amd64 - os: linux go: 1.8.x env: GOTAGS=vtable GOOS=windows GOARCH=386 - os: linux go: 1.8.x env: GOTAGS=vtable GOOS=windows GOARCH=amd64 - os: linux go: 1.9.x env: GOTAGS= GOOS=windows GOARCH=386 - os: linux go: 1.9.x env: GOTAGS= GOOS=windows GOARCH=amd64 - os: linux go: 1.9.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=386 - os: linux go: 1.9.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=amd64 - os: linux go: 1.9.x env: GOTAGS=trace GOOS=windows GOARCH=386 - os: linux go: 1.9.x env: GOTAGS=trace GOOS=windows GOARCH=amd64 - os: linux go: 1.9.x env: GOTAGS=vtable GOOS=windows GOARCH=386 - os: linux go: 1.9.x env: GOTAGS=vtable GOOS=windows GOARCH=amd64 - os: linux go: 1.10.x env: GOTAGS= GOOS=windows GOARCH=386 - os: linux go: 1.10.x env: GOTAGS= GOOS=windows GOARCH=amd64 - os: linux go: 1.10.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=386 - os: linux go: 1.10.x env: GOTAGS=libsqlite3 GOOS=windows GOARCH=amd64 - os: linux go: 1.10.x env: GOTAGS=trace GOOS=windows GOARCH=386 - os: linux go: 1.10.x env: GOTAGS=trace GOOS=windows GOARCH=amd64 - os: linux go: 1.10.x env: GOTAGS=vtable GOOS=windows GOARCH=386 - os: linux go: 1.10.x env: GOTAGS=vtable GOOS=windows GOARCH=amd64 before_install: - | if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update fi - | if [[ "${GOOS}" != "windows" ]]; then go get github.com/mattn/goveralls go get golang.org/x/tools/cmd/cover fi script: - GOOS=$(go env GOOS) GOARCH=$(go env GOARCH) go build -v -tags "${GOTAGS}" . - | if [[ "${GOOS}" != "windows" ]]; then $HOME/gopath/bin/goveralls -repotoken 3qJVUE0iQwqnCbmNcDsjYu1nh4J4KIFXx go test -race -v . -tags "${GOTAGS}" fi