Commit Graph

691 Commits

Author SHA1 Message Date
PastaPastaPasta
1e74bcace9 [ZMQ] Notify when an IS double spend is attempted (#2262)
* Implement IS Double spend notifications in zmq

* copy/paste error

* typo

* Send both conflicting and conflicts against as ZMQ notifications

* CTransaction based not hash based

* @UdjinM6 requested changes
2018-09-12 14:12:44 +03:00
Alexander Block
cb37c39725 Bump PROTOCOL_VERSION to 70211, bump MIN_* protocols to 70210 (#2256)
Bump PROTOCOL_VERSION to 70211, bump MIN_* protocols to 70210
2018-09-05 19:34:56 +03:00
Alexander Block
3d654b9814 Build bionic base image in Jenkinsfile.gitian & update docs (#2226)
* Build bionic base image in Jenkinsfile.gitian

We updated gitian builds to use bionic, so we should also update the Jenkinsfile

* Update docs
2018-08-14 22:36:15 +03:00
Alexander Block
c09f57bd78 Backport move to Ubuntu Bionic and GCC7 in Gitian builds (#2225)
* Add stdin, stdout, stderr to ignored export list

* Merge #13171: Change gitian-descriptors to use bionic instead

c1afe3232fa10e290fb355cf37ea4c7bc1084065 Change gitian-descriptors to use bionic instead (Chun Kuan Lee)

Pull request description:

  I have tested this with Ubuntu Bionic host with lxc 3.0.0, the gitian-build for Windows and MacOSX work fine, but there is an issue about it for Linux. Failed at check-symbol:
  ```
  test/test_bitcoin: symbol __divmoddi4 from unsupported version GCC_7.0.0
  test/test_bitcoin: symbol log2f from unsupported version GLIBC_2.27
  qt/bitcoin-qt: symbol __divmoddi4 from unsupported version GCC_7.0.0
  qt/bitcoin-qt: symbol log2f from unsupported version GLIBC_2.27
  ```
  I think this should be fixed in `./configure --enable-glibc-back-compat`

  Should not be merged before #13177 devrandom/gitian-builder#178

  Close #12511

Tree-SHA512: 257d75d5b6864e105279f7a7b992fbbd7903cdbe3300b66dacec0a783d267707d9dbbfe0e64a36983ca1eca50a2a5e1cdb222b6d3745ccc3e5fc5636c88b581f

* Use IN6ADDR_ANY_INIT instead of in6addr_any

This is the same fix as fc6a9f2ab1
Couldn't backport the original commit as we are missing some refactorings.
2018-08-13 23:21:42 +03:00
Alexander Block
7cf9572c26 Backport Bitcoin #11881: Remove Python2 support (#2224)
* Merge #11881: Remove Python2 support

1874058 Make base58 python contrib code work with python3 (Evan Klitzke)
bc6fdf2 Change all python files to use Python3 (John Newbery)

Pull request description:

  Following discussion here: https://github.com/bitcoin/bitcoin/pull/11843#issuecomment-351033742

  It's easier for maintainers if all python tools/scripts support only a single version of Python. There are only a few scripts that aren't explicitly python3 at this point, so this PR changes those remaining scripts to explicitly require python3.

Tree-SHA512: 5d38eef6e0fc7d8515e23a1f4c75e8b4160fd0fe23cba52a1f41689b114e54a9e503e0724829e8b41982ef98f2d113df80d9e238213b74f09ceaed0344a19e24

* Merge #12829: Python3 fixup

f50975b [contrib] fixup symbol-check.py Python3 support (John Newbery)
5de2b18 [contrib] fixup security-check.py Python3 support (John Newbery)

Pull request description:

  security-check.py and symbol-check.py were broken by #11881. Fix them.

Tree-SHA512: 86de3d6dc3292b1ae4cc04c2d7d7dbbf39c9270551d7b224b8d8b19e3184c30c897dbf823200403706d06bb405c0decad5cfd690cb2c0312992a235a4ffcf6bf
2018-08-13 19:07:52 +03:00
Alexander Block
eb202e812f Use ccache in gitian builds (#2185)
* Use subdirectory for depends cache in gitian builds

* Make timestamps of wrappers deterministic

* Use ccache in gitian builds

* Upgrade ccache to latest version (3.4.2)

* Build the branch that belongs to the Jenkins build instead of develop
2018-07-20 16:33:02 +03:00
Alexander Block
b476173258 Install python3 in gitian builds (#2182)
We mostly switched to python3, so we should also install it in gitian
builds. Especially the osx build needs as it otherwise fails due to
missing setuptools.
2018-07-16 15:49:23 +03:00
Alexander Block
7a85e24c37 Remove deprecated gitian-rpi2.yml descriptor (#2183)
Since backporting Bitcoin 0.14 code, we have the arm-linux-gnueabihf
and aarch64-linux-gnu hosts in gitian-linux.yml
2018-07-16 15:48:47 +03:00
Alexander Block
f3e380659a Move to in-docker CI builds and add Jenkins support (#2178)
* GCC-7 and glibc-2.27 compat code

* Statically link libstdc++ for GCC based builds

Makes sure binaries which are built on a newer build host still work
on older distros.

* Use python3 when installing MacOS native tools

* Move actual build logic out of Travis and upgrade to gcc-7

Travis will now simply call a few scripts which do the actual work.
These scripts will first create a "builder image" which contains the
necessary environment for the actual build. Then scripts are called
inside this builder image to do the build.

This should make us more independant from Travis and also allows us
to do local CI testing.

The build matrix is also moved out of .travis.yml and instead moved
into ci/matrix.sh. This script is sourced with only "BUILD_TARGET" being
set so that it internally can figure out which other environment
variables need to be set.

This commit also upgrades the used GCC version to 7. This is due to the
use of ubuntu:bionic as base image for the builder image.

* Add Jenkinsfiles for regular CI and nightly gitian builds

* Automatically download OSX SDK in gitian-build.sh

* Remove bogus "export MAKEJOBS=-j5"

* Forward cache/src dirs into builder container

Fixes caching issues on Travis.

* fix

* Fail build immediately when building depends took too long
2018-07-12 16:28:59 +03:00
PaulieD
0e689341d2 Implement Governance ZMQ notification messages (#2160)
* fix whitespace

* added zmq stuff for governance objects and votes
it seems that zmq is currently not in a working state, need to figure that out.

Need to:
plug in the new methods added
possibly plug in the old methods, as it doesn't look like they are.

* formatting fix. Will probably need to revert for this PR

* continue linking new zmq messages in

* added comment, might need to revert

* fixes error of it not knowing about the classes

* Actually link in, all new govobjects and govvotes should be broadcast over zmq now.

* fix compile error, forgot to change params when copying

* fix compile error

* add imports to the header files in zmqconfig.h

* fixing linking(i think) error

* Revert "added comment, might need to revert"

This reverts commit 2918ea40fe.

* Revert "formatting fix. Will probably need to revert for this PR"

This reverts commit ca10558866.

* fix tabs etc

* EOL added

* optimization of hash.begin() @nmarley thoughts?

* remove formatting changes

* iterator i -> it and removal of notifier

* typo in df879f57

* use auto for the iterators

* introduce hash prefix

* implement changes in zmq_sub.py, update the doc, and change argument name to fix typo

* deref iterators before calling methods

* continued e8a4c505

* missed one... continued e8a4c505

* killing some tabs

* fix spacing for setting or comparing iterators

* change order of new variables to match current setup

* re-add elif's I didn't realize got removed

* Revert "fix spacing for setting or comparing iterators"

This reverts commit 8ce2068148.

* Revert "use auto for the iterators"

This reverts commit cb16cf0760.

* Revert "missed one... continued e8a4c505"

This reverts commit 2087cf894f.

* Revert "continued e8a4c505"

This reverts commit a78c8ad2c9.

* Revert "deref iterators before calling methods"

This reverts commit e8a4c505d1.

* Revert "iterator i -> it and removal of notifier"

This reverts commit 29574248b1.

* Revert "fix whitespace"

This reverts commit 612be48d96.

* Revert "typo in df879f5"

* Revert "Optimization of hash.begin()"

* fixes problem with revert

* Udjin complain's a lot ;)

* help text, init.cpp

* add signals in validationinterface.cpp

* Change location of vote notification call.

* remain consistent

* remove unneeded include due to change of notification location

* implement raw notifications
2018-07-12 12:06:30 +03:00
UdjinM6
3c89983db6
Remove DarksendConfig (#2132) 2018-07-12 12:03:26 +03:00
UdjinM6
7ab5b4a28e
Update/optimize images (#2147)
* update optimize-pngs.py with new paths

* `python contrib/devtools/optimize-pngs.py`

Total reduction: 22025 bytes

* update share/pixmaps/*
2018-06-29 01:22:48 +03:00
UdjinM6
1c9917e227
Fix CVE-2018-12356 by hardening the regex (#2126) 2018-06-18 19:08:27 +03:00
Alexander Block
7b43720f05
Fix copying of final binaries into dashcore-binaries (#2090)
* Fix copying of final binaries into dashcore-binaries

* Fix binary names in gitian-osx-signer.yml and gitian-win-signer.yml
2018-05-31 17:31:00 +02:00
Alexander Block
2129ee4d8c Add docker support when doing Gitian builds (#2084)
* gitian-build.sh: fix signProg being recognized as two parameters

* Support docker based Gitian builds

Requires a gitian-builder version with
https://github.com/devrandom/gitian-builder/pull/181

This will also switch to use Docker by default.

* Switch back to using lxc as default until upstream gitian-builder is ready
2018-05-30 13:48:30 +03:00
Alexander Block
6a1456ef4c Update gitian key for codablock (#2085)
https://keybase.io/codablock

Old key was using default gpg settings with 2048 bits.
2018-05-29 18:13:47 +03:00
Alexander Block
ab96a6af63 Update gitian keys, script and doc (#2082)
* Remove Bitcoin Gitian keys

* Update gitian-build.sh and gitian-building.md

gitian-building.md referenced "br0" but "lxcbr0" was used in the script.
gitian-build.sh used 10.0.2.2 as IP for the bridge but this conflicts with
VirtualBox networking.

* Add gitian key for codablock

https://keybase.io/codablock

* Add gitian key for schinzelh

https://keybase.io/schinzelh

* Add gitian key for gladcow

https://keybase.io/gladcow

* Add gitian key for nmarley

https://keybase.io/nmarley

* Add gitian key for udjinm6

https://keybase.io/UdjinM6

* Add EOL chars
2018-05-26 21:04:07 +03:00
crowning-
118eeded6d [GUI] Create QR-code for Masternode private key (#1970) 2018-03-08 15:17:34 +03:00
Alexander Block
a6ba82ac9a Use masternode list to generate hardcoded seeds (#1892)
* Change makeseeds.py to use masternode list as input instead of DNS seed dump

* Allow 4 nodes per ASN

Lift the limitation a bit so we get more entries

* Update nodes_main.txt and nodes_test.txt

Generated with makeseeds.py based on current masternode lists

* Fix comment about the source of the seed nodes and use masternodelist rpc

* Use fixed OpenDNS servers for ASN filtering
2018-02-05 18:39:26 +03:00
Wladimir J. van der Laan
e9976d20f1 Merge #10495: contrib: Update location of seeds.txt
ac9cd95 contrib: Update location of seeds.txt (Wladimir J. van der Laan)

Tree-SHA512: c12a75787ba87f03707c21731da083b466762a7e0af9ca501107695ea1074025907cc24805c7c87f4a66daa7f4f13e574da16be1681e61deaf1acbd72176b3ff
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
294228afcc Merge #10451: contrib/init/bitcoind.openrcconf: Don't disable wallet by default
afc693d contrib/init/bitcoind.openrcconf: Don't disable wallet by default (Luke Dashjr)

Tree-SHA512: 1763a9e91788485b079b96239cf09f1557b338e5045aa4ffbad3908f88c4e362b9b5d86a8a0f33734899de244e76e7ced02a6be8e52b3fb69258a5101d6445ef
2018-01-26 12:59:29 +01:00
Wladimir J. van der Laan
24be65e87a Merge #10328: Update contrib/debian to latest Ubuntu PPA upload.
91700aa Re-enable upnp support in contrib/debian (Matt Corallo)
c5071e1 Build with QT5 on Debian-based systems using contrib/debian (Matt Corallo)
a8e9286 Bump minimum boost version in contrib/debian (Matt Corallo)
9970219 Update contrib/debian to latest Ubuntu PPA upload. (Matt Corallo)

Tree-SHA512: ee4d3c5927a9cfb2794672eaca883c4af5df541383afbdbc6500714ee17518e78b58f509b2e9805bbc424ef97a5e64be0b9a977212c5002cb682f0569d28099b
2018-01-26 12:59:29 +01:00
Alexander Block
11a5f2e6a6 Rename and Dashify .manpages files 2018-01-23 16:08:56 +01:00
Wladimir J. van der Laan
c5fdd27d40 Merge #8743: Remove old manpages from contrib/debian in favour of doc/man
b194872 Remove old manpages from contrib/debian (fanquake)
2018-01-23 09:24:29 +01:00
Wladimir J. van der Laan
5f88c6451d Merge #9675: Fix typo and spelling inconsistency in CONTRIBUTING.md
36164fa Fix typo and spelling inconsistency in CONTRIBUTING.md (Koki Takahashi)
2018-01-23 09:24:29 +01:00
Wladimir J. van der Laan
b183a1f2a3 Merge #9735: devtools: Handle Qt formatting characters edge-case in update-translations.py
7179e7c qt: Periodic translations update (Wladimir J. van der Laan)
5e903a5 devtools: Handle Qt formatting characters edge-case in update-translations.py (Wladimir J. van der Laan)
2018-01-23 09:24:28 +01:00
Wladimir J. van der Laan
7cc218dd72 Merge #9736: Pre-0.14.0 hardcoded seeds update
a60677e Pre-0.14.0 hardcoded seeds update (Wladimir J. van der Laan)
bfa9393 contrib/seeds: Update PATTERN_AGENT (Wladimir J. van der Laan)
4dfac2c Update seeds tooling to Python 3 (Wladimir J. van der Laan)
2018-01-23 09:24:28 +01:00
Wladimir J. van der Laan
767f5e436b Merge #9532: Remove unused variables
90fd29b Remove unused int64_t nSinceLastSeen (practicalswift)
ac4a095 Remove unused Python variables (practicalswift)
2018-01-23 09:24:27 +01:00
Wladimir J. van der Laan
81eeb0dee7 Merge #9651: Fix typos
5f62e3e Fix typos (practicalswift)
2018-01-23 09:24:27 +01:00
Wladimir J. van der Laan
3dcbfc744a Merge #9580: Fix various minor linearization script issues
b9d95bd Fix various minor linearization script issues (Douglas Roark)
2018-01-23 09:24:27 +01:00
MarcoFalke
e24b8ae50e Merge #9649: [doc] Remove unused clang format dev script
fa5137c [doc] Remove unused clang format dev script (MarcoFalke)
2018-01-23 09:24:26 +01:00
MarcoFalke
660c027cd5 Merge #9510: [trivial] Fix typos in comments
cc16d99 [trivial] Fix typos in comments (practicalswift)
2018-01-21 12:48:34 +01:00
Wladimir J. van der Laan
ef6297cdd6 Merge #9617: [Trivial] Update license year range to 2017
be31a2b [Trivial] Update license year range to 2017 (Lauda)
2018-01-21 12:48:33 +01:00
Wladimir J. van der Laan
96b4910fbe Merge #9607: Remove redundant semicolons in Python code
5cdf106 Remove redundant semicolons in Python code (practicalswift)
2018-01-21 12:48:33 +01:00
Wladimir J. van der Laan
78a7a9f30b Merge #9552: Add IPv6 support to qos.sh
fc089ae Add IPv6 support to qos.sh (James White)
2018-01-21 12:48:33 +01:00
MarcoFalke
be63fb7953 Merge #9508: Remove unused Python imports
95bab82 Remove unused Python imports (practicalswift)
2018-01-21 12:48:33 +01:00
Alexander Block
e5daae2913 Dashify "linearize" README.md and switch the tool to mainnet 2018-01-18 19:39:43 +01:00
Alexander Block
b3ee3fc355 Dashify example config and help strings 2018-01-18 19:39:43 +01:00
Wladimir J. van der Laan
882e2cdb9f Merge #9373: Linearize script update (hash byte reversal and Python 3 support)
3c8f63b Make linearize scripts Python 3-compatible. (Doug)
d5aa198 Allow linearization scripts to support hash byte reversal (Doug)
2018-01-18 07:33:44 +01:00
MarcoFalke
125adda41a Merge #9401: Make rpcauth help message clearer, add example in example .conf
0513c70 Make rpcauth help message clearer, add example in example .conf (Gregory Sanders)
2018-01-18 07:33:43 +01:00
Jonas Schnelli
a590da317c Merge #9412: build: Fix 'make deploy' for OSX
2fb98f6 Fix bug in dmg builder so that it actually reads in the configuration file (Don Patterson)
b01667c Mention RSVG dependency when creating the disk image on OSX (Jonas Schnelli)
09aefb5 build: Fix 'make deploy' for OSX (Cory Fields)
2018-01-18 07:33:42 +01:00
MarcoFalke
47a7ec79fe Merge #9083: Enforcing consistency, 'gitian' to 'Gitian'
66ca6cd Enforcing consistency, 'gitian' to 'Gitian' (S. Matthew English)
2018-01-13 13:44:39 +01:00
Wladimir J. van der Laan
9d661f4337 Merge #8675: Make copyright header lines uniform
4b04e32 [copyright] copyright header style uniform (isle2983)
2018-01-13 13:44:39 +01:00
Wladimir J. van der Laan
0b93a58947 Merge #8674: tools for analyzing, updating and adding copyright headers in source files
159597a [devtools] script support for managing source file copyright headers (isle2983)
2018-01-13 13:44:39 +01:00
Wladimir J. van der Laan
4d0f28545e Merge #8948: [TRIVIAL] reorder Windows gitian build order to match Linux
3f7581d [TRIVIAL] reorder Windows gitian build order to match Linux (Micha)
2018-01-13 13:44:38 +01:00
Jonas Schnelli
b02e461fae Merge #8908: Update bitcoin-qt.desktop
164196b Simple Update to File 'bitcoin-qt.desktop' (matthias)
2018-01-12 09:58:15 +01:00
Wladimir J. van der Laan
4fc77cc3a1 Merge #8954: contrib: Add README for pgp keys
fab5ca8 contrib: Add README for pgp keys (MarcoFalke)
2018-01-12 09:58:14 +01:00
Wladimir J. van der Laan
8edc2a78cb Merge #8249: Enable (and check for) 64-bit ASLR on Windows
62c2915 build: supply `-Wl,--high-entropy-va` (Wladimir J. van der Laan)
9a75d29 devtools: Check for high-entropy ASLR in 64-bit PE executables (Wladimir J. van der Laan)
2018-01-11 13:22:22 +01:00
Wladimir J. van der Laan
9ad1f3ffb9 Merge #8779: [contrib] Delete spendfrom
fa81d09 [contrib] Delete spendfrom (MarcoFalke)
2018-01-11 13:22:22 +01:00
Wladimir J. van der Laan
24c69691c2 Merge #8781: [contrib] delete qt_translations.py
faf87af [contrib] delete qt_translations.py (MarcoFalke)
2018-01-11 13:22:21 +01:00