Skip to content

Commit

Permalink
Upstream upgrades: maintainence, bug fixes, zerocoin public spends (#3)
Browse files Browse the repository at this point in the history
Overview of adapted commits: https://github.com/ioncoincore/ion/commits/5305677c9ffb7cf8a5fa47dee654e668e1c9eba6

PR includes adapted versions of these original commits:

From 7491d6c Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Fri, 22 Mar 2019 17:20:32 -0700
Subject: [PATCH] Fix wrapped serial functional test

The error message had changed

From 4da1dca Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Fri, 22 Mar 2019 17:23:27 -0700
Subject: [PATCH] Disable precompute for functional tests

The locking can interfere with block generation

From 4e4975b Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Thu, 11 Oct 2018 13:41:48 +0200
Subject: [PATCH] [Refactor] Refactor bignum header file into several files

From 3ec04f7 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 12:40:28 +0200
Subject: [PATCH] [Refactor] Refactor CBudgetProposal::IsEstablished()

-Move IsEstablished function to cpp file
-Use GetAdjustedTime() instead of GetTime() to avoid lack of consensus
-Remove magic numbers and declare them in chainparams

From b079abf Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Thu, 25 Apr 2019 22:36:48 -0700
Subject: [PATCH] [RPC] Remove deprecated masternode/budget RPC commands

The old `masternode` and `mnbudget` commands have been deprecated for
quite some time now, and have had a note in their help descriptions
stating as much. So, time to finally remove them for good.

From bda0322 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 12:53:42 +0200
Subject: [PATCH] [Refactoring] Add IsPassing function to CBudgetProposal

Makes the code easier to read and allows for reusing of this functions
in other places.

From 89ce7ff Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 11:37:02 +0200
Subject: [PATCH] [Qt] Add new colors for proposals

Show passing (enough votes and whatnot) but unfunded (lack of funds in the budget)
proposals in yellow and unestablished proposals (less than 24 hours
since submission) in blue

From 3601d00 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 12:32:10 +0200
Subject: [PATCH] [Qt] Print the actual number of MN used for voting

From 6e48490 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 13:23:01 +0200
Subject: [PATCH] [Budget] Guard against chainactive tip clash

From 5627807 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Fri, 26 Apr 2019 03:39:48 +0200
Subject: [PATCH] [Zerocoin] Fix limits for random number generators in GMP
 bignum implementation

From daeb752 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Fri, 26 Apr 2019 23:15:16 +0200
Subject: [PATCH] [Test] Add tests for bignum random generators

From 671452e3f5f1dbebf89aacabff3253eb1cfa7a40 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Mon, 29 Apr 2019 01:14:36 -0700
Subject: [PATCH] Rename ui_interface.h file

This file's naming convention is not in line with what is used
everywhere else. Additionally, the `ui_` prefix is typically reserved
for QMake's UIC pre-processor to generate compiler-compatible code from
Qt's `.ui` files.

Renaming this file opens the door to adding CMake build support
**without** needing to hackishly work around this one file's name, and
it becomes more in-line with the naming conventions used for every other
 source file.

From 2c76194 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Sat, 4 May 2019 11:10:22 +0200
Subject: [PATCH] [Net] Valid blocks from forks badly rejected due an invalid
 view of the available utxo set for forked chains + split height going one
 block further than what should be.

[Net] acceptBlock, back to chain split was going one block further if prev was the previous block of the incoming block.

[Net] coins cache view only has the tip view and not forks utxo chain view.

From 754764b Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Tue, 7 May 2019 11:19:54 +0200
Subject: [PATCH] [Net] AcceptBlock, first prev block loaded from disk.

From f14569f Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Wed, 8 May 2019 16:08:20 +0200
Subject: [PATCH] [Zerocoin] remove CTransaction::IsZerocoinSpend and
 CTransaction::IsZerocoinMint

- uniform IsZerocoinSpend/IsZerocoinMint CScript functions
- refactor CTxIn::IsZerocoinSpend / CTxOut::IsZerocoinMint encapsulating CScript methods
- add CTransaction methods: HasZerocoinMintOutputs / HasZerocoinSpendInputs
- refactor CTransaction::ContainsZerocoins from previous 'HasZerocoin' functions
- fix implementation of CTransaction::GetZerocoinMinted (from CTxOut)
- remove extra checks for empty scripts (as those are done in CScript functions)

From b5a5257 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Wed, 8 May 2019 17:58:57 +0200
Subject: [PATCH] [Refactor] Remove unused setStakeSeen variable

From d7afebb Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 14 May 2019 15:39:31 +0200
Subject: [PATCH] [UI] Simplify Qt margins. No functional change.

From 2d05215 Mon Sep 17 00:00:00 2001
From: Alko89 <alefer89@gmail.com>
Date: Tue, 14 May 2019 11:48:14 +0200
Subject: [PATCH] Hide xion related options.

From c424f0f Mon Sep 17 00:00:00 2001
From: Alko89 <alefer89@gmail.com>
Date: Tue, 14 May 2019 16:47:27 +0200
Subject: [PATCH] Fix margins

From 4e8f46a Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Tue, 14 May 2019 16:24:29 -0700
Subject: [PATCH] [Qt] Fixup duplicate label names

resolves compiler warnings about a label's name having been already used
.

From 4d44c97 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Wed, 6 Mar 2019 20:05:20 +0100
Subject: [PATCH] [Refactoring] Replace BOOST FOREACH with for :

Done using following script:

-BEGIN VERIFY SCRIPT-
sed -i 's/BOOST_FOREACH *(\(.*\),/for (\1 :/' ./src/*.h ./src/*.cpp
./src/*/*.h ./src/*/*.cpp ./src/*/*/*.h ./src/*/*/*.cpp ;
-END VERIFY SCRIPT-

From e1c549e Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Wed, 6 Mar 2019 20:45:45 +0100
Subject: [PATCH] [Refactor] Remove useless BOOST includes and readd where
 needed

From 4f6cd20 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Tue, 14 May 2019 00:47:13 -0700
Subject: [PATCH] Cleanup clang's range loop analysis warnings

From a789d21 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Wed, 15 May 2019 05:29:22 +0200
Subject: [PATCH] [xION] Disable zerocoins inclusion in 'SelectStakeCoins'

From 742a7b1 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Wed, 27 Feb 2019 14:56:40 -0800
Subject: [PATCH] [Qt] Remove unused obfuscationconfig

obfuscationconfig(.h/.cpp) are unused and not needed at all anymore.

From 886d806 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Wed, 27 Feb 2019 15:02:51 -0800
Subject: [PATCH] Remove unused code in DoAutomaticDenominating

This function statically returns `false`, no need to have anything else
here.

From 166b2d3 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Wed, 27 Feb 2019 15:14:00 -0800
Subject: [PATCH] Remove nAnonymizeIonAmount and nLiquidityProvider

These two variables have been meaningless since xION's introduction...

Nuke them from orbit!

From 3bb5c76 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Wed, 27 Feb 2019 20:34:03 -0800
Subject: [PATCH] Remove unused functions in wallet.cpp

these functions were used back when obfuscation existed and are no
longer called anywhere in the source tree.

From eed0a1d Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Thu, 28 Feb 2019 01:38:15 -0800
Subject: [PATCH] Remove more useless obfuscation code

From fe67706 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Thu, 28 Feb 2019 12:23:36 -0800
Subject: [PATCH] Remove more useless obfuscation code

From a4205f2 Mon Sep 17 00:00:00 2001
From: Julian Meyer <julianmeyer2000@gmail.com>
Date: Wed, 15 May 2019 12:10:23 -0700
Subject: [PATCH] [UI] Fix improperly parented walletView.

Fixes dashpay#789.

From f3308f4 Mon Sep 17 00:00:00 2001
From: CaveSpectre11 <36988814+CaveSpectre11@users.noreply.github.com>
Date: Thu, 16 May 2019 08:41:13 -0400
Subject: [PATCH] Fix typos and oversights in listunspent

From 962a1bc Mon Sep 17 00:00:00 2001
From: Pieter Wuille <pieter.wuille@gmail.com>
Date: Tue, 3 Mar 2015 07:49:12 -0800
Subject: [PATCH] Reinitialize state in between individual unit tests.

This changes the TestingSetup fixture to be per-unit-test rather than global.
Most tests don't need it, so it's only invoked in a few.

From c5054e4 Mon Sep 17 00:00:00 2001
From: "Wladimir J. van der Laan" <laanwj@gmail.com>
Date: Thu, 12 Mar 2015 09:34:42 +0100
Subject: [PATCH] tests: add a BasicTestingSetup and apply to all tests

Make sure that chainparams and logging is properly initialized. Doing
this for every test may be overkill, but this initialization is so
simple that that does not matter.

This should fix the travis issues.

From 253c63e Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Fri, 17 May 2019 12:46:22 +0200
Subject: [PATCH] [Zerocoin] include 0 in randBignum() range

From ca86660 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 1 May 2019 11:44:26 +0200
Subject: [PATCH] [Zeroocoin] public coin spend script creation, validation and
 un/serialization.

From 1db7c59 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 1 May 2019 11:44:58 +0200
Subject: [PATCH] [UNIT TEST] publicCoinSpend valid input creation and
 verification.

[UNIT TEST] publicCoinSpend creation + validation completed.

From 0e8d0f9 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 1 May 2019 11:47:18 +0200
Subject: [PATCH] [Wallet] public coin spend creation connected + first mem
 pool validation.

[Zerocoin] public coin spend improvements.

[Zerocoin] publicCoinSpend validations connected to the accept txes flow.

[Zerocoin] public spends not checked as regular inputs.

[Zerocoin] publicCoinSpend validation as regular spends.

non good solution for the coinSpend pointer inheritance issue but at least working

[Zerocoin] ParseZerocoinPublicSpend moved into xionmodule file.

cleanup unused field.

From c8d519e Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Mon, 13 May 2019 20:52:30 +0200
Subject: [PATCH] [xION] xION Maturity --> Minimum amount of coins accumulated
 no needed anymore.

From e7dada8 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Mon, 13 May 2019 21:45:21 +0200
Subject: [PATCH] [xION] publicCoinSpend signature hash relevant data
 inclusion.

From f930016 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Tue, 14 May 2019 15:50:45 +0200
Subject: [PATCH] [xION] rebase problems fixed. (Needs more testing)

From 3c74d6d Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Tue, 14 May 2019 17:23:15 +0200
Subject: [PATCH] [xION] new protocol enforcement height added. Height not
 final, just randomly selected and tested on regtest.

From 657bb41 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 14 May 2019 23:22:13 +0200
Subject: [PATCH] [xION][Cleanup] PublicSpend rebase onto IsZerocoin

From cb4ffa1 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 14 May 2019 23:22:41 +0200
Subject: [PATCH] [xION] remove enforcement from
 'CreateZerocoinSpendTransaction' fixing the unit tests

From 4439869 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 01:13:52 +0200
Subject: [PATCH] [xION][Consensus] reject V1 serials spends.

From e0decb1 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Wed, 15 May 2019 03:10:01 +0200
Subject: [PATCH] [xION] prevent v1 zerocoins from being selected for
 PublicSpends

From a8ce671 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Wed, 15 May 2019 06:38:29 +0200
Subject: [PATCH] [xION] use new limit Zerocoin_MaxPublicSpendsPerTransaction
 for max num of inputs

From 262d5e7 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 15:40:55 +0200
Subject: [PATCH] [xION] mints coin control dialog min accumulation mature text
 removed + re mint change checkbox not visible anymore.

From 507f7c8 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 17:24:10 +0200
Subject: [PATCH] [FUNCTIONAL TESTS] valid PublicCoinSpend transaction test.

From fdfd999 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 17:40:51 +0200
Subject: [PATCH] [xION[Unit Test] Possible redundant denomination validation.

From f46b80e Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 18:01:38 +0200
Subject: [PATCH] [FUNCTIONAL TEST][xION] double spent serial validation.

From 3d0893a Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 18:43:14 +0200
Subject: [PATCH] [RPC] spendzerocoin command can now create old zc spends,
 only for regression tests

From 88cdfc6 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Wed, 15 May 2019 19:21:05 +0200
Subject: [PATCH] [FUNCTIONAL TEST] old coinSpend transaction rejected.

From 9c0329c Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Sun, 19 May 2019 19:09:30 +0200
Subject: [PATCH] [zerocoin] Free memory from ToString()

Simple fix for a minor memory leak

From 93bc037 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Mon, 20 May 2019 23:54:17 +0200
Subject: [PATCH] [Log] Handle errors during log message formatting

From d4da015 Mon Sep 17 00:00:00 2001
From: EthanHeilman <ethan.r.heilman@gmail.com>
Date: Tue, 22 Sep 2015 15:24:16 -0400
Subject: [PATCH] Creates unittests for addrman, makes addrman testable.

Adds several unittests for addrman to verify it works as expected.
Makes small modifications to addrman to allow deterministic and targeted tests.

From 3355c86 Mon Sep 17 00:00:00 2001
From: Ethan Heilman <Ethan.R.Heilman@gmail.com>
Date: Sat, 12 Dec 2015 22:34:08 -0500
Subject: [PATCH] Increase test coverage for addrman and addrinfo

Adds several unittests for CAddrMan and CAddrInfo.
Increases the accuracy of addrman tests.
Removes non-determinism in tests by overriding the random number generator.
Extracts testing code from addrman class to test class.

From c84e0e8 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Mon, 20 May 2019 16:47:23 +0200
Subject: [PATCH] [Code Style] Remove std namespace in test file

From afdb9d4 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Thu, 16 May 2019 19:08:59 +0200
Subject: [PATCH] [RPC] Parse public spend on getserials rpc command.

[Cleanup] non used variable commented.

From 46e453b Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Thu, 16 May 2019 20:24:11 +0200
Subject: [PATCH] [xION] reject priv coin spends on tx mempool acceptance.

From b5e2526 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Fri, 17 May 2019 01:37:25 +0200
Subject: [PATCH] [xION] publicCoinSpend version field included in the
 serialization for any future change.

From 2f750e5 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Sun, 19 May 2019 23:13:30 +0200
Subject: [PATCH] [RPC] add 'createrawzerocoinpublicspend' method

From 0393227 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Sun, 19 May 2019 23:14:04 +0200
Subject: [PATCH] [Tests] add test reorg for public spend

[Unit Test] zc public spend test up-to-date with master.

From 216a317 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Mon, 20 May 2019 10:49:21 +0200
Subject: [PATCH] [xION] testnet publicSpend enforcement height set.

[xION] v1 serials validation was not checked against the publicSpend height.

From 28afbd2 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Tue, 21 May 2019 15:27:22 +0200
Subject: [PATCH] [xION] v1 serials modulus fix + isStandardTx fix for
 publicSpends.

cleanup, publicCoinSpend object leftover removed + minor log added to CheckProofOfStake.

From fda5fff Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 30 Apr 2019 11:33:10 +0200
Subject: [PATCH] [GUI] Disable zerocoin minting

From 9f3fa2a Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 30 Apr 2019 11:37:12 +0200
Subject: [PATCH] [RPC] Disable zerocoin minting

disabling also remint of change of a zc spend

From 2708b6f Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 30 Apr 2019 11:54:20 +0200
Subject: [PATCH] [Consensus] Disable zerocoin minting in contextual check

From 3555f43 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Thu, 2 May 2019 11:18:29 +0200
Subject: [PATCH] [Wallet] Disable automint

From dcc74f8 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Wed, 15 May 2019 01:28:02 +0200
Subject: [PATCH] [xION][Consensus] fix 'Zerocoin_Block_Public_Spend_Enabled()'
 enforcement

From 834cbeb Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 21 May 2019 16:00:15 +0200
Subject: [PATCH] [RPC] enable mint only for regtest

From b75d8bc Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Fri, 7 Jun 2019 00:01:35 -0700
Subject: [PATCH] [Build] Clean all coverage files during make clean

This adds extra paths that were left out and ensures that `.gcda` and `
.gcno` files are properly cleaned up.

From d413496 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Thu, 2 May 2019 23:14:24 -0700
Subject: [PATCH] [Build] Initial CMake support

From 69b0032 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Mon, 27 May 2019 00:32:30 -0700
Subject: [PATCH] fix config.h include file name

From 689ac23 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Fri, 7 Jun 2019 18:51:51 +0200
Subject: [PATCH] [RPC] add 'getblockindexstats' function

From f912182 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Sun, 9 Jun 2019 22:24:13 +0200
Subject: [PATCH] [Cleanup] clang compiler warnings in coinSpend and
 publicCoinSpend fixed.

From d2136e3 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 8 Jun 2019 03:28:54 -0700
Subject: [PATCH] depends: Update from upstream

From ca2fd10 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sun, 9 Jun 2019 18:30:00 -0700
Subject: [PATCH] use non-Cellar OpenSSL path for macOS

removes the dependency on a specific version, as long as the installed
version is 1.0.x. Also set the appropriate environment flags for OpenSSL
 on macOS.

Note: the setting of these two environment variables would be better
suited to a user's `~/.bash_profile` rather than being done within
CMake, as doing it here is destructive.

From 55127d1 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sun, 9 Jun 2019 20:13:24 -0700
Subject: [PATCH] [Gitian] Bump gitian build versions

Bumps the gitian build versions to 3.3, which should have been done
right after 3.2 was branched off.

At the same time, update to python3 explicitly and allow for some better
 error reporting.

From 019d26a Mon Sep 17 00:00:00 2001
From: CaveSpectre11 <36988814+CaveSpectre11@users.noreply.github.com>
Date: Mon, 10 Jun 2019 12:19:55 -0400
Subject: [PATCH] Don't assert if we were beaten to the block

A timing window exists where a wallet could be creating a new block from within the miner thread when a new block is received to the wallet.  This window will create a situation where TestBlockValidity() fails because the chain tip has changed between the time it created the new block and the time it tested the validity of the block.

This situation would result in the wallet being asserted; however this is a little overkill.  rather than asserting if the tip has changed, it is better to throw the block away.

This problem was revealed during a testnet test of an altcoin, and very prevalent when multiple wallet existed with the exact same number of staking coins received in the same transaction; or when multiple wallets were staking the same coins via import private key.  The problem happens significantly less in more normal circumstances, but was still observed in a testing environment with fast blocks.

It is likely that this scenario has been encountered but never determined to be root cause, as a crashed wallet could be restarted, re-indexed and never investigated further.

From 7980f23 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 11 Jun 2019 17:16:27 +0200
Subject: [PATCH] [RPC] fix fee calculation in 'getblockindexstats' and
 'getfeeinfo'

From 26b1f0c Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Tue, 11 Jun 2019 17:33:01 +0200
Subject: [PATCH] [RPC] 'getblockindexstats': count public spends separately

From a5f887b Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sun, 9 Jun 2019 16:18:27 -0700
Subject: [PATCH] [Travis] Update TravisCI from upstream

Most notable change here is the introduction of two breakpoints that
will store the current cache and stop if the previous step took a long
time. This is intended to avoid hitting the global time limit of 50
minutes for builds that would need to rebuild the depends cache.

From addeb0a Mon Sep 17 00:00:00 2001
From: Matias Furszyfer <matiasfurszyfer@protonmail.com>
Date: Fri, 14 Jun 2019 15:12:33 +0200
Subject: [PATCH] Update accumulators.cpp

From 24d72d0 Mon Sep 17 00:00:00 2001
From: CaveSpectre11 <36988814+CaveSpectre11@users.noreply.github.com>
Date: Fri, 14 Jun 2019 19:45:55 -0400
Subject: [PATCH] [code review] LogPrintf nit change

From 49ef846 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Sat, 15 Jun 2019 11:46:52 +0200
Subject: [PATCH] [RPC] fix help texts

- getblockindexstats
- getmintsinblocks
- getserials

From 46ba7a2 Mon Sep 17 00:00:00 2001
From: furszy <matiasfurszyfer@protonmail.com>
Date: Sun, 16 Jun 2019 01:43:42 +0200
Subject: [PATCH] [Backport] Max tip age to consider a node in IBD status
 customizable. Backport from bitcoin#bitcoin#7208.

From eea9915 Mon Sep 17 00:00:00 2001
From: random-zebra <random.zebra@protonmail.com>
Date: Mon, 17 Jun 2019 02:30:42 +0200
Subject: [PATCH] [RPC] fix locking strategy

- validaterange
- getfeeinfo
- geblockindexstats
- getmintsinblocks
- getserials

From 4fa4cc4 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:02:29 -0700
Subject: [PATCH] Update Contributing guidelines

Mainly punctuation and styling changes. Added a section about rebasing
pull requests.

From c5f6822 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:05:22 -0700
Subject: [PATCH] Update tor.md

Updated to consider more recent versions and features of the tor router
(automatic hidden service creation/deletion).

From 231f28e Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:06:34 -0700
Subject: [PATCH] Update translation_process.md

Fix some typos and refresh with more current information.

From 785b61c Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:07:34 -0700
Subject: [PATCH] Update zmq.md

Typo fixes and update python to python3 in sample commands

From df0d2ba Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:11:11 -0700
Subject: [PATCH] Introduce dependencies.md

This file contains explicit dependency information used for release
builds (version, link, etc).

From 2f5efbd Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:12:11 -0700
Subject: [PATCH] Reformat files.md

Changed to markdown table layout for ease of reading. Removed old
bitcoin-only information for older versions that we never used.

From 3cea76b Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:13:45 -0700
Subject: [PATCH] Update and reformat init.md

From 5b4f73d Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:21:28 -0700
Subject: [PATCH] Clean up whitespace in Doxyfile.in

From 20f2513 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:24:22 -0700
Subject: [PATCH] Update doc/README.md

Fix namings, outdated links, and sample commands

From 9335a10 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:26:03 -0700
Subject: [PATCH] Update test/functional/README.md

Added more details regarding the purpose, writing, and use of the
regression test suite.

From 0b5c0c2 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:34:01 -0700
Subject: [PATCH] Update release-process.md

Minor formatting and grammatical changes. Remove stale reference to the
aarch64 gitian descriptor.

From d1a65fd Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:35:18 -0700
Subject: [PATCH] Update dnsseed-policy.md

grammatical fixes

From 2bc9d1b Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:37:16 -0700
Subject: [PATCH] Update developer-notes.md

Add TOC and expand on style guidelines as well as better describe
testing cases.

From 019b8f4 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:38:04 -0700
Subject: [PATCH] Update contrib/devtools/README.md

Prep for new/renamed scripts

From d2af959 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:43:48 -0700
Subject: [PATCH] Introduce translation_strings_policy.md

Adds guidelines for adding new translation strings in the code

From 007cc8c Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 01:55:01 -0700
Subject: [PATCH] Update src/test/README.md

Update the in-tree README.md with the contents of `doc/unit-tests.md`,
and delete the redundant doc file.

From 1558ff7 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 02:44:34 -0700
Subject: [PATCH] Update install_db4.sh

From 70721b4 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 02:45:15 -0700
Subject: [PATCH] Migrate update-translations.py to python3

From 035dda7 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 02:46:46 -0700
Subject: [PATCH] Introduce circular-dependencies.py

This script can be used to find circular include dependencies in the
code base. These should eventually be weeded out.

From b0d7d07 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 02:50:53 -0700
Subject: [PATCH] Update github-merge.py

From 28bd933 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 03:55:34 -0700
Subject: [PATCH] Update gitian-build.py

latest version from upstream, IONified

From 0367807 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 03:56:26 -0700
Subject: [PATCH] Introduce commit-script-check.sh

This script can be used to verify scripted diff commits

From 0608b9c Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Sat, 15 Jun 2019 03:57:17 -0700
Subject: [PATCH] Misc updates

From 2621b7f Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 16:33:35 +0200
Subject: [PATCH] [Refactoring] Move ContextualCheckZerocoinStake() to
 kernel.cpp

And call it in CheckProofOfStake() which is called by AcceptBlock()
instead of calling it directly from AcceptBlock().

From 105ee5f Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 23 Apr 2019 16:54:10 +0200
Subject: [PATCH] [Consensus] Readd checks removed in
 3b778f5

Two importants checks were removed while refactoring to add xION
staking. Their equivalents were added to xION staking but missing for
simple ION staking. We add them back with this commit.

From 88705a6 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Mon, 20 May 2019 12:46:51 +0200
Subject: [PATCH] [Consensus] Guard time checks changes

Guard these changes against the protocol version change enforcement

From d1b54b6 Mon Sep 17 00:00:00 2001
From: Fuzzbawls <fuzzbawls@gmail.com>
Date: Mon, 17 Jun 2019 23:34:54 -0700
Subject: [PATCH] make translate

From e515b1e Mon Sep 17 00:00:00 2001
From: Pieter Wuille <pieter.wuille@gmail.com>
Date: Tue, 25 Nov 2014 16:26:20 +0100
Subject: [PATCH] [Node] Do all block index writes in a batch

Backport from bitcoin bitcoin#5367

From 7c9859f Mon Sep 17 00:00:00 2001
From: Mrs-X <Mrs-X@users.noreply.github.com>
Date: Thu, 20 Jun 2019 13:39:32 +0200
Subject: [PATCH] [Qt] Add blockhash + datadir to information tab

From cde9d13 Mon Sep 17 00:00:00 2001
From: Isidoro Ghezzi <isidoro.ghezzi@icloud.com>
Date: Wed, 17 Oct 2018 16:12:42 +0200
Subject: [PATCH] show the progress of functional test
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

example (added the progress index `n/m`)
```
1/107 - wallet_hd.py passed, Duration: 27 s
.........................................................................................
2/107 - mining_getblocktemplate_longpoll.py passed, Duration: 72 s
..................................................................
3/107 - feature_maxuploadtarget.py passed, Duration: 78 s
```

- clear dots line
```
$ test/functional/test_runner.py -t can_trash
Temporary test directory at can_trash/test_runner_₿_🏃_20181018_220600
1/105 - wallet_hd.py passed, Duration: 21 s
2/105 - mining_getblocktemplate_longpoll.py passed, Duration: 71 s
3/105 - feature_maxuploadtarget.py passed, Duration: 68 s
..................
```

- don't print the `dot` progressive if `--quiet`

- done_str
- nothing commit to check again travis tests

From a57939f Mon Sep 17 00:00:00 2001
From: Chun Kuan Lee <ken2812221@gmail.com>
Date: Tue, 30 Oct 2018 21:06:44 +0800
Subject: [PATCH] tests: Print dots by default

From ae0b4d0 Mon Sep 17 00:00:00 2001
From: Steven Roose <steven@stevenroose.org>
Date: Fri, 22 Feb 2019 18:06:34 +0000
Subject: [PATCH] tests: Print remaining jobs in test_runner.py

This helps finding out which tests fail to finish.

From e4945a2 Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 9 Jul 2019 09:45:27 +0200
Subject: [PATCH] [Travis] Log more info

From 1fa0bf3 Mon Sep 17 00:00:00 2001
From: MarcoFalke <falke.marco@gmail.com>
Date: Fri, 14 Jun 2019 10:31:07 -0400
Subject: [PATCH] travis: Fix caching issues

From 1aa76d0 Mon Sep 17 00:00:00 2001
From: MarcoFalke <falke.marco@gmail.com>
Date: Fri, 14 Jun 2019 10:49:00 -0400
Subject: [PATCH] travis: Use absolute paths for cache dirs

From 5fbf26c Mon Sep 17 00:00:00 2001
From: warrows <warrows@gamer666.fr>
Date: Tue, 9 Jul 2019 15:22:59 +0200
Subject: [PATCH] [Travis] Give more time to tests

Travis was regularly failing because the full test suite with coverage
takestoo much time.
Bitcoin has some optimisations in there which allows them to give less
time to the test part of the process. We don't so until we do, we have
to reserve more time. We will probably have to restart manually more
travis jobs but that's the only way to have them run to the end.
  • Loading branch information
FornaxA authored and cevap committed Feb 6, 2021
1 parent ee4b5d8 commit ad2c832
Show file tree
Hide file tree
Showing 250 changed files with 8,585 additions and 11,064 deletions.
108 changes: 71 additions & 37 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,9 @@ language: minimal
cache:
ccache: true
directories:
- depends/built
- depends/sdk-sources
- $HOME/.ccache
- $TRAVIS_BUILD_DIR/depends/built
- $TRAVIS_BUILD_DIR/depends/sdk-sources
- $HOME/.ccache
stages:
- lint
- test
Expand All @@ -53,130 +53,164 @@ env:
- SDK_URL=https://github.com/gitianuser/MacOSX-SDKs/releases/download/MacOSX10.11.sdk
- WINEDEBUG=fixme-all
- DOCKER_PACKAGES="build-essential libtool autotools-dev automake pkg-config bsdmainutils curl git ca-certificates ccache"

- CACHE_ERR_MSG="Error! Initial build successful, but not enough time remains to run later build stages and tests. Please manually re-run this job by using the travis restart button or asking a bitcoin maintainer to restart. The next run should not time out because the build cache has been saved."
before_install:
- set -o errexit; source .travis/test_03_before_install.sh
install:
- set -o errexit; source .travis/test_04_install.sh
before_script:
- set -o errexit; source .travis/test_05_before_script.sh
script:
- set -o errexit; source .travis/test_06_script.sh
- export CONTINUE=1
- if [ $SECONDS -gt 1200 ]; then export CONTINUE=0; fi # Likely the depends build took very long
- if [ $CONTINUE = "1" ]; then set -o errexit; source .travis/test_06_script_a.sh; else set +o errexit; echo "$CACHE_ERR_MSG"; false; fi
- if [ $SECONDS -gt 1500 ]; then export CONTINUE=0; fi # Likely the build took very long; The tests take about 1000s, so we should abort if we have less than 50*60-1000=2000s left
- if [ $CONTINUE = "1" ]; then set -o errexit; source .travis/test_06_script_b.sh; else set +o errexit; echo "$CACHE_ERR_MSG"; false; fi
after_script:
- echo $TRAVIS_COMMIT_RANGE
- echo $TRAVIS_COMMIT_LOG

- echo $TRAVIS_COMMIT_RANGE
- echo $TRAVIS_COMMIT_LOG
jobs:
include:
# lint stage

- stage: lint
name: 'lint'
env:
sudo: false
cache: false
language: python
python: '3.6'
python: '3.5' # Oldest supported version according to doc/dependencies.md
install:
- set -o errexit; source .travis/lint_04_install.sh
before_script:
- set -o errexit; source .travis/lint_05_before_script.sh
script:
- set -o errexit; source .travis/lint_06_script.sh
# ARM

- stage: test
name: 'ARM 32-bit [GOAL: install] [no unit or functional tests]'
env: >-
HOST=arm-linux-gnueabihf
PACKAGES="python3 g++-arm-linux-gnueabihf"
DEP_OPTS="NO_QT=1"
RUN_FUNCTIONAL_TESTS=false
GOAL="install"
# -Wno-psabi is to disable ABI warnings: "note: parameter passing for argument of type ... changed in GCC 7.1"
# This could be removed once the ABI change warning does not show up by default
ION_CONFIG="--enable-glibc-back-compat --enable-reduce-exports CXXFLAGS=-Wno-psabi"
# AArch64
- stage: test
name: 'ARM 64-bit [GOAL:install] [no unit or functional tests]'
env: >-
HOST=aarch64-linux-gnu
PACKAGES="python3 g++-aarch64-linux-gnu"
DEP_OPTS="NO_QT=1"
RUN_FUNCTIONAL_TESTS=false
GOAL="install"
ION_CONFIG="--enable-glibc-back-compat --enable-reduce-exports"
# RISC-V
- stage: test
name: 'RISC-V [GOAL:install] [no unit or functional tests]'
env: >-
HOST=riscv64-linux-gnu
PACKAGES="python3 g++-riscv64-linux-gnu"
DEP_OPTS="NO_QT=1"
RUN_FUNCTIONAL_TESTS=false
GOAL="install"
ION_CONFIG="--enable-glibc-back-compat --enable-reduce-exports"
# Win32
- stage: test
name: 'Win32 [GOAL: deploy] [no functional tests]'
env: >-
HOST=i686-w64-mingw32
DPKG_ADD_ARCH="i386"
DEP_OPTS="NO_QT=1"
PACKAGES="python3 nsis g++-mingw-w64-i686 wine-binfmt wine32"
GOAL="install"
RUN_FUNCTIONAL_TESTS=false
GOAL="deploy"
ION_CONFIG="--enable-reduce-exports"
# Win64
- stage: test
name: 'Win64 [GOAL: deploy] [no functional tests]'
env: >-
HOST=x86_64-w64-mingw32
DEP_OPTS="NO_QT=1"
PACKAGES="python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64"
GOAL="install"
RUN_FUNCTIONAL_TESTS=false
GOAL="deploy"
ION_CONFIG="--enable-reduce-exports"
# 32-bit + dash
- stage: test
name: '32-bit + dash [GOAL: install] [no gui]'
env: >-
HOST=i686-pc-linux-gnu
PACKAGES="g++-multilib python3-zmq"
DEP_OPTS="NO_QT=1"
GOAL="install"
ION_CONFIG="--enable-zmq --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++"
ION_CONFIG="--enable-zmq --with-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports LDFLAGS=-static-libstdc++"
CONFIG_SHELL="/bin/dash"
# x86_64 Linux (uses qt5 dev package instead of depends Qt to speed up build and avoid timeout)
- stage: test
name: 'x86_64 Linux [GOAL: install] [bionic] [uses qt5 dev package instead of depends Qt to speed up build and avoid timeout]'
env: >-
HOST=x86_64-unknown-linux-gnu
PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools protobuf-compiler libdbus-1-dev libharfbuzz-dev libprotobuf-dev"
DEP_OPTS="NO_QT=1 NO_UPNP=1 DEBUG=1 ALLOW_HOST_PACKAGES=1"
RUN_FUNCTIONAL_TESTS=true
#TEST_RUNNER_EXTRA="--coverage --extended" # Run extended tests so that coverage does not fail, but exclude the very slow dbcrash
GOAL="install"
ION_CONFIG="--enable-zmq --with-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports CPPFLAGS=-DDEBUG_LOCKORDER"
# x86_64 Linux (no depends, only system libs)
ION_CONFIG="--enable-zmq --with-gui=qt5 --enable-glibc-back-compat --enable-reduce-exports"
- stage: test
name: 'x86_64 Linux [GOAL: install] [trusty] [no functional tests, no depends, only system libs]'
env: >-
HOST=x86_64-unknown-linux-gnu
DOCKER_NAME_TAG=ubuntu:14.04
PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libicu-dev libpng-dev libssl-dev libevent-dev bsdmainutils libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libdb5.1++-dev libminiupnpc-dev libzmq3-dev libprotobuf-dev protobuf-compiler libqrencode-dev libgmp-dev"
NO_DEPENDS=1
RUN_FUNCTIONAL_TESTS=false
GOAL="install"
ION_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=no"
- stage: test
name: 'x86_64 Linux [GOAL: install] [xenial] [no depends, only system libs]'
env: >-
HOST=x86_64-unknown-linux-gnu
DOCKER_NAME_TAG=ubuntu:16.04
PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libssl-dev libevent-dev bsdmainutils libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libprotobuf-dev protobuf-compiler libqrencode-dev libgmp-dev"
NO_DEPENDS=1
GOAL="install"
ION_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER --disable-hardening --disable-asm"
- stage: test
name: 'x86_64 Linux [GOAL: install] [bionic] [no depends, only system libs]'
env: >-
HOST=x86_64-unknown-linux-gnu
PACKAGES="python3-zmq qtbase5-dev qttools5-dev-tools libssl1.0-dev libevent-dev bsdmainutils libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libprotobuf-dev protobuf-compiler libqrencode-dev libgmp-dev"
NO_DEPENDS=1
GOAL="install"
ION_CONFIG="--enable-zmq --with-incompatible-bdb --enable-glibc-back-compat --enable-reduce-exports --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER"
# x86_64 Linux (sanitizers)
ION_CONFIG="--enable-zmq --with-incompatible-bdb --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER"
# - stage: test
# name: 'x86_64 Linux [GOAL: install] [bionic] [no depends, only system libs, sanitizers: fuzzer,address]'
# env: >-
# HOST=x86_64-unknown-linux-gnu
# PACKAGES="clang python3-zmq qtbase5-dev qttools5-dev-tools libssl1.0-dev libevent-dev bsdmainutils libboost-system-dev libboost-filesystem-dev libboost-chrono-dev libboost-program-options-dev libboost-test-dev libboost-thread-dev libdb5.3++-dev libminiupnpc-dev libzmq3-dev libprotobuf-dev protobuf-compiler libqrencode-dev libgmp-dev"
# NO_DEPENDS=1
# RUN_UNIT_TESTS=false
# RUN_FUNCTIONAL_TESTS=false
# RUN_BENCH=true
# RUN_FUNCTIONAL_TESTS=false # Disabled for now, can be combined with the other x86_64 linux NO_DEPENDS job when functional tests pass the sanitizers
# GOAL="install"
# ION_CONFIG="--enable-zmq --with-incompatible-bdb --enable-glibc-back-compat --enable-reduce-exports --with-gui=qt5 CPPFLAGS=-DDEBUG_LOCKORDER --with-sanitizers=undefined CC=clang CXX=clang++"
# x86_64 Linux, No wallet

# - stage: test
# name: 'x86_64 Linux [GOAL: install] [bionic] [no wallet]'
# env: >-
# HOST=x86_64-unknown-linux-gnu
# PACKAGES="python3"
# PACKAGES="python3-zmq"
# DEP_OPTS="NO_WALLET=1"
# GOAL="install"
# ION_CONFIG="--enable-glibc-back-compat --enable-reduce-exports"
# Cross-Mac

- stage: test
name: 'macOS 10.10 [GOAL: deploy] [no functional tests]'
env: >-
HOST=x86_64-apple-darwin14
PACKAGES="cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python-dev python3-setuptools-git"
PACKAGES="cmake imagemagick libcap-dev librsvg2-bin libz-dev libbz2-dev libtiff-tools python3-dev python3-setuptools"
OSX_SDK=10.11
RUN_UNIT_TESTS=false
RUN_FUNCTIONAL_TESTS=false
GOAL="all deploy"
GOAL="deploy"
ION_CONFIG="--enable-gui --enable-reduce-exports --enable-werror"
8 changes: 7 additions & 1 deletion .travis/lint_04_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,10 @@

export LC_ALL=C

travis_retry pip install flake8
travis_retry pip install codespell==1.13.0
travis_retry pip install flake8==3.5.0
travis_retry pip install vulture==0.29

SHELLCHECK_VERSION=v0.6.0
curl -s "https://storage.googleapis.com/shellcheck/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz" | tar --xz -xf - --directory /tmp/
export PATH="/tmp/shellcheck-${SHELLCHECK_VERSION}:${PATH}"
2 changes: 2 additions & 0 deletions .travis/test_03_before_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
export LC_ALL=C.UTF-8

PATH=$(echo $PATH | tr ':' "\n" | sed '/\/opt\/python/d' | tr "\n" ":" | sed "s|::|:|g")
# Add llvm-symbolizer directory to PATH. Needed to get symbolized stack traces from the sanitizers.
PATH=$PATH:/usr/lib/llvm-6.0/bin/
export PATH

BEGIN_FOLD () {
Expand Down
4 changes: 3 additions & 1 deletion .travis/test_04_install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,11 @@
export LC_ALL=C.UTF-8

travis_retry docker pull "$DOCKER_NAME_TAG"
env | grep -E '^(CCACHE_|WINEDEBUG|LC_ALL|BOOST_TEST_RANDOM|CONFIG_SHELL)' | tee /tmp/env
env | grep -E '^(ION_CONFIG|CCACHE_|WINEDEBUG|LC_ALL|BOOST_TEST_RANDOM|CONFIG_SHELL)' | tee /tmp/env
if [[ $HOST = *-mingw32 ]]; then
DOCKER_ADMIN="--cap-add SYS_ADMIN"
elif [[ $ION_CONFIG = *--with-sanitizers=*address* ]]; then # If ran with (ASan + LSan), Docker needs access to ptrace (https://github.com/google/sanitizers/issues/764)
DOCKER_ADMIN="--cap-add SYS_PTRACE"
fi
DOCKER_ID=$(docker run $DOCKER_ADMIN -idt --mount type=bind,src=$TRAVIS_BUILD_DIR,dst=$TRAVIS_BUILD_DIR --mount type=bind,src=$CCACHE_DIR,dst=$CCACHE_DIR -w $TRAVIS_BUILD_DIR --env-file /tmp/env $DOCKER_NAME_TAG)

Expand Down
67 changes: 0 additions & 67 deletions .travis/test_06_script.sh

This file was deleted.

Loading

0 comments on commit ad2c832

Please sign in to comment.