Commit Graph

177 Commits

Author SHA1 Message Date
Felix Lange b628d72766
build: upgrade to go 1.19 (#25726)
This changes the CI / release builds to use the latest Go version. It also
upgrades golangci-lint to a newer version compatible with Go 1.19.

In Go 1.19, godoc has gained official support for links and lists. The
syntax for code blocks in doc comments has changed and now requires a
leading tab character. gofmt adapts comments to the new syntax
automatically, so there are a lot of comment re-formatting changes in this
PR. We need to apply the new format in order to pass the CI lint stage with
Go 1.19.

With the linter upgrade, I have decided to disable 'gosec' - it produces
too many false-positive warnings. The 'deadcode' and 'varcheck' linters
have also been removed because golangci-lint warns about them being
unmaintained. 'unused' provides similar coverage and we already have it
enabled, so we don't lose much with this change.
2022-09-10 13:25:40 +02:00
Péter Szilágyi be7eb8ae17
build, Dockerfile: bump Go to 1.18 2022-03-16 08:27:16 +02:00
jwasinger 48dc34b8d9
build: remove xgo cross-builds (#23800)
xgo is not maintained at this time, so none of these builds work.

Closes #23784
2021-10-25 16:49:44 +02:00
Marius van der Wijden da3da7c0e7
ci: enable race tests as cron job on travis (#23480) 2021-10-11 19:37:18 +02:00
Felix Lange efee85378e
build, .travis.yml: upgrade to Go 1.17 (#23464) 2021-08-25 14:22:33 +02:00
Péter Szilágyi 9097d0a325
travis: transition from docker auto builds to manual pushes 2021-08-10 17:13:06 +03:00
Péter Szilágyi e0123026b6
travis: enable experimental docker for manifest building 2021-06-21 19:43:37 +03:00
Péter Szilágyi 0f2347d070
travis, Dockerfile, build: docker build and multi-arch publish combo 2021-06-21 19:17:59 +03:00
Péter Szilágyi f915a4bf20
travis: move docker steps further to prevent hanging other builders 2021-06-21 13:01:24 +03:00
Péter Szilágyi e9f99d1c91
travis, build: add support for multi-arch docker images 2021-06-18 15:30:00 +03:00
Péter Szilágyi 40a11d644c
travis: don't overwrite amd64 images with arm64 2021-06-17 12:22:22 +03:00
Péter Szilágyi 90ffcfde89
travis, build: own docker builder and hub pusher 2021-06-17 11:04:57 +03:00
Péter Szilágyi f54dc4ab3d
travis: manually install Android since Travis is stale (#22373) 2021-02-24 11:36:08 +02:00
Péter Szilágyi 70afe15f68
travis: bump builders to Bionic 2021-02-23 20:31:09 +02:00
Péter Szilágyi c9aa267049
travis: bump Android NDK version 2021-02-23 19:57:39 +02:00
Péter Szilágyi c5023e1dc5
travis, appveyor, build: bump Go to 1.16 2021-02-19 16:03:17 +02:00
Felix Lange f935b1d542
crypto/signify, build: fix archive signing with signify (#21977)
This fixes some issues in crypto/signify and makes release signing work.

The archive signing step in ci.go used getenvBase64, which decodes the key data.
This is incorrect here because crypto/signify already base64-decodes the key.
2020-12-09 15:43:36 +01:00
Guillaume Ballet fa572cd297
crypto: signing builds with signify/minisign (#21798)
* internal/build: implement signify's signing func
* Add signify to the ci utility
* fix output file format
* Add unit test for signify
* holiman's + travis' feedback
* internal/build: verify signify's output
* crypto: move signify to common dir
* use go-minisign to verify binaries
* more holiman feedback
* crypto, ci: support minisign output
* only accept one-line trusted comments
* configurable untrusted comments
* code cleanup in tests
* revert to use ed25519 from the stdlib
* bug: fix for empty untrusted comments
* write timestamp as comment if trusted comment isn't present
* rename line checker to commentHasManyLines
* crypto: added signify fuzzer (#6)
* crypto: added signify fuzzer
* stuff
* crypto: updated signify fuzzer to fuzz comments
* crypto: repro signify crashes
* rebased fuzzer on build-signify branch
* hide fuzzer behind gofuzz build flag
* extract key data inside a single function
* don't treat \r as a newline
* travis: fix signing command line
* do not use an external binary in tests
* crypto: move signify to crypto/signify
* travis: fix formatting issue
* ci: fix linter build after package move

Co-authored-by: Marius van der Wijden <m.vanderwijden@live.de>
2020-11-27 12:13:54 +01:00
Péter Szilágyi cc05b050df
params: release Geth v1.9.24 with Go 1.15.5 (#21842) 2020-11-12 21:10:15 +01:00
Felix Lange 920a287117
.travis.yml: move test builders after install builders (#21833) 2020-11-11 23:52:50 +01:00
Felix Lange d49407427d
build: fix regressions with the -dlgo change (#21831)
This fixes cross-build and mobile framework failures.
It also disables the mac test builder because it was failing
all the time in hard to understand ways and we can't afford
it anymore under Travis CI's new pricing.
2020-11-11 22:08:22 +01:00
Felix Lange 27d93c1848
build: add -dlgo flag in ci.go (#21824)
This new flag downloads a known version of Go and builds with it. This
is meant for environments where we can't easily upgrade the installed Go
version.

* .travis.yml: remove install step for PR test builders

We added this step originally to avoid re-building everything
for every test. go test has become much smarter in recent go
releases, so we no longer need to install anything here.
2020-11-11 14:34:43 +01:00
Péter Szilágyi eb694ea706
travis: drop Go 1.13 builders as it's not supported any more 2020-11-09 17:39:42 +02:00
Péter Szilágyi 15fdaf2005
travis, dockerfile, appveyor, build: bump to Go 1.15 2020-08-20 16:41:37 +03:00
Martin Holst Swende a5eee8d1dc
eth/downloader: more context in errors (#21067)
This PR makes use of go 1.13 error handling, wrapping errors and using
errors.Is to check a wrapped root-cause. It also removes the travis
builders for go 1.11 and go 1.12.
2020-05-29 11:12:43 +02:00
Péter Szilágyi eb2fd823b2
travis, appveyor, build, Dockerfile: bump Go to 1.14.2 (#20913)
* travis, appveyor, build, Dockerfile: bump Go to 1.14.2

* travis, appveyor: force GO111MODULE=on for every build
2020-04-14 14:03:18 +03:00
Adam Schmideg 300c35b854
travis: allow cocoapods deploy to fail (#20833) 2020-03-31 12:09:45 +02:00
Péter Szilágyi fef8c985bc
travis, appveyor, build: bump builder Go to 1.13.8 2020-02-17 13:13:24 +02:00
Péter Szilágyi fcc84c38dd
travis: bump Android builder to Go 1.13.6 2020-01-20 00:54:20 +02:00
Péter Szilágyi 9b32f592dc
travis, build: enable Ubuntu Focal and Go 1.13.6 on PPA 2020-01-16 13:28:32 +02:00
Felix Lange 8a63f7f504 .travis.yml: use latest macOS 10.14 image (#20526) 2020-01-08 11:25:01 +02:00
Péter Szilágyi 75e029db8b
build, travis: use ephemeral debsrc GOPATH to get mod deps 2019-11-20 14:57:33 +02:00
Péter Szilágyi 8bd5bb8918
travis: fake build ppa only for go module dependencies 2019-11-20 14:42:36 +02:00
Péter Szilágyi b3d6304f1e
travis, build: aggregate and upload go mod dependencies for PPA 2019-11-20 14:42:33 +02:00
Péter Szilágyi dfdb204b48
travis: explicitly enable go modules in Go 1.11 and 1.12 2019-11-20 14:42:32 +02:00
Guillaume Ballet 0b6338321f travis: deactivate arm build during push (#20321) 2019-11-19 13:57:05 +01:00
Guillaume Ballet b02afb6b3d travis: use travis_wait for both install and build (#20309) 2019-11-18 15:34:17 +01:00
Guillaume Ballet 11d09fd3ba travis: remove traces and use travis_wait in ARM build (#20296)
* travis: remove debug traces

* travis: Add travis_wait to the test run

* travis: increase travis_wait time
2019-11-18 10:52:12 +02:00
Felix Lange 689486449d build: use golangci-lint (#20295)
* build: use golangci-lint

This changes build/ci.go to download and run golangci-lint instead
of gometalinter.

* core/state: fix unnecessary conversion

* p2p/simulations: fix lock copying (found by go vet)

* signer/core: fix unnecessary conversions

* crypto/ecies: remove unused function cmpPublic

* core/rawdb: remove unused function print

* core/state: remove unused function xTestFuzzCutter

* core/vm: disable TestWriteExpectedValues in a different way

* core/forkid: remove unused function checksum

* les: remove unused type proofsData

* cmd/utils: remove unused functions prefixedNames, prefixFor

* crypto/bn256: run goimports

* p2p/nat: fix goimports lint issue

* cmd/clef: avoid using unkeyed struct fields

* les: cancel context in testRequest

* rlp: delete unreachable code

* core: gofmt

* internal/build: simplify DownloadFile for Go 1.11 compatibility

* build: remove go test --short flag

* .travis.yml: disable build cache

* whisper/whisperv6: fix ineffectual assignment in TestWhisperIdentityManagement

* .golangci.yml: enable goconst and ineffassign linters

* build: print message when there are no lint issues

* internal/build: refactor download a bit
2019-11-18 10:49:17 +02:00
Guillaume Ballet 49d1a032da build: gather info to investigate why builds fail on ARM (#20281) 2019-11-14 14:42:23 +01:00
Guillaume Ballet de2259d27c travis: enable test suite on ARM64 (#20219)
* travis: Enable ARM support

* Include fixes from 20039

* Add a trace to debug the invalid lookup issue

* Try increasing the timeout to see if the arm test passes

* Investigate the resolver issue

* Increase arm64 timeout for clique test

* increase timeout in tests for arm64

* Only test the failing tests

* Review feedback: don't export epsilon

* Remove investigation tricks+include fjl's feeback

* Revert the retry ahead of using the mock resolver

* Fix rebase errors
2019-11-08 10:58:57 +02:00
Péter Szilágyi c702bd70ed
travis: bump linter to Go 1.13.x 2019-11-05 15:35:51 +02:00
Péter Szilágyi 734e00af9e
travis, build, internal: use own Go bundle for PPA builds (#20240)
* build: bump PPAs to Go 1.13 (via longsleep), keep Trusty on 1.11

* travis, build, vendor: use own Go bundle for PPA builds

* travis, build, internal, vendor: smarter Go bundler, own untar

* build: updated ci-notes with new Go bundling, only make, don't test
2019-11-05 15:32:42 +02:00
Péter Szilágyi 2469c4ecd4
travis, Dockerfile, appveyor: bump to Go 1.13 2019-09-12 11:09:11 +03:00
Tyler Ferrara 389bd75142 travis: isolate linter and tests jobs (#19883) 2019-07-25 08:51:31 +03:00
Felix Lange afb9e6513f vendor: remove unused dependencies (#19683)
* vendor: remove unused dependencies

These were used by swarm code, which has now migrated to its own repository.

* travis.yml: remove sudo requirement for test builders

These needed sudo to run FUSE tests for swarm.
2019-06-07 17:51:18 +03:00
Rafael Matias 42b81f94ad swarm: code cleanup, move to ethersphere/swarm (#19661) 2019-06-04 16:35:36 +03:00
Péter Szilágyi de195bf152
travis: update builders to xenial to shadow Go releases 2019-04-08 10:43:01 +03:00
Ferenc Szabo 3585351888 travis: extend race detection for swarm p2p packages (#19287)
* travis: remove verbose from Swarm race tests

By removing -v our output will be cleaner, but the Travis job still
won't be terminated - due to 'no output for 10 minutes' - as keepalive
.sh produces a log line every 5 minutes.

* travis: extend Swarm race detection to p2p subpackages

As p2p/protocols, p2p/simulations and p2p/testing packages mostly
belong to the Swarm team.
2019-03-21 12:06:11 +01:00
Samuel Marks e43bc36226
travis, appveyor, Dockerfile: upgrade to Go 1.12 2019-02-27 14:21:02 +02:00