Univalue: Pull subtree #7147

pull MarcoFalke wants to merge 9722 commits into bitcoin:master from MarcoFalke:MarcoFalke-2015-univalueSync changing 1280 files +344728 −196
  1. MarcoFalke commented at 6:17 PM on December 1, 2015: member

    @sipa @gmaxwell is this desired?

    Closes #7102

  2. [Qt] add startup option to reset Qt settings ae98388b22
  3. Fix bug in mempool_tests unit test a78e6eaf5c
  4. Merge pull request #6983
    48edf57 Update key.cpp to new secp256k1 API (Pieter Wuille)
    1d84107 Squashed 'src/secp256k1/' changes from 22f60a6..2bfb82b (Pieter Wuille)
    4f09b77c7f
  5. Prevector type 114b5812f6
  6. Merge pull request #7007
    a78e6ea Fix bug in mempool_tests unit test (Alex Morcos)
    d3565604e3
  7. Merge pull request #6990
    a264c32 http: speed up shutdown (Wladimir J. van der Laan)
    dbd2c135dd
  8. don't enforce maxuploadtargets disconnect for whitelisted peers d61fcff071
  9. [docs] rename reducetraffic.md to reduce-traffic.md 5760749ed8
  10. Add mediantime field to getblockchaininfo RPC call
    Useful now that BIP113 is enforced for transactions entering the
    mempool. Was previously only (indirectly) available by calling
    getblocktemplate, a relatively expensive RPC call.
    748321eb5b
  11. Actually use includeWatching value in fundrawtransaction
    Previously if you called fundrawtransaction and set includeWatching to
    false it'd act as through you set it to true.
    61e1eb2e1c
  12. Better error message for fundrawtransaction w/ empty vout
    Previously this case failed deep in Cwallet::CreateTransaction() with
    the error message "Transaction amounts must be positive"
    10953a7d32
  13. Clarify nLockTime-by-time comment in CheckFinalTx() c277a63ed7
  14. Document new mediantime field in getblockchaininfo 7259769d7f
  15. Add mediantime field to getblock and getblockheader 6531f17a78
  16. Remove LOCK(cs_main) from decodescript
    Completely static RPC call that doesn't change or even look at mutable
    state anywhere.
    b3ae384a8d
  17. Merge pull request #7010
    10953a7 Better error message for fundrawtransaction w/ empty vout (Peter Todd)
    61e1eb2 Actually use includeWatching value in fundrawtransaction (Peter Todd)
    e0a5ef8427
  18. Merge pull request #7013
    b3ae384 Remove LOCK(cs_main) from decodescript (Peter Todd)
    36baa9f475
  19. Merge pull request #7004
    a5bc8de add jonasschnellis key to git-verify-commits trusted-keys (Jonas Schnelli)
    160c72a update jonasschnellis gpg key (Jonas Schnelli)
    44ac42e50d
  20. add documentation for exluding whitelistes peer from maxuploadtarget e495ed5f08
  21. Merge pull request #6984
    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)
    9ffc687288
  22. Add blocksonly mode 4044f07d1c
  23. Do not process tx inv's in blocksonly mode 420fa8143a
  24. Add whitelistalwaysrelay option 3a964973fe
  25. Add help text for blocksonly and whitelistalwaysrelay 762b13b4d8
  26. Use DEFAULT_BLOCKSONLY and DEFAULT_WHITELISTALWAYSRELAY constants 71a2683f4b
  27. Display DEFAULT_WHITELISTALWAYSRELAY in help text 59441a0445
  28. Fix fRelayTxs comment 6a4982fb83
  29. Fix comment for blocksonly parameter interactions bbf49da408
  30. Merge pull request #6993
    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)
    b632145ede
  31. [qa] travis: cover *receivedby* rpcs 33b7f83c59
  32. Switch to libsecp256k1-based validation for ECDSA 6e18268616
  33. Fixed integer comparison warning. 4d29032a64
  34. Merge pull request #7000
    773ae46 [Qt] add shortcurts for debug-/console-window (Jonas Schnelli)
    814697c556
  35. Merge pull request #6991
    9bd3f03 Clarify 'fee' field in fundrawtransaction help text (Peter Todd)
    6876a78b86
  36. Avoid a compile error on hosts with libevent too old for EVENT_LOG_WARN.
    This uses _EVENT_LOG_WARN instead, which appears to be defined in the
     old versions of libevent that I have on some systems.
    aee22bf288
  37. [Qt] refactor and optimize proxy settings behavior d16d1b72d1
  38. [qa] keypool: Fix white space to prepare transition to test framework c6973ca03b
  39. [qa] keypool: DRY: Use test framework 4ea1790553
  40. Merge pull request #7016
    aee22bf Avoid a compile error on hosts with libevent too old for EVENT_LOG_WARN. (Gregory Maxwell)
    dafefb7924
  41. [contrib] Update versionprefix to "bitcoin-core" in verify.sh 141c44ed65
  42. [trivial] contrib: Fix `echo`s in verify.sh a6d5a6502a
  43. Merge pull request #6954
    6e18268 Switch to libsecp256k1-based validation for ECDSA (Pieter Wuille)
    e54ebbf600
  44. Remove unmaintained example test script_test.py c800c95997
  45. devtools: add libraries for bitcoin-qt to symbol check
    Forgot to add these.
    Also add a short description for each required library.
    9f251b7a9d
  46. depends: qt PIDLIST_ABSOLUTE patch
    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).
    0b416c6e9c
  47. gitian: use trusty for building 2e31d74b71
  48. Add smart fee estimation functions
    These are more useful fee and priority estimation functions. If there is no fee/pri high enough for the target you are aiming for, it will give you the estimate for the lowest target that you can reliably obtain.  This is better than defaulting to the minimum.  It will also pass back the target for which it returned an answer.
    22eca7da22
  49. Change wallet and GUI code to use new smart fee estimation calls. 4fe28236c0
  50. Increase success threshold for fee estimation to 95%
    This provides more conservative estimates and reacts more quickly to a backlog.
    Unfortunately the unit test for fee estimation depends on the success threshold (and the decay) chosen; also modify the unit test for the new default success thresholds.
    f22ac4a22c
  51. EstimateSmart functions consider mempool min fee 6303051470
  52. add estimateSmartFee to the unit test e93a236d7a
  53. Expose RPC calls for estimatesmart functions
    Also add testing for estimatesmartfee in smartfees.py
    56106a3300
  54. Merge pull request #7023
    4d29032 Fixed integer comparison warning. (Eric Lombrozo)
    0a547d2d55
  55. Merge pull request #6999
    f6d9d5e add (max)uploadtarget infos to getnettotals RPC help (Jonas Schnelli)
    972bf9c529
  56. Merge pull request #6986
    6bc9e40 Chainparams: Explicit CChainParams arg for miner: (Jorge Timón)
    598e494 Chainparams: Explicit CChainParams arg for main (pre miner): (Jorge Timón)
    87ee0e2dbc
  57. Implement helper class for CTxMemPoolEntry constructor
    This is only for unit tests.
    e587bc3fd9
  58. Merge pull request #7026
    a6d5a65 [trivial] contrib: Fix `echo`s in verify.sh (MarcoFalke)
    141c44e [contrib] Update versionprefix to "bitcoin-core" in verify.sh (MarcoFalke)
    eac53ec992
  59. [qa] Split README.md to /qa and /qa/rpc-tests
    + Update with new -help message
    cc975745d5
  60. [doc] Users now see 'Bitcoin Core' in the OSX bundle
    On OS X users will see 'Bitcoin Core' after opening the DMG bundle.
    bd42e6b6ec
  61. [doc][trivial] Remove source forge from Debian watch. 2fcb84907d
  62. [doc][trivial] Update Debian control description
    Update the description in debian/control to match that description in
    the main bitcoin README.md
    70899d70b8
  63. Merge pull request #7020
    e587bc3 Implement helper class for CTxMemPoolEntry constructor (Alex Morcos)
    e8df8a5077
  64. Bugfix: Use unique autostart filenames on Linux for testnet/regtest 2aa49ce9fe
  65. [contrib] Delete test-patches 013a364138
  66. Fix debug log message for block files e855b0152f
  67. Merge pull request #7050
    e855b01 Fix debug log message for block files (Alex Morcos)
    f3ea48ad8b
  68. Merge pull request #7030
    013a364 [contrib] Delete test-patches (MarcoFalke)
    7f8e90da33
  69. [qa] Extend README.md e16ee1cd1e
  70. [Qt] don't allow to store invalid proxy ports 2a8e8c2e37
  71. Merge pull request #6951
    513686d [qt] Use maxTxFee instead of 10000000 (MarcoFalke)
    03403d8c0f
  72. Merge pull request #6932
    1cf3dd8 Add unit test for UpdateCoins (Alex Morcos)
    03c8282 Make CCoinsViewTest behave like CCoinsViewDB (Alex Morcos)
    14470f9 ModifyNewCoins saves database lookups (Alex Morcos)
    73fa5e6043
  73. Alter assumptions in CCoinsViewCache::BatchWrite
    Previously it would break if you flushed a parent cache while there was a child cache referring to it.  This change will allow the flushing of parent caches.
    072e2f8644
  74. add UI help for -resetguisettings f71bfefcb0
  75. [doc][trivial] Remove miniupnpc build notes build-unix c5f211bbd0
  76. init: amend ZMQ flag names cdcd816a1b
  77. init: add zmq to debug categories 14075b189d
  78. zmq: prepend zmq to debug messages ffacd27def
  79. add powerpc build support for openssl lib 2798e0b0d2
  80. Merge pull request #7041
    bd42e6b [doc] Users now see 'Bitcoin Core' in the OSX bundle (Michael Ford)
    15765df352
  81. Merge pull request #7048
    c5f211b [doc][trivial] Remove miniupnpc build notes build-unix (fanquake)
    f8e87d74c9
  82. ui: Add "Copy raw transaction data" to transaction list context menu
    Add a way to quickly copy transaction hex.
    
    Primarily useful when manually submitting transactions,
    e.g. `-walletbroadcast=0` is set.
    b4f3e9c09e
  83. [qa] python-bitcoinrpc is no longer a subtree
    * Only authproxy.py is taken from the python-bitcoinrpc
    a0953cdf07
  84. Merge pull request #7051
    b4f3e9c ui: Add "Copy raw transaction data" to transaction list context menu (Wladimir J. van der Laan)
    a1907772f0
  85. qt: Periodic translations update 52c563710d
  86. gitian: make windows build deterministic 957c0fd7c0
  87. doc: change suite to trusty in gitian-building.md 2cecb24600
  88. Merge pull request #6900
    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)
    c983d6fcb4
  89. Remove default arguments for CTxMemPoolEntry() 5945819717
  90. Modify variable names for entry height and priority 71f1d9fd4a
  91. Change GetPriority calculation.
    Compute the value of inputs that already are in the chain at time of mempool entry and only increase priority due to aging for those inputs.  This effectively changes the CTxMemPoolEntry's GetPriority calculation from an upper bound to a lower bound.
    c0353064dd
  92. [doc] Update OS X build notes for new qt5 configure
    You no longer need to explicitly pass qt5 to configure, as it will now choose qt5 over qt4 if both are installed.
    
    [skip-ci]
    b171c69c60
  93. Merge pull request #7059
    2798e0b add powerpc build support for openssl lib (daniel)
    a1bfca8052
  94. [Qt] simple mempool info in debug window c197798d1b
  95. Merge pull request #7019
    33b7f83 [qa] travis: cover *receivedby* rpcs (MarcoFalke)
    07b770caf3
  96. http: add Boost 1.49 compatibility
    `try_join_for` was introduced in Boost 1.50:
    http://www.boost.org/doc/libs/1_50_0/doc/html/thread/thread_management.html#thread.thread_management.thread.try_join_for
    
    1.49 has `timed_join`, one can accomplish the same with:
    http://www.boost.org/doc/libs/1_49_0/doc/html/thread/thread_management.html#thread.thread_management.thread.timed_join
    
    However, `timed_join` was deprecated in 1.50. So a conditional is
    necessary.
    
    This solution was tested in #7031.
    3522f49f5a
  97. Add missing "blocktime" description to listtransactions help, fix formatting. 5c2fd38d05
  98. Merge pull request #6979
    c197798 [Qt] simple mempool info in debug window (Jonas Schnelli)
    776848acef
  99. Fix usage of local python-bitcoinlib
    Previously was using the system-wide python-bitcoinlib, if it existed,
    rather than the local copy that you check out in the README.
    63b5840257
  100. Fix relay mechanism for whitelisted peers under blocks only mode.
    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).
    3587f6a024
  101. Bail early in processing transactions in blocks only mode.
    Previously unsolicited transactions would be processed as normal.
    d8aaa51bec
  102. Add relaytxes status to getpeerinfo 08843ed998
  103. Optimisation: Store transaction list order in memory rather than compute it every need
    Huge performance improvement (450%) for zapwallettxes
    3e7c89196c
  104. Merge pull request #6851
    3e7c891 Optimisation: Store transaction list order in memory rather than compute it every need (Luke Dashjr)
    616d61b20d
  105. Merge pull request #7011
    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)
    31de2414c6
  106. Improve log messages for blocks only violations. 80ae230a52
  107. Move time data log print to 'net' category to reduce log noise 4846543ac5
  108. Merge pull request #7046
    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)
    c322652b71
  109. Merge pull request #7029
    c800c95 Remove unmaintained example test script_test.py (Suhas Daftuar)
    9cdd407ca5
  110. Merge pull request #7028
    e16ee1c [qa] Extend README.md (MarcoFalke)
    cc97574 [qa] Split README.md to /qa and /qa/rpc-tests (MarcoFalke)
    0b0fc179ab
  111. prevent peer flooding request queue for an inv
    mapAlreadyAskedFor does not keep track of which peer has a request queued for a
    particular tx. As a result, a peer can blind a node to a tx indefinitely by
    sending many invs for the same tx, and then never replying to getdatas for it.
    Each inv received will be placed 2 minutes farther back in mapAlreadyAskedFor,
    so a short message containing 10 invs would render that tx unavailable for 20
    minutes.
    
    This is fixed by disallowing a peer from having more than one entry for a
    particular inv in mapAlreadyAskedFor at a time.
    5029698186
  112. Limit setAskFor and retire requested entries only when a getdata returns.
    The setAskFor duplicate elimination was too eager and removed entries
     when we still had no getdata response, allowing the peer to keep
     INVing and not responding.
    ebb25f4c23
  113. Globals: Remove a bunch of Params() calls from main.cpp:
    1) Chainparams: Explicit CChainParams arg for main:
    
    -AcceptBlock
    -AcceptBlockHeader
    -ActivateBestChain
    -ConnectTip
    -InitBlockIndex
    -LoadExternalBlockFile
    -VerifyDB parametric constructor
    
    2) Also pickup more Params()\. in main.cpp
    
    3) Pass nPruneAfterHeight explicitly to new FindFilesToPrune() in main.cpp
    2e29e7e247
  114. Merge pull request #7065
    3522f49 http: add Boost 1.49 compatibility (Wladimir J. van der Laan)
    f91e29fd4d
  115. OpenSSL 1.1.0: Fix text variant of the version number faf12bc283
  116. Squashed 'src/secp256k1/' changes from 2bfb82b..6c527ec
    6c527ec Merge pull request #357
    445f7f1 Fix for Windows compile issue
    
    git-subtree-dir: src/secp256k1
    git-subtree-split: 6c527eceee7f5105c33c98dfae24ffeffd71f7cf
    5ad5463093
  117. Merge commit '5ad54630935d1f340666de7bc9ffef9b8a1df296' into HEAD fa63e49b35
  118. Merge pull request #7052
    a0953cd [qa] python-bitcoinrpc is no longer a subtree (MarcoFalke)
    ed34e0577e
  119. Merge pull request #7042
    70899d7 [doc][trivial] Update Debian control description (fanquake)
    2fcb849 [doc][trivial] Remove source forge from Debian watch. (fanquake)
    b1fcdec687
  120. Merge pull request #7045
    2aa49ce Bugfix: Use unique autostart filenames on Linux for testnet/regtest (Luke Dashjr)
    72dccfc29d
  121. Move bloom filter filtering logic outside of command "switch" (giant if/else).
    Moving this logic outside of the "switch" makes it far simpler to
    enable the forced disconnect by a parameter.
    b3caa9b7fa
  122. Merge pull request #7066
    5c2fd38 Add missing "blocktime" description to listtransactions help, fix formatting. (Pavel Janík)
    02a0f348c2
  123. Add enforcenodebloom option.
    Previously peers which implement a protocol version less than NO_BLOOM_VERSION
    would not be disconnected for sending a filter command, regardless of the
    peerbloomfilter option.
    
    Many node operators do not wish to provide expensive bloom filtering for SPV
    clients, previously they had to cherry pick the commit which enabled the
    disconnect logic.
    
    The default should remain false until a sufficient percent of SPV clients
    have updated.
    0f4dc53fd6
  124. Document both the peerbloomfilters and enforcenodebloom options. 9cf668844e
  125. [trivial] Fix -maxmempool InitError fa472f330f
  126. Pass reference to estimateSmartFee and cleanup whitespace e30443244a
  127. Merge pull request #7075
    4846543 Move time data log print to 'net' category to reduce log noise (tulip)
    b19fe277dd
  128. build: Set osx permissions in the dmg to make Gatekeeper happy 392d3c5846
  129. Assert now > 0 in GetTime GetTimeMillis GetTimeMicros
    Previously all of these functions could return negative values (for different
    readons).  Large portions of the codebase currently assume that these
    functions return positive values.
    1bb289fe1b
  130. Merge pull request #7006
    f71bfef add UI help for -resetguisettings (Jonas Schnelli)
    ae98388 [Qt] add startup option to reset Qt settings (Jonas Schnelli)
    26af1ac7cb
  131. uint256::GetCheapHash bigendian compatibility c434940e83
  132. Merge pull request #7092
    392d3c5 build: Set osx permissions in the dmg to make Gatekeeper happy (Cory Fields)
    348b281f8a
  133. Merge pull request #7088
    5ad5463 Squashed 'src/secp256k1/' changes from 2bfb82b..6c527ec (MarcoFalke)
    2b2ddc558e
  134. Replace scriptnum_test's normative ScriptNum implementation
    Compare against the scriptnum from Bitcoin Core 0.10 instead of OpenSSL.
    Closes #7086.
    4ec3561eb3
  135. Merge pull request #7087
    9cf6688 Document both the peerbloomfilters and enforcenodebloom options. (Patick Strateman)
    0f4dc53 Add enforcenodebloom option. (Patick Strateman)
    b3caa9b Move bloom filter filtering logic outside of command "switch" (giant if/else). (Patick Strateman)
    be281d8a83
  136. Connect to Tor hidden services by default
    Adds 127.0.0.1:9050 for the .onion proxy if we can succesfully connect
    to the control port.
    
    Natural followup to creating hidden services automatically.
    cde857f2d9
  137. Merge pull request #7069
    fa472f3 [trivial] Fix -maxmempool InitError (MarcoFalke)
    f8a8e27a6a
  138. Fix and improve relay from whitelisted peers
    This makes sure that retransmits by a whitelisted peer also actually
    result in a retransmit.
    
    Further, this changes the logic to never relay in case we would assign
    a DoS score, as we expect to get DoS banned ourselves as a result.
    a9f3d3db5c
  139. Merge pull request #7058
    ffacd27 zmq: prepend zmq to debug messages (Daniel Cousens)
    14075b1 init: add zmq to debug categories (Daniel Cousens)
    cdcd816 init: amend ZMQ flag names (Daniel Cousens)
    9a3e1a59df
  140. Merge pull request #5967
    072e2f8 Alter assumptions in CCoinsViewCache::BatchWrite (Alex Morcos)
    05d591839f
  141. Merge pull request #6134
    e304432 Pass reference to estimateSmartFee and cleanup whitespace (Suhas Daftuar)
    56106a3 Expose RPC calls for estimatesmart functions (Alex Morcos)
    e93a236 add estimateSmartFee to the unit test (Alex Morcos)
    6303051 EstimateSmart functions consider mempool min fee (Alex Morcos)
    f22ac4a Increase success threshold for fee estimation to 95% (Alex Morcos)
    4fe2823 Change wallet and GUI code to use new smart fee estimation calls. (Alex Morcos)
    22eca7d Add smart fee estimation functions (Alex Morcos)
    e92377fa7f
  142. Merge pull request #6871
    63b5840 Fix usage of local python-bitcoinlib (Peter Todd)
    16a2f93 Fix incorrect locking of mempool during RBF replacement (Peter Todd)
    97203f5 Port test to rpc-test framework (Suhas Daftuar)
    20367d8 Add test for max replacement limit (Suhas Daftuar)
    73d9040 Improve RBF replacement criteria (Suhas Daftuar)
    b272ecf Reject replacements that add new unconfirmed inputs (Peter Todd)
    fc8c19a Prevent low feerate txs from (directly) replacing high feerate txs (Peter Todd)
    0137e6f Add tests for transaction replacement (Peter Todd)
    5891f87 Add opt-in full-RBF to mempool (Peter Todd)
    0e935865b9
  143. Refactor parameter interaction, call it before AppInit2() 411b05ac95
  144. [QT] Call inits parameter interaction before we create the options model 68354e75e9
  145. Move -blocksonly parameter interaction to the new ParameterInteraction() function df66147613
  146. Initialize logging before we do parameter interaction a46f87f0c1
  147. Merge pull request #7053
    2e29e7e Globals: Remove a bunch of Params() calls from main.cpp: (Jorge Timón)
    5ca149a3db
  148. util: Don't set strMiscWarning on every exception
    Fixes #6809 - run-of-the-mill exceptions should not get into
    strMiscWarning (which is reported by `getinfo`).
    9b63758974
  149. Merge pull request #6780
    a46f87f Initialize logging before we do parameter interaction (Jonas Schnelli)
    df66147 Move -blocksonly parameter interaction to the new ParameterInteraction() function (Jonas Schnelli)
    68354e7 [QT] Call inits parameter interaction before we create the options model (Jonas Schnelli)
    411b05a Refactor parameter interaction, call it before AppInit2() (Jonas Schnelli)
    2a94cd67e8
  150. Merge pull request #7083
    faf12bc OpenSSL 1.1.0: Fix text variant of the version number (MarcoFalke)
    9502b7f634
  151. Merge pull request #7095
    4ec3561 Replace scriptnum_test's normative ScriptNum implementation (Wladimir J. van der Laan)
    d8368a07ba
  152. Merge pull request #7090
    cde857f Connect to Tor hidden services by default (Peter Todd)
    d6454f6cb2
  153. Merge pull request #7114
    9b63758 util: Don't set strMiscWarning on every exception (Wladimir J. van der Laan)
    f3d0fdd392
  154. Merge pull request #7078
    c434940 uint256::GetCheapHash bigendian compatibility (daniel)
    93e0514fd0
  155. Add merkle.{h,cpp}, generic merkle root/branch algorithm ee60e5625b
  156. Switch blocks to a constant-space Merkle root/branch algorithm.
    This switches the Merkle tree logic for blocks to one that runs in constant (small) space.
    The old code is moved to tests, and a new test is added that for various combinations of
    block sizes, transaction positions to compute a branch for, and mutations:
     * Verifies that the old code and new code agree for the Merkle root.
     * Verifies that the old code and new code agree for the Merkle branch.
     * Verifies that the computed Merkle branch is valid.
     * Verifies that mutations don't change the Merkle root.
     * Verifies that mutations are correctly detected.
    eece63fa72
  157. Print correct minimum mempool size in MB a64d7b4e42
  158. Merge pull request #7117
    a64d7b4 Print correct minimum mempool size in MB (paveljanik)
    8284feb3c9
  159. Merge pull request #7003
    b8c06ef doc: Add non-style-related development guidelines (Wladimir J. van der Laan)
    8332457e95
  160. Merge pull request #6942
    e482a7f Fix CCoins serialization documentation (Peter Josling)
    92aa7311d6
  161. [RPC] Add transaction size to JSON output
    This may be useful for blockchain explorers.
    996d3117c7
  162. Constrain constant values to a single location in code b966aa836a
  163. Bugfix: Omit wallet-related options from -help when wallet is not supported 3307bdb333
  164. [trivial] Reuse translation and cleanup DEFAULT_* values
    * DEFAULT_DISABLE_SAFEMODE = false
    * Use DEFAULT_* constants for extern bools
    faf93f37fe
  165. [qt] Move GUI related HelpMessage() part downstream fa41d4c8c6
  166. Merge pull request #6961
    fa41d4c [qt] Move GUI related HelpMessage() part downstream (MarcoFalke)
    faf93f3 [trivial] Reuse translation and cleanup DEFAULT_* values (MarcoFalke)
    3307bdb Bugfix: Omit wallet-related options from -help when wallet is not supported (Luke Dashjr)
    b966aa8 Constrain constant values to a single location in code (Luke Dashjr)
    8d26289c9a
  167. Move blocksonly parameter interaction to InitParameterInteraction() fa4b627269
  168. Merge pull request #6508
    eece63f Switch blocks to a constant-space Merkle root/branch algorithm. (Pieter Wuille)
    ee60e56 Add merkle.{h,cpp}, generic merkle root/branch algorithm (Pieter Wuille)
    61457c29d7
  169. Bugfix: Default -uiplatform is not actually the platform this build was compiled on a6cbc02b6b
  170. Default fPayAtLeastCustomFee to false
    This allows for much finer control of the transaction fees per kilobyte
    as it prevent small transactions using a fee that is more appropriate
    for one that is of a kilobyte.
    
    This also allows controlling the fee per kilobyte over rpc such that:
    
    bitcoin-cli settxfee `bitcoin-cli estimatefee 2`
    
    would make sense, while currently it grossly fails often by a factor of x3
    4b89f01d72
  171. [wallet] Add rpc tests to verify fee calculations fa506c0c9b
  172. Merge pull request #7106
    a9f3d3d Fix and improve relay from whitelisted peers (Pieter Wuille)
    c894fbbb1d
  173. Allow block announcements with headers
    This replaces using inv messages to announce new blocks, when a peer requests
    (via the new "sendheaders" message) that blocks be announced with headers
    instead of inv's.
    
    Since headers-first was introduced, peers send getheaders messages in response
    to an inv, which requires generating a block locator that is large compared to
    the size of the header being requested, and requires an extra round-trip before
    a reorg can be relayed.  Save time by tracking headers that a peer is likely to
    know about, and send a headers chain that would connect to a peer's known
    headers, unless the chain would be too big, in which case we revert to sending
    an inv instead.
    
    Based off of @sipa's commit to announce all blocks in a reorg via inv,
    which has been squashed into this commit.
    
    Rebased-by: Pieter Wuille
    50262d8953
  174. Documentation updates for BIP 130 49fb8e89b7
  175. Merge pull request #7129
    49fb8e8 Documentation updates for BIP 130 (Pieter Wuille)
    50262d8 Allow block announcements with headers (Suhas Daftuar)
    5d5ef3a4cf
  176. Keep track of explicit wallet conflicts instead of using mempool 9ac63d6d30
  177. Added additional config option for multiple RPC users. d52fbf00e3
  178. Trivial: Fix warning introduced by #7053 by casting to uint64_t cb491e7788
  179. NotifyBlockTip signal: switch from hash (uint256) to CBlockIndex*
    - also adds a boolean for indication if the tip update was happening during initial sync
    - emit notification also during initial sync
    012fc91511
  180. [Qt] update block tip (height and date) without locking cs_main, update always (each block) e6d50fcdec
  181. [Qt] reduce cs_main in getVerificationProgress() 947d20b84a
  182. [Qt] call GuessVerificationProgress synchronous during core signal, pass double over UI signal 4082e46603
  183. Merge pull request #7025
    2a8e8c2 [Qt] don't allow to store invalid proxy ports (Jonas Schnelli)
    d16d1b7 [Qt] refactor and optimize proxy settings behavior (Jonas Schnelli)
    c28d3937b0
  184. Merge pull request #7127
    a6cbc02 Bugfix: Default -uiplatform is not actually the platform this build was compiled on (Luke Dashjr)
    fa93174a7c
  185. Merge pull request #7116
    cb491e7 Trivial: Fix warning introduced by #7053 by casting to uint64_t (Jorge Timón)
    74b5ce24c6
  186. Merge pull request #7126
    fa4b627 Move blocksonly parameter interaction to InitParameterInteraction() (MarcoFalke)
    9ebedc1756
  187. Move uiInterface.NotifyBlockTip signal above the core/wallet signal
    - This will keep getbestblockhash more in sync with blocknotify callbacks
    9af5f9cb87
  188. Merge pull request #7027
    4ea1790 [qa] keypool: DRY: Use test framework (MarcoFalke)
    c6973ca [qa] keypool: Fix white space to prepare transition to test framework (MarcoFalke)
    6fc287f2df
  189. Merge pull request #7103
    fa506c0 [wallet] Add rpc tests to verify fee calculations (MarcoFalke)
    4b89f01 Default fPayAtLeastCustomFee to false (Ryan Havar)
    a7751824ce
  190. torcontrol: only output disconnect if -debug=tor 4531fc4272
  191. Merge pull request #7112
    9af5f9c Move uiInterface.NotifyBlockTip signal above the core/wallet signal - This will keep getbestblockhash more in sync with blocknotify callbacks (Jonas Schnelli)
    4082e46 [Qt] call GuessVerificationProgress synchronous during core signal, pass double over UI signal (Jonas Schnelli)
    947d20b [Qt] reduce cs_main in getVerificationProgress() (Jonas Schnelli)
    e6d50fc [Qt] update block tip (height and date) without locking cs_main, update always (each block) (Jonas Schnelli)
    012fc91 NotifyBlockTip signal: switch from hash (uint256) to CBlockIndex* - also adds a boolean for indication if the tip update was happening during initial sync - emit notification also during initial sync (Jonas Schnelli)
    96b802510d
  192. Move fPayAtLeastCustomFee function to CC ecc7c82361
  193. [Qt] use ASYMP_UTF8 (≈) whenever we show a fee that is not absolute 80462dda0a
  194. [Qt] make use of the nMinimumTotalFee (absolute) in coincontrols fee calculation 31b508a18b
  195. [Qt] improve minimum absolute fee option
    - Only display the minimum absolute fee control if CoinControl is enabled
    ff723da6f6
  196. Merge pull request #7035
    4531fc4 torcontrol: only output disconnect if -debug=tor (Daniel Cousens)
    9b8fc6c89a
  197. Merge pull request #7008
    c035306 Change GetPriority calculation. (Alex Morcos)
    71f1d9f Modify variable names for entry height and priority (Alex Morcos)
    5945819 Remove default arguments for CTxMemPoolEntry() (Alex Morcos)
    eb7741605b
  198. Merge pull request #7094
    1bb289f Assert now > 0 in GetTime GetTimeMillis GetTimeMicros (Patick Strateman)
    34e02e0147
  199. [qa] pull-tester: Cleanup (run keypool, tidy stdout)
    * Run keypool (takes 6 seconds)
    * Print duration of each rpc test
    * Structure output (bold, new lines)
    fa3a38a7f2
  200. [doc] Minor markdown fixes fad3035e8d
  201. contrib: Del. gitian downloader config and update gitian README fa22a10028
  202. Fix url in .travis.yml 9999cb0626
  203. rpcwallet: Clarify what settxfee does faffc172ec
  204. HelpMessage: Don't hide -mintxfee behind showDebug fa19a588b9
  205. Explicitly set chain limits in replace-by-fee test cfdc66280f
  206. Add failing test checking timelocked-txn removal during reorg 0c9959a308
  207. Fix removal of time-locked transactions during reorg 9b060e5cfb
  208. Fix comment in removeForReorg b0a064c4b8
  209. Make indentation in ActivateBestChainStep readable 474b84a741
  210. removeForReorg calls once-per-disconnect-> once-per-reorg bb8ea1f630
  211. Track coinbase spends in CTxMemPoolEntry
    This allows us to optimize CTxMemPool::removeForReorg.
    7e49f5f8b4
  212. Don't call removeForReorg if DisconnectTip fails b7fa4aa387
  213. Fix removeForReorg to use MedianTimePast 2d8860e820
  214. Merge pull request #7044
    d52fbf0 Added additional config option for multiple RPC users. (Gregory Sanders)
    438ee59839
  215. Change default block priority size to 0
    Make RPC tests have a default block priority size of 50000 (the old default) so we can still use free transactions in RPC tests.  When priority is eliminated, we will have to make a different change if we want to continue allowing free txs.
    50947ef23f
  216. Merge pull request #7072
    996d311 [RPC] Add transaction size to JSON output (Nick)
    c143c499c8
  217. Merge pull request #7079
    ebb25f4 Limit setAskFor and retire requested entries only when a getdata returns. (Gregory Maxwell)
    5029698 prevent peer flooding request queue for an inv (kazcw)
    1b5118bfa0
  218. Merge pull request #7105
    9ac63d6 Keep track of explicit wallet conflicts instead of using mempool (Pieter Wuille)
    30c2d8c635
  219. Merge pull request #7135
    fa3a38a [qa] pull-tester: Cleanup (run keypool, tidy stdout) (MarcoFalke)
    eb3d1b3487
  220. Merge pull request #7096
    ff723da [Qt] improve minimum absolute fee option - Only display the minimum absolute fee control if CoinControl is enabled (Jonas Schnelli)
    31b508a [Qt] make use of the nMinimumTotalFee (absolute) in coincontrols fee calculation (Jonas Schnelli)
    80462dd [Qt] use ASYMP_UTF8 (≈) whenever we show a fee that is not absolute (Jonas Schnelli)
    ecc7c82 Move fPayAtLeastCustomFee function to CC (Pieter Wuille)
    9490bd71bd
  221. rpc: Don't translate warning messages
    But keep translating them in the GUI.
    This - necessarily - requires duplication of a few messages.
    Alternative take on #7134, that keeps the translations from being wiped.
    
    Also document GetWarnings() input argument.
    
    Fixes #5895.
    aabc897801
  222. Merge pull request #6914
    114b581 Prevector type (Pieter Wuille)
    327291af02
  223. Merge pull request #7136
    fa19a58 HelpMessage: Don't hide -mintxfee behind showDebug (MarcoFalke)
    faffc17 rpcwallet: Clarify what settxfee does (MarcoFalke)
    9999cb0 Fix url in .travis.yml (MarcoFalke)
    fa22a10 contrib: Del. gitian downloader config and update gitian README (MarcoFalke)
    fad3035 [doc] Minor markdown fixes (MarcoFalke)
    8f761e87c3
  224. Add rounding helper function to util.py 6e8b07f5f3
  225. Add rpc test for prioritisetransaction 2b31ab90c4
  226. Merge pull request #7063
    2b31ab9 Add rpc test for prioritisetransaction (Suhas Daftuar)
    6e8b07f Add rounding helper function to util.py (Suhas Daftuar)
    6abf6eb7bb
  227. qt: use QMetaObject::invokeMethod for cross-thread signaling in clientmodel
    It's surprising to me that Q_EMIT even worked for this.
    
    But it doesn't build in Qt4, so switch back to
    `QMetaObject::invokeMethod`. Fixes #7138.
    6da12dff28
  228. Merge pull request #7022
    50947ef Change default block priority size to 0 (Alex Morcos)
    9afbd96919
  229. Merge pull request #6915
    2d8860e Fix removeForReorg to use MedianTimePast (Suhas Daftuar)
    b7fa4aa Don't call removeForReorg if DisconnectTip fails (Suhas Daftuar)
    7e49f5f Track coinbase spends in CTxMemPoolEntry (Suhas Daftuar)
    bb8ea1f removeForReorg calls once-per-disconnect-> once-per-reorg (Matt Corallo)
    474b84a Make indentation in ActivateBestChainStep readable (Matt Corallo)
    b0a064c Fix comment in removeForReorg (Matt Corallo)
    9b060e5 Fix removal of time-locked transactions during reorg (Matt Corallo)
    0c9959a Add failing test checking timelocked-txn removal during reorg (Matt Corallo)
    2ef5ffa59a
  230. Merge pull request #7143
    6da12df qt: use QMetaObject::invokeMethod for cross-thread signaling in clientmodel (Wladimir J. van der Laan)
    a60538bc45
  231. Merge pull request #7141
    aabc897 rpc: Don't translate warning messages (Wladimir J. van der Laan)
    c0c08c7c68
  232. qt: periodic translations update bc1f427570
  233. Merge pull request #7137
    cfdc662 Explicitly set chain limits in replace-by-fee test (Suhas Daftuar)
    16f4a6e0fe
  234. test: Disable scheduler test manythreads
    It causes occasional deadlocks, resulting in false negatives in Travis.
    
    Disable the test for now.
    Works around #6540.
    8f0d79e3c8
  235. Store the total sig op count of a tx.
    Store sum of legacy and P2SH sig op counts.  This is calculated in AcceptToMemory pool and storing it saves redoing the expensive calculation in block template creation.
    c49d5bc9e6
  236. Add a score index to the mempool.
    The score index is meant to represent the order of priority for being included in a block for miners.  Initially this is set to the transactions modified (by any feeDelta) fee rate.  Index improvements and unit tests by sdaftuar.
    f3fe83673e
  237. Add TxPriority class and comparator 7230187b1d
  238. Make accessing mempool parents and children public 1f09287c66
  239. Expose FormatStateMessage 5f12263302
  240. Rewrite CreateNewBlock
    Use the score index on the mempool to only add sorted txs in order.  Remove much of the validation while building the block, relying on mempool to be consistent and only contain txs that can be mined.
    The mempool is assumed to be consistent as far as not containing txs which spend non-existent outputs or double spends, and scripts are valid.  Finality of txs is still checked (except not coinbase maturity, assumed in mempool).
    Still TestBlockValidity in case mempool consistency breaks and return error state if an invalid block was created.
    Unit tests are modified to realize that invalid blocks can now be constructed if the mempool breaks its consistency assumptions and also updated to have the right fees, since the cached value is now used for block construction.
    
    Conflicts:
    	src/miner.cpp
    553cad94e2
  241. Merge pull request #6898
    553cad9 Rewrite CreateNewBlock (Alex Morcos)
    5f12263 Expose FormatStateMessage (Alex Morcos)
    1f09287 Make accessing mempool parents and children public (Alex Morcos)
    7230187 Add TxPriority class and comparator (Alex Morcos)
    f3fe836 Add a score index to the mempool. (Alex Morcos)
    c49d5bc Store the total sig op count of a tx. (Alex Morcos)
    4077ad20d0
  242. sipa commented at 7:37 PM on December 1, 2015: member

    Looks good, but I was waiting for https://github.com/jgarzik/univalue/pull/14 to be merged first.

  243. Add method to remove a tx from CCoinsViewCache if it is unchanged 74d0f90262
  244. Get the set of now-uncacheable-txn from CTxMemPool::TrimToSize b2e74bd292
  245. Discard txn cache entries that were loaded for removed mempool txn 677aa3d88c
  246. Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cached 97bf377bd1
  247. Uncache input txn in utxo cache if a tx is not accepted to mempool bde953e281
  248. Flush coins cache also after transaction processing dd5862c4cd
  249. jonasschnelli commented at 7:01 AM on December 2, 2015: contributor

    Agree with @sipa: Let's wait for @laanwj open PR there.

  250. Merge pull request #7040
    b171c69 [doc] Update OS X build notes for new qt5 configure (Michael Ford)
    4a63f94676
  251. laanwj added this to the milestone 0.12.0 on Dec 2, 2015
  252. laanwj commented at 9:09 AM on December 2, 2015: member

    Not sure what is blocking jgarzik/univalue#14.

    Need to move this along though for the 0.12 branch. Maybe we could create a univalue fork under bitcoin.

  253. Merge pull request #6872
    dd5862c Flush coins cache also after transaction processing (Pieter Wuille)
    bde953e Uncache input txn in utxo cache if a tx is not accepted to mempool (Matt Corallo)
    97bf377 Add CCoinsViewCache::HaveCoinsInCache to check if a tx is cached (Matt Corallo)
    677aa3d Discard txn cache entries that were loaded for removed mempool txn (Matt Corallo)
    b2e74bd Get the set of now-uncacheable-txn from CTxMemPool::TrimToSize (Matt Corallo)
    74d0f90 Add method to remove a tx from CCoinsViewCache if it is unchanged (Matt Corallo)
    bdda4d567e
  254. Merge pull request #7144
    8f0d79e test: Disable scheduler test manythreads (Wladimir J. van der Laan)
    1b0241fcec
  255. jonasschnelli commented at 9:27 AM on December 2, 2015: contributor

    I think a fork of UniValue under the github bitcoin identity would make sense.

  256. laanwj commented at 10:24 AM on December 2, 2015: member
  257. MarcoFalke force-pushed on Dec 2, 2015
  258. MarcoFalke commented at 10:37 AM on December 2, 2015: member

    Updated. Make sure to fetch https://github.com/bitcoin/univalue (and not jgarzik) when doing

    $ contrib/devtools/git-subtree-check.sh src/univalue
    
  259. MarcoFalke force-pushed on Dec 2, 2015
  260. fanquake commented at 11:17 AM on December 2, 2015: member

    ACK

    On Wednesday, December 2, 2015, Wladimir J. van der Laan < notifications@github.com> wrote:

    src/univalue in HEAD was last updated to upstream commit 9218595ed19ccc1a7958c2c7284fd4acb9ce4fdc (tree 5d50d2814919fe88dda5f33df70310c2df080319) src/univalue in HEAD currently refers to tree 5d50d2814919fe88dda5f33df70310c2df080319 GOOD

    — Reply to this email directly or view it on GitHub #7147 (comment).

  261. laanwj commented at 11:21 AM on December 2, 2015: member

    Can you re-do this, I've added a commit to jgarzik/univalue#14 and updated the repository

  262. Merge commit '982709199f1b4e9e35211c419a81938f9f1dd4ed' into bitcoin fad4ea836d
  263. MarcoFalke force-pushed on Dec 2, 2015
  264. laanwj commented at 11:55 AM on December 2, 2015: member

    Thanks, should pass Travis now

    src/univalue in HEAD was last updated to upstream commit 2740c4f71242086a7eb3dc32f812546ba9fad913 (tree 6abb4a6467fde2b738dfa8acf32fef55257130c2)
    src/univalue in HEAD currently refers to tree 6abb4a6467fde2b738dfa8acf32fef55257130c2
    GOOD
    

    ACK

  265. MarcoFalke commented at 12:00 PM on December 2, 2015: member

    @laanwj You have run subtree-check on master, not my PR ;)

  266. laanwj commented at 12:15 PM on December 2, 2015: member

    @MarcoFalke I was running it on master but without your PR merged, worst of both worlds. But I've since updated the post and it should be ok now?

  267. MarcoFalke commented at 12:21 PM on December 2, 2015: member

    Looks good.

  268. laanwj merged this on Dec 2, 2015
  269. laanwj closed this on Dec 2, 2015

  270. laanwj referenced this in commit 7c7a05d274 on Dec 2, 2015
  271. MarcoFalke deleted the branch on Dec 2, 2015
  272. sipa commented at 12:37 PM on December 2, 2015: member

    Can you also update the list of subtrees in https://github.com/bitcoin/bitcoin/tree/master/contrib/devtools ?

  273. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-04-13 15:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me