aboutsummaryrefslogtreecommitdiffstats
path: root/build/ci.go
Commit message (Collapse)AuthorAgeFilesLines
* core: vm: sqlvm: introduce go-sumtypeTing-Wei Lan2019-05-141-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have many interfaces decalred as a part of AST. Most of them are used in a way called 'sum type', a type which is a collection of other types. Since Go does not have a builtin way to check whether a type switch is exhaustive, we add a static analysis tool called 'go-sumtype' to the CI process to ensure we never hit the default panic case at runtime. Since each interface must have at least a unique unexported method to be considered as a valid sum type, we need a naming convention here. Currently a unique name is created by putting ˉ character in front of the name of the interface. Remove Value function from Valuer interface declaration because the AST printer has switched to reflection instead of using this interface. It is not expected to have new users of Value functions because it returns an empty interface. Type assertion is still required to access the value and it is just clearer to assert the type of the AST node. Remove AnyValueNode and DefaultValueNode from ExprNode. It is invalid to use them as a part of an expression, and putting them in ExprNode just makes type switches unreliable. Data types allocated for them are also removed because non-expression nodes don't need data types. Introduce InsertOptionNode and ColumnConstraintNode interfaces as sum types. We used to use the generic Node interface to store them. Create specific sum types enables go-sumtype to check type switches statically. Drop assertNodeSlice because all callers are gone.
* ci: fix wrong bucket name (#371)bojie2019-04-171-4/+4
|
* build: disable static built by default (#359)Wei-Ning Huang2019-04-121-9/+13
|
* build: ci: extend legacy-evm test timeout to 10m (#235)JM2019-04-091-1/+1
| | | | Since it costs almost 5min on new tests data, this pr extends the timeout to 10min.
* transaction: use all transaction gas to reduce attack intention (#180)bojie2019-04-091-0/+18
| | | The ci test in /tests will use origin evm logic.
* app: use gcp storage instead of azure for builds (#81)bojie2019-04-091-79/+75
| | | | | * vendor: add dependencies for using GCP storage * app: use gcp storage instead of azure for builds
* Change import go github.com/dexon-foundation/dexonWei-Ning Huang2019-04-091-5/+5
|
* build: explicitly force .xz compression (old debuild picks gzip) (#19118)Péter Szilágyi2019-02-191-1/+1
| | | | (cherry picked from commit c0b9c763bb1572c202a60b82e7dcdc48dc3c280a)
* build: avoid dput and upload with sftp directly (#19067)Felix Lange2019-02-191-19/+22
| | | | (cherry picked from commit a8ddf7ad8393cff80848b193c698ce5e6440e061)
* .travis.yml: fix upload destination (#19043)Felix Lange2019-02-191-1/+1
| | | | (cherry picked from commit edf976ee8e7e1561cf11cbdc5a0c5edb497dda34)
* build: use SFTP for launchpad uploads (#19037)Felix Lange2019-02-191-17/+39
| | | | | | | | | | * build: use sftp for launchpad uploads * .travis.yml: configure sftp export * build: update CI docs (cherry picked from commit 3de19c8b31ab975eed1f7f276d31761f7f8b9af9)
* build: tweak debian source package build/upload options (#18962)Felix Lange2019-01-301-2/+2
| | | | | | | | | dput --passive should make repo pushes from Travis work again. dput --no-upload-log works around an issue I had while uploading locally. debuild -d says that debuild shouldn't check for build dependencies when creating the source package. This option is needed to make builds work in environments where the installed Go version doesn't match the declared dependency in the source package.
* travis, build: speed up CI runs (#17854)Felix Lange2018-10-081-8/+3
| | | | | | | | | | | | | | | | | | * travis: exclude non-test jobs for PRs We don't usually look at these builders and not starting them removes ~15min of build time. * build: don't run vet before tests Recent versions of Go run vet during 'go test' and we have a dedicated lint job. * build: use -timeout 5m for tests Tests sometimes hang on Travis. CI runs are aborted after 10min with no output. Adding the timeout means we get to see the stack trace for timeouts.
* build: fix typo (#17773)HarryWu2018-09-291-1/+1
|
* build: do not require `ethereum-swarm` deb when installing `ethereum` (#17425)Anton Evangelatov2018-08-171-11/+0
|
* build: explicitly name all packages to be cross-compiled (#17288)Anton Evangelatov2018-07-311-1/+4
|
* build: rename swarm deb package to ethereum-swarm; change swarm deb version ↵Anton Evangelatov2018-07-301-67/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | from 1.8.x to 0.3.x (#16988) * build: add support for different package and binary names * build: bump up copyright date * build: change default PackageName to empty string * build, internal, swarm: enhance build/release process * build: hack ethereum-swarm as a "depends" in deb package * build/ci: remove redundant variables * build, cmd, mobile, params, swarm: remove VERSION file; rename Version to VersionMeta; * internal: remove VERSION() method which reads VERSION file * build: fix VersionFilePath to Version * Makefile: remove clean_go_build_cache.sh until it works * Makefile: revert removal of clean_go_build_cache.sh
* Merge pull request #17245 from karalabe/azure-deps-fixupsPéter Szilágyi2018-07-271-11/+2
|\ | | | | internal, vendor: update Azure blobstore API
| * internal, vendor: update Azure blobstore APIPéter Szilágyi2018-07-251-11/+2
| |
* | build: deprecated ubuntu artful, enable ubuntu cosmicPéter Szilágyi2018-07-261-1/+2
|/
* build: Fix a typo in ci.goFelix Yan2018-07-151-1/+1
|
* all: library changes for swarm-network-rewrite (#16898)Elad2018-06-141-0/+1
| | | | | | | | | | | | This commit adds all changes needed for the merge of swarm-network-rewrite. The changes: - build: increase linter timeout - contracts/ens: export ensNode - log: add Output method and enable fractional seconds in format - metrics: relax test timeout - p2p: reduced some log levels, updates to simulation packages - rpc: increased maxClientSubscriptionBuffer to 20000
* build: specify the key to use when invoking gpg:sign-and-deploy-file (#16696)ligi2018-05-091-8/+13
|
* build: Add ldflags -s -w when building aarligi2018-05-021-2/+2
| | | | | Smaller size on mobile is always good. Might also solve our maven central upload problem
* build: enable goimports and varcheck linters (#16446)thomasmodeneis2018-04-181-1/+4
|
* build: add -e and -X flags to get more information on #16433 (#16443)ligi2018-04-101-1/+1
|
* build: add GOBIN to PATH for gomobile (#16344)Felix Lange2018-03-201-3/+4
| | | | | | * build: add GOBIN to PATH for gomobile * build: install gobind alongside gomobile
* crypto/bn256: full switchover to cloudflare's code (#16301)Péter Szilágyi2018-03-201-13/+3
| | | | | | | | | | | | * crypto/bn256: full switchover to cloudflare's code * crypto/bn256: only use cloudflare for optimized architectures * crypto/bn256: upstream fallback for non-optimized code * .travis, build: drop support for Go 1.8 (need type aliases) * crypto/bn256/cloudflare: enable curve mul lattice optimization
* travis, build, consensus: drop support for Go 1.7Péter Szilágyi2018-02-281-3/+3
|
* build: deprecate zesty, add bionic PPAPéter Szilágyi2018-02-121-1/+2
|
* build: set CC through a command-line flag (#15784)Péter Szilágyi2018-01-021-5/+9
| | | This avoids setting CC for the go run invocation, which fails on go1.10.
* build: fix version comparison for go1.10 and beyond (#15781)Péter Szilágyi2018-01-021-6/+15
|
* all: use gometalinter.v2, fix new gosimple issues (#15650)Zach2017-12-131-4/+4
|
* build: enable gosimple linter (#15593)ferhat elmas2017-12-011-1/+1
|
* buld: enable goconst linter (#15566)Zach2017-11-301-1/+9
|
* build: improve ci.go synopsis (#15565)Zach2017-11-281-1/+1
|
* build: fix typo in commentZoe Nolan2017-11-221-1/+1
|
* build: enable unconvert linter (#15456)ferhat elmas2017-11-111-1/+7
| | | | | | | | | * build: enable unconvert linter - fixes #15453 - update code base for failing cases * cmd/puppeth: replace syscall.Stdin with os.Stdin.Fd() for unconvert linter
* build: enable gofmt and misspell lintersPéter Szilágyi2017-11-101-1/+1
|
* build: add Travis job to lint Go code #15372 (#15416)Dan Melton2017-11-091-30/+19
| | | | | | * build: [finishes #15372] implements generalized linter and travis job * .travis, build: minor polishes, disable deadcode
* build: start shipping Ubuntu Artful Aardvark binariesPéter Szilágyi2017-10-201-1/+1
|
* internal/build: add GoTool and document why it uses GOROOTFelix Lange2017-08-071-4/+1
|
* build: drop yakkety builds (launchpad end of life)Péter Szilágyi2017-08-071-1/+2
|
* build: fix devel golang detection on debian/ubuntu (#14711)Addy Yeow2017-06-271-1/+1
|
* build: wnode added to the build configurationVlad2017-05-031-0/+5
|
* build: disable misspell, upstream bug prevents buildsPéter Szilágyi2017-04-141-1/+2
|
* build: create deb source for Ubuntu Zesty (#14316)Péter Szilágyi2017-04-121-1/+1
|
* cmd/puppeth: your Ethereum private network manager (#13854)Péter Szilágyi2017-04-111-11/+16
|
* .travis, build: autodelete old unstable archives (#13867)Péter Szilágyi2017-04-061-0/+66
| | | | | | | | This commit adds a build step to travis to auto-delete unstable archives older than 14 days (our regular release schedule) from Azure via ci.go purge. The commit also pulls in the latest Azure storage code, also switching over from the old import path (github.com/Azure/azure-sdk-for-go) to the new split one (github.com/Azure/azure-storage-go).
* build: work around cgo linker issue on macOS 10.12.4 (#13849)Felix Lange2017-03-291-3/+11
| | | Fixes #3792 by stripping debug symbols.
* build: always run go vetFelix Lange2017-03-241-5/+2
| | | | | This ensures 'make test' finds all errors that remote CI would find. Go 1.7 vet reports a false positive in package log, add a workaround.
* build: unify vendor skipping logicFelix Lange2017-03-231-26/+3
| | | | | This fixes a recent bug where 'make geth' built everything instead of just geth.
* swarm/api: support mounting manifests via FUSE (#3690)Zahoor Mohamed2017-03-231-0/+14
|
* build: remove support for the GO_OPENCL environment variableFelix Lange2017-03-221-4/+0
| | | | We don't use the opencl build tag anymore.
* build: require Go >= 1.7Felix Lange2017-03-221-14/+4
| | | | | | | We have decided to bump the requirement to Go 1.7 because it enables subtests and allows dropping backwards-compatibility code. This is in line with Go's support policy. Go 1.6 and earlier no longer receive security updates.
* build: add bootnode to Ubuntu PPAs too (#3766)Péter Szilágyi2017-03-091-0/+4
|
* build: fix xgo argument order when building from makePéter Szilágyi2017-03-031-1/+4
|
* Merge pull request #3735 from karalabe/bundle-bootnodePéter Szilágyi2017-03-021-0/+1
|\ | | | | build: bundle the bootnode too into alltools
| * build: bundle the bootnode too into alltoolsPéter Szilágyi2017-03-021-0/+1
| |
* | travis: support building mips32 and mips64 tooPéter Szilágyi2017-03-021-11/+30
|/
* build: work around CGO linker bug on pre-1.8 GoPéter Szilágyi2017-02-131-0/+8
|
* build: Fix tiny typoShintaro Kaneko2017-01-301-1/+1
|
* travis: Install Android NDK explicitly, removed from gomobile (#3593)Péter Szilágyi2017-01-201-1/+8
| | | | | | The Android NDK was recently removed from gomobile, leading to our Android builds failing. Starting from https://go-review.googlesource.com/#/c/35173/ , gomobile requires a locally installed NDK. This PR ensures that travis installs that too before running the build steps.
* appveyor, build: fix review requestsPéter Szilágyi2017-01-131-24/+30
|
* build: spellcheck individual packages (Windows path limits)Péter Szilágyi2017-01-131-7/+9
|
* travis, appveyor, build: add source spell checkingPéter Szilágyi2017-01-131-1/+24
|
* all: gofmt -w -sFelix Lange2017-01-061-1/+1
|
* build: finally settle on empty iOS ObjC package prefixesPéter Szilágyi2017-01-051-1/+1
|
* Merge pull request #3421 from ethersphere/s/swarm-cmdPéter Szilágyi2016-12-141-13/+3
|\ | | | | cmd/swarm: one command with subcommands
| * build: add swarm command to binary packages, update READMEzelig2016-12-131-13/+3
| |
* | build: Ubuntu wily was officially deprecated, drop supportPéter Szilágyi2016-12-141-1/+2
|/
* build: safe update of PATH on Windows (#3419)bas-vk2016-12-111-0/+1
| | | | | | | NSIS has a default MAX_STR_LEN of 1024. If $ENV{PATH} is longer the returned string is truncated to an empty string. Its then not possible to distinguis between the variable not set or too long. As a result the variable is set with the location where geth and/or dev tools are installed. This may override any previous set values.
* mobile: iOS naming and API fixes for generators and Swift (#3408)Péter Szilágyi2016-12-081-1/+1
| | | | | * build: modify the iOS namespace to iGeth (gomobile limitation) * mobile: assign names to return types for ObjC wrapper * mobile: use more expanded names for iOS/Swift API
* build: use single CocoaPods package, pre-release dev buildsPéter Szilágyi2016-11-281-7/+5
|
* build/ci: add swarm related executables (bzzd, bzzup, bzzhash) to binary ↵Viktor Trón2016-11-281-0/+15
| | | | packages (#3354)
* Makefile, build: do proper mobile builds, not cross buildsPéter Szilágyi2016-11-251-3/+17
|
* Merge pull request #3317 from fjl/build-unstable-simplifyPéter Szilágyi2016-11-231-1/+1
|\ | | | | build, internal/build: simplify unstable build checks
| * build: simplify unstable build checkFelix Lange2016-11-191-1/+1
| | | | | | | | | | | | | | | | | | ci.go decides whether a build is unstable by looking at the branch and tag. This causes issues when a GitHub release is created on the master branch because the build is considered unstable (the CI environment reports the branch as "master"). Fix this by looking at the tag only. Any tagged build is stable.
* | build: remove hash metadata from cocoapod versionPéter Szilágyi2016-11-231-1/+1
| |
* | build: mobile CI fixes (#3322)Péter Szilágyi2016-11-231-5/+7
|/ | | | | * build: use metatags on cocoapods, not prerelease tags * build: fix Maven and CocoaPods author email addresses
* travis: dash of black magic to summon the cache daemon (#3288)Péter Szilágyi2016-11-171-2/+1
|
* build: master is unstableFelix Lange2016-11-151-2/+2
|
* travis, build: further maven and gpg refinementsPéter Szilágyi2016-11-151-8/+8
|
* travis, build: cocoapods build fixes and travis cachesPéter Szilágyi2016-11-151-1/+1
|
* build: iOS XCode framework build and uploadPéter Szilágyi2016-11-141-23/+112
|
* .travis, build: Build step to push .aar to Maven CentralPéter Szilágyi2016-11-141-0/+127
|
* build: fix remote path for archive uploads (#3243)Felix Lange2016-11-091-2/+2
| | | | archiveUpload did not handle absolute paths correctly. Fix it by using the basename and ensure that uploads can be tested using -n.
* build: NSIS based Windows installer (#3240)Péter Szilágyi2016-11-091-1/+74
| | | | This commit adds support for creating Windows installers to ci.go
* build: fix missing .exe executable names on cross buildsPéter Szilágyi2016-11-071-1/+1
|
* travis: build to all supported linux architectures (#3235)Péter Szilágyi2016-11-041-0/+10
|
* build, internal/build: misc improvements (#3229)Felix Lange2016-11-031-8/+12
| | | | | | | | | | | | | * travis.yml: don't create darwin/386 builds * build: remove godep remains * internal/build: improve archives - enable compression for zip files - don't write half-complete archives * build: add -unstable to archive names
* travis, build: enable 386 builds too for linux and osxPéter Szilágyi2016-11-031-12/+54
|
* travis, build: implement uploading archives to azurePéter Szilágyi2016-11-031-9/+47
|
* Godeps, vendor: convert dependency management to trash (#3198)Péter Szilágyi2016-10-291-2/+15
| | | | | | | | | | | | | | | | | | | | | | | This commit converts the dependency management from Godeps to the vendor folder, also switching the tool from godep to trash. Since the upstream tool lacks a few features proposed via a few PRs, until those PRs are merged in (if), use github.com/karalabe/trash. You can update dependencies via trash --update. All dependencies have been updated to their latest version. Parts of the build system are reworked to drop old notions of Godeps and invocation of the go vet command so that it doesn't run against the vendor folder, as that will just blow up during vetting. The conversion drops OpenCL (and hence GPU mining support) from ethash and our codebase. The short reasoning is that there's noone to maintain and having opencl libs in our deps messes up builds as go install ./... tries to build them, failing with unsatisfied link errors for the C OpenCL deps. golang.org/x/net/context is not vendored in. We expect it to be fetched by the user (i.e. using go get). To keep ci.go builds reproducible the package is "vendored" in build/_vendor.
* build: improve debian packagingFelix Lange2016-10-021-103/+86
| | | | | | | | | | This commit tweaks the debian packaging tool: * All build environment metadata can now be overriden on the command line. This allows testing the CI build behaviour locally. * -unstable packages now actually contain the binaries (oops) * packages use Go 1.7 to build * archiving is skipped for PR builds
* build: limit test concurrencyFelix Lange2016-09-261-0/+3
| | | | | | TravisCI and AppVeyor run the tests in very slow VMs. Some of our tests can't cope with that. Running less tests in parallel should make them somewhat less flakey.
* Makefile, build: move cross compilation into ci.goPéter Szilágyi2016-08-081-0/+32
|
* build: add ci.go, use it everywhereFelix Lange2016-06-221-0/+465
The new build script, ci.go, replaces some of the older shell scripts. ci.go can compile go-ethereum, run the tests, create release archives and debian source packages.