This fixes #7018.
Reviewers may call $ contrib/devtools/git-subtree-check.sh src/secp256k1 fa63e49
This fixes #7018.
Reviewers may call $ contrib/devtools/git-subtree-check.sh src/secp256k1 fa63e49
b48da5c script: Remove magic numbers (David Hill)
212bcca Add optional locktime to createrawtransaction (Tom Harding)
65ef372 Add BIP65 to getblockchaininfo softforks list (Peter Todd)
cde7ab2 Add RPC tests for the CHECKLOCKTIMEVERIFY (BIP65) soft-fork (Peter Todd)
287f54f Add CHECKLOCKTIMEVERIFY (BIP65) soft-fork logic (Peter Todd)
- Add developer notes about `.gitignore.`
- Remove qt creator specific files from gitignore, to be consistent.
d3b09f6 Do not allow blockfile pruning during reindex. (Alex Morcos)
The lock-time code currently uses CBlock::nTime as the cutoff point for time based locked transactions. This has the unfortunate outcome of creating a perverse incentive for miners to lie about the time of a block in order to collect more fees by including transactions that by wall clock determination have not yet matured. By using CBlockIndex::GetMedianTimePast from the prior block instead, the self-interested miner no longer gains from generating blocks with fraudulent timestamps. Users can compensate for this change by simply adding an hour (3600 seconds) to their time-based lock times.
If enforced, this would be a soft-fork change. This commit only adds the functionality on an unexecuted code path, without changing the behaviour of Bitcoin Core.
Transactions are not allowed in the memory pool or selected for inclusion in a block until their lock times exceed chainActive.Tip()->GetMedianTimePast(). However blocks including transactions which are only mature under the old rules are still accepted; this is *not* the soft-fork required to actually rely on the new constraint in production.
Until now there were quite a few leftovers, and only the coverage
related files in `src/` were cleaned, while the ones in the other dirs
remained. `qa/tmp/` is related to the BitcoinJ tests, and `cache/` is
related to RPC tests.
Because Python is (going to be) used to run the RPC tests, when
gathering coverage data with lcov, it is explicitly checked, whether
Python is really available.
When using lcov to gather code coverage data, the configuration option
`--enable-extended-rpc-tests` may be used to enable extended RPC tests.
The configuration option `--enable-comparison-tool-reorg-tests` may be
used to enable extended tests via BitcoinJ also for coverage testing.
The RPC tests (via `qa/pull-tester/rpc-tests.py`) are now executed,
when gathering code coverage data, for example with `make cov`.
Generating coverage data requires `lcov`, which can installed with:
sudo apt-get install lcov
To also use the BitcoinJ tests, get the test tool:
TOOL_URL=https://github.com/theuni/bitcoind-comparisontool/raw/master/pull-tests-8c6666f.jar
TOOL_HASH=a865332b3827abcde684ab79f5f43c083b0b6a4c97ff5508c79f29fee24f11cd
wget $TOOL_URL -O ./share/BitcoindComparisonTool.jar
echo "$TOOL_HASH ./share/BitcoindComparisonTool.jar" | shasum --algorithm 256 --check
The coverage data can be generated with:
./autogen.sh
./configure --enable-lcov --with-comparison-tool=./share/BitcoindComparisonTool.jar
make
make cov
Optionally the options `--enable-extended-rpc-tests` and
`--enable-comparison-tool-reorg-tests` may be used to enable more time
consuming tests.
It then runs the tests and generates two HTML reports:
- test_bitcoin.coverage/index.html
- total.coverage/index.html
ceb2a9c doc: mention BIP65 softfork in bips.md (Wladimir J. van der Laan)
dca7bd3 doc: Add developer notes about gitignore (Wladimir J. van der Laan)
d80e3cb Support gathering of code coverage data for RPC tests (dexX7)
e3b5e6c Run extended BitcoinJ tests for coverage based on config (dexX7)
45d4ff0 Add config option to enable extended RPC tests for code coverage (dexX7)
8e3a27b Require Python for RPC tests, when using lcov (dexX7)
d425877 Remove coverage and test related files, when cleaning up (dexX7)
4d2a926 Ignore coverage data related and temporary test files (dexX7)
10e2eae rpc: Add maxmempool and effective min fee to getmempoolinfo (Wladimir J. van der Laan)
dea8d21 Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints (Mark Friedenbach)
9d55050 Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations (Mark Friedenbach)
Current master crashes on OSX with an exception: "boost: mutex lock failed in pthread_mutex_lock: Invalid argument"
* -maxuploadtarget can be set in MiB
* if <limit> - ( time-left-in-24h-cycle / 600 * MAX_BLOCK_SIZE ) has reach, stop serve blocks older than one week and filtered blocks
* no action if limit has reached, no guarantee that the target will not be surpassed
* add outbound limit informations to rpc getnettotals
143d173 Use BOOST_CHECK_MESSAGE() rather than BOOST_CHECK() in alerts_tests.cpp and initialize strMiscWarning before calling PartitionCheck()." (Eric Lombrozo)
e04b0b6 added OS X documentation to doc/init.md (Kevin Cooper)
d4aa54c added org.bitcoin.bitcoind.plist for launchd (OS X) (Kevin Cooper)
17a073a Add RPC test for -maxuploadtarget (Suhas Daftuar)
872fee3 Introduce -maxuploadtarget (Jonas Schnelli)
7bbc7c3 Add option for microsecond precision in debug.log (Suhas Daftuar)
0d699fc fix locking issue with new mempool limiting (Jonas Schnelli)
2d8c49d Clean up tx prioritization when conflict mined (Casey Rodarmor)
- ensure all missing catch cases are constant where possible
- ensure header namespaces and end comments are correct
- add missing header end comments
- ensure minimal formatting (add newlines etc.)
Update the unittest that is meant to catch a transaction that is invalid
because it has a null input. The old test failed not because of that
but because it was considered a coinbase with too large script. This is
already checked with a different test, though.
The new test is *not* a coinbase since it has two inputs, but one of
them is null. This really checks the corresponding code path in
CheckTransaction.
create_coinbase() was being called with the wrong arguments
298e040 Fix chainstate serialized_size computation (Pieter Wuille)
6e800c2 Add Pieter's new PGP key to verify-commits/trusted-keys (Matt Corallo)
1d94b72 Whitelist commits signed with Pieter's now-revoked key (Matt Corallo)
27252b7 Fix pre-push-hook regexes (Matt Corallo)
4252cd0 Update to my new key (Pieter Wuille)
ab1f560 Support -checkmempool=N, which runs checks on average once every N transactions (Pieter Wuille)
214de7e [Trivial] ensure minimal header conventions (Philip Kaufmann)
ad5aae1 constify missing catch cases (Philip Kaufmann)
Reduce the default limits on maximum number of transactions and the cumulative size of those transactions in both ancestor and descendant packages to 25 txs and 101kb total size.
* Introduce new constant MIN_CHANGE and use it instead of the
hardcoded "CENT"
* Add test case for MIN_CHANGE
* Introduce new constant for -mintxfee default:
DEFAULT_TRANSACTION_MINFEE = 1000
Also update doc/translation_strings_policy.md
3e187f2 Fix BIP65 p2p test (Suhas Daftuar)
040c0ea Init: Cleanup error and warning strings (MarcoFalke)
6782f58 [trivial] Latest config.guess (MarcoFalke)
bf68191 [trivial] rpcnet: fix typo (MarcoFalke)
95f4291 [trivial] Rewrite help text for feature enabled by default (MarcoFalke)
a83f3c2 Add explicit shared_ptr constructor due to C++11 error (Bob McElrath)
0be387a unittest: fix test for null tx input (Daniel Kraft)
Also:
* Preserve white space
* Make fixed font as large as default font
This makes the behavior more consistent with key objects and will
reject some corrupted pubkeys (e.g. zero length).
-CheckBlockIndex
-DisconnectTip
-GetTransaction
-InvalidateBlock
-ProcessGetData
-ReadBlockFromDisk
e9e6163 Make -checkmempool=1 not fail through int32 overflow (Pieter Wuille)
30d9662 Reject invalid pubkeys when reading ckey items from the wallet. (Gregory Maxwell)
c939792 Add BIP65 CHECKLOCKTIMEVERIFY to release notes (Peter Todd)
Also update transifex slug for new version.
This reverts commit dea8d21fc63e9f442299c97010e4740558f4f037.
This reverts commit 9d55050773d57c0e12005e524f2e54d9e622c6e2.
As noted by Luke-Jr, under some conditions this will accept transactions which are invalid by the network
rules. This happens when the current block time is head of the median time past and a transaction's
locktime is in the middle.
This could be addressed by changing the rule to MAX(this_block_time, MTP+offset) but this solution and
the particular offset used deserve some consideration.
This file is dynamically generated by configure based on the platform,
it doesn't belong in the distribution archive.
Fixes #6929.
7497e80 tests: Initialize networking on windows (Wladimir J. van der Laan)
40cd32e Revert "Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations" (Gregory Maxwell)
8537ecd Revert "Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints" (Gregory Maxwell)
When processing a new transaction, in addition to spending the Coins of its txin's it creates a new Coins for its outputs. The existing ModifyCoins function will first make sure this Coins does not already exist. It can not exist due to BIP 30, but because of that the lookup can't be cached and always has to go to the database. Since we are creating the coins to match the new tx anyway, there is no point in checking if they exist first anyway. However this should not be used for coinbase tx's in order to preserve the historical behavior of overwriting the two existing duplicate tx pairs.
ff2a2af build: don't distribute tests_config.py (Wladimir J. van der Laan)
Revert "Revert "Add rules--presently disabled--for using GetMedianTimePast as endpoint for lock-time calculations""
This reverts commit 40cd32e835092c3158175511da5193193ec54939.
After careful analysis it was determined that the change was, in fact, safe and several people were suffering
momentary confusion about locktime semantics.
This reverts commit 8537ecdfc40181249ec37556015a99cfae4b21fd.
Moves the call Initialize() from init.cpp to CreateWithArguments() and handles the
return value. Moves the call Shutdown() from init.cpp to destructor.
Changes Initialize() and Shutdown() to protected members.
a6efc01 Bugfix: Omit wallet-related options from -help when wallet is disabled (Luke Dashjr)
5f9260f Bugfix: If genproclimit is omitted to RPC setgenerate, don't change it; also show correct default in getmininginfo (Luke Dashjr)
420a82f Bugfix: Describe dblogsize option correctly (it refers to the wallet database, not memory pool) (Luke Dashjr)
caa3d42 Bugfix: RPC: blockchain: Display correct defaults in help for verifychain method (Luke Dashjr)
- Add package instructions for Ubuntu 15.10
- Clarify BerkeleyDB/wallet situation for unix
- Add basic build instructions for Windows (closes #1401)
35bb381 build: Improve build instructions (Wladimir J. van der Laan)
de0499d Fix ZMQ Notification initialization and shutdown (João Barbosa)
6342a48 Init: Use DEFAULT_TRANSACTION_MINFEE in help message (MarcoFalke)
a9c73a1 [wallet] Add comments for doxygen (MarcoFalke)
6b0e622 [wallet] Refactor to use new MIN_CHANGE (MarcoFalke)
268b79e [qt] rpcconsole: Scale monospace font to 95% (MarcoFalke)
28313b8 [qt] Use fixed pitch font for the rpc console (MarcoFalke)
As a side effect, the qt user will see "test" instead of "testnet"
If both Qt4 and Qt5 development headers are installed, use Qt5. Building
against Qt5 should be encouraged as that is where active development
happens.
dbacc69 build: If both Qt4 and Qt5 are installed, use Qt5 (Wladimir J. van der Laan)
The labels for Sent & Received data in the "Peers" debug panel should not be defined as "Bytes" because the units (B, KB, MB) appear after the number. I decided to simply use "Sent" and "Received" (rather than "Data Sent" and "Data Received") because we already have translations for the former:
https://www.transifex.com/bitcoin/bitcoin/viewstrings/#ja/qt-translation-011x/47533089?q=sent
https://www.transifex.com/bitcoin/bitcoin/viewstrings/#ja/qt-translation-011x/47533089?q=received
Demo of changes:
Current UI:
Bytes Sent 12 KB
Bytes Received 26 MB
With this pull request:
Sent 12 KB
Received 26 MB
20ca81f Merge pull request #9
7aa105e leveldb: Win32WritableFile without memory mapping
git-subtree-dir: src/leveldb
git-subtree-split: 20ca81f08fb7fa108923a091668e447dcf5c6b9d
Previously, the undo weren't being flushed during a reindex because
fKnown was set to true in FindBlockPos. That is the correct behaviour
for block files as they aren't being touched, but undo files are
touched.
This changes the behaviour to always flush when switching to a new file
(even for block files, though that isn't really necessary).
fb9857b Squashed 'src/leveldb/' changes from 7d41e6f..20ca81f (Pieter Wuille)
53238ff Clarify what minrelaytxfee does (MarcoFalke)
abd8b76 [qt] Properly display required fee instead of minTxFee (MarcoFalke)
d1c3762 Revert "Revert "Enable policy enforcing GetMedianTimePast as the end point of lock-time constraints"" (Gregory Maxwell)
e4e5334 Restore MedianTimePast for locktime. (Gregory Maxwell)
22e7807 Always flush block and undo when switching to new file (Pieter Wuille)
e167af2 [doc] Remove excessive white space (MarcoFalke)
e0eeb67 [trivial] clang-format: Set AlignAfterOpenBracket: false (MarcoFalke)
0af8fe4 devtools: Update README.md (MarcoFalke)
This commit is signed.
- There is no libboost-base-dev, no idea how I ended up with this
- Without that, installing separate boost packages works fine on both
Ubuntu 14.04 and Debian 7 (tested on VMs), this did not use to be
the case, AFAIK.
- Add a missing 'sudo' for consistency
- Need `bsdmainutils` for `hexdump` (for the tests)
Fix a null pointer dereference in validateaddress with -disablewallet. Also add a regression testcase.
2980a18 Fix crash in validateaddress with -disablewallet (Wladimir J. van der Laan)
6dd3a44 translations: Don't translate markdown or force English grammar (MarcoFalke)
c53d48a BIP70: Chainparams: DRY: Make qt/guiutil.cpp fit BIP70 chain name strings (Jorge Timón)
Process `getheaders` messages from whitelisted peers even if we are in
initial block download. Whitelisted peers can always use a node as a
block source.
Also log a debug message when the request is ignored, for
troubleshooting.
Fixes #6971.
9ea7762 Use Pieter's signing subkey instead of his primary key (Matt Corallo)
* Don't allow off-by-one or more
* Make clear dust is coupled with minRelayTxFee
* Check rounding for odd values
This allows for fPIE to be used selectively.
But only if qt was built with reduced relocations.
87cbdb8 Globals: Explicit Consensus::Params arg for main: (Jorge Timón)
fd55571 wallet: Expose GUI labels in RPC (Luke Dashjr)
e20d924 [trivial] init: Use defaults MIN_RELAY_TX_FEE & TRANSACTION_MAXFEE (MarcoFalke)
536766c [trivial] New DEFAULT_MIN_RELAY_TX_FEE = 1000 (MarcoFalke)
5f46a7d transaction_tests: Be more strict checking dust (MarcoFalke)
7ca73dc Improving labels for Sent / Received "Bytes" (Jonathan Cross)
Starting with Tor version 0.2.7.1 it is possible, through Tor's control socket
API, to create and destroy 'ephemeral' hidden services programmatically.
https://stem.torproject.org/api/control.html#stem.control.Controller.create_ephemeral_hidden_service
This means that if Tor is running (and proper authorization is available),
bitcoin automatically creates a hidden service to listen on, without user
manual configuration. This will positively affect the number of available
.onion nodes.
- When the node is started, connect to Tor through control socket
- Send `ADD_ONION` command
- First time:
- Make it create a hidden service key
- Save the key in the data directory for later usage
- Make it redirect port 8333 to the local port 8333 (or whatever port we're listening on).
- Keep control socket connection open for as long node is running. The hidden service will
(by default) automatically go away when the connection is closed.
77f1f59 Benchmark sanity checks and fork checks in ConnectBlock (Matt Corallo)
..and at the same time prevent AcceptBlockHeader() from calling global function Params()
7791395 [gitian] Use vm-builder_0.12.4+bzr494 on Debian (Michael)
7267843 Globals: Make AcceptBlockHeader static (Fix #6163) (Jorge Timón)
69d0513 build: Use fPIC rather than fPIE for qt objects. (Cory Fields)
17c4d9d build: Split hardening/fPIE options out (Cory Fields)
-ProcessNewBlock
-TestBlockValidity
-BitcoinMiner
-CreateNewBlock
-GenerateBitcoins
-ProcessBlockFound
0817bf7 [doc] Fix FIXME for libblkmaker in release-notes.md (MarcoFalke)
42bae94 [doc] Improve lanaguge in reducetraffic.md (fanquake)
6a776fa [doc] add documentation how to reduce traffic (Jonas Schnelli)
40b77d4 Always allow getheaders from whitelisted peers (Wladimir J. van der Laan)
7085728 doc: there is no libboost-base-dev, add missing sudo (Wladimir J. van der Laan)
Thanks to @MarcoFalke @dexX7 @laanwj for review.
Previous text could be interpreted as the the _additional_ fee paid by
the result on top of the fee the original version paid, rather than the
correct interpretation: the absolute fee the resulting tx pays.
b5cbd39 Add basic coverage reporting for RPC tests (James O'Beirne)
33c90cf Make skipping BIP30 check chain agnostic (Alex Morcos)
06d81ad Skip BIP30 check after BIP34 activation (Alex Morcos)
We've switched to Travis CI a long time ago.
69d373f Don't wipe the sigcache in TestBlockValidity (Pieter Wuille)
0b9e9dc Evict sigcache entries that are seen in a block (Pieter Wuille)
830e3f3 Make sigcache faster and more efficient (Pieter Wuille)
- Force AUTHCOOKIE size to be 32 bytes: This provides protection against
an attack where a process pretends to be Tor and uses the cookie
authentication method to nab arbitrary files such as the
wallet
- torcontrol logging
- fix cookie auth
- add HASHEDPASSWORD auth, fix fd leak when fwrite() fails
- better error reporting when cookie file is not ok
- better init/shutdown flow
- stop advertizing service when disconnected from tor control port
- COOKIE->SAFECOOKIE auth
- add new data directory files for 0.12 to doc/files.md
- mention torcontrol in doc/tor.md
58ef0ff doc: update docs for Tor listening (Wladimir J. van der Laan)
68ccdc4 doc: Mention Tor listening in release notes (Wladimir J. van der Laan)
09c1ae1 torcontrol improvements and fixes (Wladimir J. van der Laan)
2f796e5 Better error message if Tor version too old (Peter Todd)
8f4e67f net: Automatically create hidden service, listen on Tor (Wladimir J. van der Laan)
* log: nMaxOutboundLimit is in bytes
* log: Hide misleading -maxuploadtarget=0 warning
* qa : Minor cleanup to maxuploadtarget rpc tests
* net: Use DEFAULT_MAX_UPLOAD_TARGET = 0
01afa80 doc: Remove mention of pulltester from README.md (Wladimir J. van der Laan)
This continues/fixes #6719.
`event_base_loopbreak` was not doing what I expected it to, at least in
libevent 2.0.21.
What I expected was that it sets a timeout, given that no other pending
events it would exit in N seconds. However, what it does was delay the
event loop exit with 10 seconds, even if nothing is pending.
Solve it in a different way: give the event loop thread time to exit
out of itself, and if it doesn't, send loopbreak.
This speeds up the RPC tests a lot, each exit incurred a 10 second
overhead, with this change there should be no shutdown overhead in the
common case and up to two seconds if the event loop is blocking.
As a bonus this breaks dependency on boost::thread_group, as the HTTP
server minds its own offspring.
9c3ee3b [doc] Add -maxuploadtarget release notes (MarcoFalke)
b27e81f [net] Cleanup maxuploadtarget (MarcoFalke)
48edf57 Update key.cpp to new secp256k1 API (Pieter Wuille)
1d84107 Squashed 'src/secp256k1/' changes from 22f60a6..2bfb82b (Pieter Wuille)
a78e6ea Fix bug in mempool_tests unit test (Alex Morcos)
a264c32 http: speed up shutdown (Wladimir J. van der Laan)
Useful now that BIP113 is enforced for transactions entering the
mempool. Was previously only (indirectly) available by calling
getblocktemplate, a relatively expensive RPC call.
Previously if you called fundrawtransaction and set includeWatching to
false it'd act as through you set it to true.
Previously this case failed deep in Cwallet::CreateTransaction() with
the error message "Transaction amounts must be positive"
Completely static RPC call that doesn't change or even look at mutable
state anywhere.
10953a7 Better error message for fundrawtransaction w/ empty vout (Peter Todd)
61e1eb2 Actually use includeWatching value in fundrawtransaction (Peter Todd)
b3ae384 Remove LOCK(cs_main) from decodescript (Peter Todd)
a5bc8de add jonasschnellis key to git-verify-commits trusted-keys (Jonas Schnelli)
160c72a update jonasschnellis gpg key (Jonas Schnelli)
e495ed5 add documentation for exluding whitelistes peer from maxuploadtarget (Jonas Schnelli)
5760749 [docs] rename reducetraffic.md to reduce-traffic.md (Jonas Schnelli)
d61fcff don't enforce maxuploadtargets disconnect for whitelisted peers (Jonas Schnelli)
bbf49da Fix comment for blocksonly parameter interactions (Patick Strateman)
6a4982f Fix fRelayTxs comment (Patick Strateman)
59441a0 Display DEFAULT_WHITELISTALWAYSRELAY in help text (Patick Strateman)
71a2683 Use DEFAULT_BLOCKSONLY and DEFAULT_WHITELISTALWAYSRELAY constants (Patick Strateman)
762b13b Add help text for blocksonly and whitelistalwaysrelay (Patick Strateman)
3a96497 Add whitelistalwaysrelay option (Patick Strateman)
420fa81 Do not process tx inv's in blocksonly mode (Patick Strateman)
4044f07 Add blocksonly mode (Patick Strateman)
773ae46 [Qt] add shortcurts for debug-/console-window (Jonas Schnelli)
9bd3f03 Clarify 'fee' field in fundrawtransaction help text (Peter Todd)
This uses _EVENT_LOG_WARN instead, which appears to be defined in the
old versions of libevent that I have on some systems.
aee22bf Avoid a compile error on hosts with libevent too old for EVENT_LOG_WARN. (Gregory Maxwell)
6e18268 Switch to libsecp256k1-based validation for ECDSA (Pieter Wuille)
Forgot to add these.
Also add a short description for each required library.
Remove sed-based qt PIDLIST_ABSOLUTE workaround, replace by a patch that
works for both old (such as used by Travis and Ubuntu Precise) and new
mingw (Ubuntu Trusty).
4d29032 Fixed integer comparison warning. (Eric Lombrozo)
f6d9d5e add (max)uploadtarget infos to getnettotals RPC help (Jonas Schnelli)
6bc9e40 Chainparams: Explicit CChainParams arg for miner: (Jorge Timón)
598e494 Chainparams: Explicit CChainParams arg for main (pre miner): (Jorge Timón)
This is only for unit tests.
a6d5a65 [trivial] contrib: Fix `echo`s in verify.sh (MarcoFalke)
141c44e [contrib] Update versionprefix to "bitcoin-core" in verify.sh (MarcoFalke)
+ Update with new -help message
On OS X users will see 'Bitcoin Core' after opening the DMG bundle.
e587bc3 Implement helper class for CTxMemPoolEntry constructor (Alex Morcos)
e855b01 Fix debug log message for block files (Alex Morcos)
013a364 [contrib] Delete test-patches (MarcoFalke)
513686d [qt] Use maxTxFee instead of 10000000 (MarcoFalke)
1cf3dd8 Add unit test for UpdateCoins (Alex Morcos)
03c8282 Make CCoinsViewTest behave like CCoinsViewDB (Alex Morcos)
14470f9 ModifyNewCoins saves database lookups (Alex Morcos)
bd42e6b [doc] Users now see 'Bitcoin Core' in the OSX bundle (Michael Ford)
c5f211b [doc][trivial] Remove miniupnpc build notes build-unix (fanquake)
Add a way to quickly copy transaction hex.
Primarily useful when manually submitting transactions,
e.g. `-walletbroadcast=0` is set.
b4f3e9c ui: Add "Copy raw transaction data" to transaction list context menu (Wladimir J. van der Laan)
2cecb24 doc: change suite to trusty in gitian-building.md (Wladimir J. van der Laan)
957c0fd gitian: make windows build deterministic (Wladimir J. van der Laan)
2e31d74 gitian: use trusty for building (Wladimir J. van der Laan)
0b416c6 depends: qt PIDLIST_ABSOLUTE patch (Wladimir J. van der Laan)
9f251b7 devtools: add libraries for bitcoin-qt to symbol check (Wladimir J. van der Laan)
2798e0b add powerpc build support for openssl lib (daniel)
33b7f83 [qa] travis: cover *receivedby* rpcs (MarcoFalke)
c197798 [Qt] simple mempool info in debug window (Jonas Schnelli)
Previously in blocks only mode all inv messages where type!=MSG_BLOCK would be
rejected without regard for whitelisting or whitelistalwaysrelay.
As such whitelisted peers would never send the transaction (which would be
processed).
Previously unsolicited transactions would be processed as normal.
Huge performance improvement (450%) for zapwallettxes
3e7c891 Optimisation: Store transaction list order in memory rather than compute it every need (Luke Dashjr)
6531f17 Add mediantime field to getblock and getblockheader (Peter Todd)
7259769 Document new mediantime field in getblockchaininfo (Peter Todd)
c277a63 Clarify nLockTime-by-time comment in CheckFinalTx() (Peter Todd)
748321e Add mediantime field to getblockchaininfo RPC call (Peter Todd)
80ae230 Improve log messages for blocks only violations. (Patick Strateman)
08843ed Add relaytxes status to getpeerinfo (Peter Todd)
d8aaa51 Bail early in processing transactions in blocks only mode. (Patick Strateman)
3587f6a Fix relay mechanism for whitelisted peers under blocks only mode. (Patick Strateman)
c800c95 Remove unmaintained example test script_test.py (Suhas Daftuar)
e16ee1c [qa] Extend README.md (MarcoFalke)
cc97574 [qa] Split README.md to /qa and /qa/rpc-tests (MarcoFalke)
utACK I don't like the subtree commit noise just to update a single line in a single file, but that's a less pretty side of subtrees that we have to accept, I guess.
subtree commit noise
Only one commit overhead at most, so negligible compared to what was already saved. ;)
combine changes
Sure. Is there an eta of the release?
utACK
This is more urgent to fix, I think.
utACK. Build system fix, should go in sooner rather than later. "Pardon our dust."
utACK