{"push_id":2461227609,"size":246,"distinct_size":74,"ref":"refs/heads/sethdseed","head":"65558f02886cecac850779d04981bb3a97b08020","before":"618525680fc84521c44ca0d4850e899b55c24ae0","commits":[{"sha":"1e0ee9095ce87a3cee0b44a120f6297ac672f5d0","author":{"name":"Martin Ankerl","email":"31758f83dbfb61a30254ef852ef695e86a02b5da@gmail.com"},"message":"Use best-fit strategy in Arena, now O(log(n)) instead O(n)\n\nThis replaces the first-fit algorithm used in the Arena with a best-fit. According to \"Dynamic Storage Allocation: A Survey and Critical Review\", Wilson et. al. 1995, http://www.scs.stanford.edu/14wi-cs140/sched/readings/wilson.pdf, both startegies work well in practice.\n\nThe advantage of using best-fit is that we can switch the slow O(n) algorithm to O(log(n)) operations. Additionally, some previously O(log(n)) operations are now replaced with O(1) operations by using a hash map. The end effect is that the benchmark runs about 2.5 times faster on my machine:\n\nold: BenchLockedPool, 5, 530, 5.25749, 0.00196938, 0.00199755, 0.00198172\nnew: BenchLockedPool, 5, 1300, 5.11313, 0.000781493, 0.000793314, 0.00078606\n\nI've run all unit tests and benchmarks.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/1e0ee9095ce87a3cee0b44a120f6297ac672f5d0"},{"sha":"5fbf7c478a996974502d5d787b2ccf2fcc91ac78","author":{"name":"Martin Ankerl","email":"31758f83dbfb61a30254ef852ef695e86a02b5da@gmail.com"},"message":"fix nits: variable naming, typos","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/5fbf7c478a996974502d5d787b2ccf2fcc91ac78"},{"sha":"1e747e3c1e04a38c5ed6e8f8cd14077b8b7377c9","author":{"name":"Mark Friedenbach","email":"f1b5a91d4d6ad523f2610114591c007e75d15084@friedenbach.org"},"message":"Make segwit failure due to CLEANSTACK violation return a SCRIPT_ERR_CLEANSTACK error code.","distinct":true,"url":"https://api.github.com/repos/achow101/bitcoin/commits/1e747e3c1e04a38c5ed6e8f8cd14077b8b7377c9"},{"sha":"ffcc687c556692de9dd368872d5361faa9aba0e4","author":{"name":"Sjors Provoost","email":"963dc4305d0df4b6864dc6a25bea6f5ed273ee18@sprovoost.nl"},"message":"[net] add seed.bitcoin.sprovoost.nl to DNS seeds","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/ffcc687c556692de9dd368872d5361faa9aba0e4"},{"sha":"f8c249ab918b0b4d326b8c441816c64d046455bf","author":{"name":"Ben Woosley","email":"3df0af5b774b3387e3ad4650a6c28cf09923a05a@gmail.com"},"message":"Assert CPubKey::ValidLength to the pubkey's header-relevent size\n\nPreviously this was an inline test where the specificity was probably judged\noverly specific. As a class method it makes sense to maintain consistency.\n\nAnd replace some magic values with their constant equivalents.","distinct":true,"url":"https://api.github.com/repos/achow101/bitcoin/commits/f8c249ab918b0b4d326b8c441816c64d046455bf"},{"sha":"3dba3c3ac1679cf0086ee7734eee12268004ace7","author":{"name":"Luke Dashjr","email":"d0b35c280567a6e00291dab426e321dcd3a56fd2@utopios.org"},"message":"Qt: Load all wallets into WalletModels","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/3dba3c3ac1679cf0086ee7734eee12268004ace7"},{"sha":"e449f9a9e620fb909eb7b32d815b413d235f05ad","author":{"name":"Luke Dashjr","email":"d0b35c280567a6e00291dab426e321dcd3a56fd2@utopios.org"},"message":"Qt: Add a combobox to toolbar to select from multiple wallets","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/e449f9a9e620fb909eb7b32d815b413d235f05ad"},{"sha":"85d5319716b7b31b27bc7950d756465ae472f11d","author":{"name":"Luke Dashjr","email":"d0b35c280567a6e00291dab426e321dcd3a56fd2@utopios.org"},"message":"Qt: Ensure UI updates only come from the currently selected walletView","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/85d5319716b7b31b27bc7950d756465ae472f11d"},{"sha":"d558f44c58b61671899d6ef897df271de3f4f20a","author":{"name":"Luke Dashjr","email":"d0b35c280567a6e00291dab426e321dcd3a56fd2@utopios.org"},"message":"Bugfix: RPC: Add missing UnregisterHTTPHandler for /wallet/","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/d558f44c58b61671899d6ef897df271de3f4f20a"},{"sha":"de04fde534997f15235ded46912806d47c615c23","author":{"name":"practicalswift","email":"4a57785b02e7b752fc2eb7d1c97db94302a41bf7@users.noreply.github.com"},"message":"bitcoin-cli: Provide a better error message when bitcoind is not running\n\nBefore this patch:\n\n```\n$ bitcoin-cli -testnet echo 'hello world'\nerror: Could not locate RPC credentials. No authentication cookie could be found, and RPC password is not set.  See -rpcpassword and -stdinrpcpass.  Configuration file: (/root/.bitcoin/bitcoin.conf)\n```\n\nAfter this patch:\n\n```\n$ bitcoin-cli -testnet echo 'hello world'\nerror: Could not connect to the server 127.0.0.1:18332\n\nMake sure the bitcoind server is running and that you are connecting to the correct RPC port.\n```","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/de04fde534997f15235ded46912806d47c615c23"},{"sha":"1f45e2164a7674f716b425a6658c41ca7c30265b","author":{"name":"practicalswift","email":"4a57785b02e7b752fc2eb7d1c97db94302a41bf7@users.noreply.github.com"},"message":"scripted-diff: Convert 11 enums into scoped enums (C++11)\n\n-BEGIN VERIFY SCRIPT-\n\nsed -i 's/enum DBErrors/enum class DBErrors/g' src/wallet/walletdb.h\ngit grep -l DB_ | xargs sed -i 's/DB_\\(LOAD_OK\\|CORRUPT\\|NONCRITICAL_ERROR\\|TOO_NEW\\|LOAD_FAIL\\|NEED_REWRITE\\)/DBErrors::\\1/g'\nsed -i 's/^    DBErrors::/    /g' src/wallet/walletdb.h\n\nsed -i 's/enum VerifyResult/enum class VerifyResult/g' src/wallet/db.h\nsed -i 's/\\(VERIFY_OK\\|RECOVER_OK\\|RECOVER_FAIL\\)/VerifyResult::\\1/g' src/wallet/db.cpp\n\nsed -i 's/enum ThresholdState/enum class ThresholdState/g' src/versionbits.h\ngit grep -l THRESHOLD_ | xargs sed -i 's/THRESHOLD_\\(DEFINED\\|STARTED\\|LOCKED_IN\\|ACTIVE\\|FAILED\\)/ThresholdState::\\1/g'\nsed -i 's/^    ThresholdState::/    /g' src/versionbits.h\n\nsed -i 's/enum SigVersion/enum class SigVersion/g' src/script/interpreter.h\ngit grep -l SIGVERSION_ | xargs sed -i 's/SIGVERSION_\\(BASE\\|WITNESS_V0\\)/SigVersion::\\1/g'\nsed -i 's/^    SigVersion::/    /g' src/script/interpreter.h\n\nsed -i 's/enum RetFormat {/enum class RetFormat {/g' src/rest.cpp\nsed -i 's/RF_\\(UNDEF\\|BINARY\\|HEX\\|JSON\\)/RetFormat::\\1/g' src/rest.cpp\nsed -i 's/^    RetFormat::/    /g' src/rest.cpp\n\nsed -i 's/enum HelpMessageMode {/enum class HelpMessageMode {/g' src/init.h\ngit grep -l HMM_ | xargs sed -i 's/HMM_BITCOIN/HelpMessageMode::BITCOIN/g'\nsed -i 's/^    HelpMessageMode::/    /g' src/init.h\n\nsed -i 's/enum FeeEstimateHorizon/enum class FeeEstimateHorizon/g' src/policy/fees.h\n\nsed -i 's/enum RBFTransactionState/enum class RBFTransactionState/g' src/policy/rbf.h\ngit grep -l RBF_ | xargs sed -i 's/RBF_TRANSACTIONSTATE_\\(UNKNOWN\\|REPLACEABLE_BIP125\\|FINAL\\)/RBFTransactionState::\\1/g'\nsed -i 's/^    RBFTransactionState::/    /g' src/policy/rbf.h\n\nsed -i 's/enum BlockSource {/enum class BlockSource {/g' src/qt/clientmodel.h\ngit grep -l BLOCK_SOURCE_ | xargs sed -i 's/BLOCK_SOURCE_\\(NONE\\|REINDEX\\|DISK\\|NETWORK\\)/BlockSource::\\1/g'\nsed -i 's/^    BlockSource::/    /g' src/qt/clientmodel.h\n\nsed -i 's/enum FlushStateMode {/enum class FlushStateMode {/g' src/validation.cpp\nsed -i 's/FLUSH_STATE_\\(NONE\\|IF_NEEDED\\|PERIODIC\\|ALWAYS\\)/FlushStateMode::\\1/g' src/validation.cpp\nsed -i 's/^    FlushStateMode::/    /g' src/validation.cpp\n\nsed -i 's/enum WitnessMode {/enum class WitnessMode {/g' src/test/script_tests.cpp\nsed -i 's/WITNESS_\\(NONE\\|PKH\\|SH\\)/WitnessMode::\\1/g' src/test/script_tests.cpp\nsed -i 's/^    WitnessMode::/    /g' src/test/script_tests.cpp\n\n-END VERIFY SCRIPT-","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/1f45e2164a7674f716b425a6658c41ca7c30265b"},{"sha":"386a6b62a8a1db9dd0f354cb95b7585f555c7e5d","author":{"name":"Jonas Schnelli","email":"34c6fceca75e456f25e7e99531e2425c6c1de443@jonasschnelli.ch"},"message":"Allow to optional specify the directory for the blocks storage","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/386a6b62a8a1db9dd0f354cb95b7585f555c7e5d"},{"sha":"8674e74b47c1f6e86a367cfbc738fcc9812b616b","author":{"name":"murrayn","email":"64b2b6d12bfe4baae7dad3d018f8cbf6b0e7a044@nesbitt.ca"},"message":"Provide relevant error message if datadir is not writable.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/8674e74b47c1f6e86a367cfbc738fcc9812b616b"},{"sha":"6ef99826b9ab2c9d95ed4b55403d22225bcf086a","author":{"name":"Andrew Chow","email":"9ef92abc9bcc0292887b9c9cd2be76de0f344b83@achow101.com"},"message":"Actually disable BnB when there are preset inputs\n\nWe don't want to use BnB when there are preset inputs because there\nis some weirdness with making that work with using the KnapsackSolver\nas the fallback. Currently we say that we haven't used bnb when\nthere are preset inputs, but we don't actually disable BnB. This fixes\nthat.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/6ef99826b9ab2c9d95ed4b55403d22225bcf086a"},{"sha":"8c632f73c29efa5cb87fc7ea44d3d332cb29d408","author":{"name":"Vasil Dimov","email":"ad45205a471752ff1e17b788c3e52521e319899e@FreeBSD.org"},"message":"ax_boost_{chrono,unit_test_framework}.m4: take changes from upstream\n\nApply changes to\nbuild-aux/m4/ax_boost_chrono.m4 and\nbuild-aux/m4/ax_boost_unit_test_framework.m4\nfrom upstream: https://github.com/peti/autoconf-archive","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/8c632f73c29efa5cb87fc7ea44d3d332cb29d408"},{"sha":"71129e0265f322249cce6fa3e02df92dd9c8b2d5","author":{"name":"Vasil Dimov","email":"ad45205a471752ff1e17b788c3e52521e319899e@FreeBSD.org"},"message":"Do not check for main() in libminiupnpc\n\nmain() { main(); } causes \"infinite recursion\" compilation warning\nwhich with -Werror fails the check.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/71129e0265f322249cce6fa3e02df92dd9c8b2d5"},{"sha":"8ae413235d4b3f68f0858a3ce2cd65291f9cbe64","author":{"name":"Vasil Dimov","email":"ad45205a471752ff1e17b788c3e52521e319899e@FreeBSD.org"},"message":"Remove redundant checks for MSG_* from configure.ac\n\nIt is redundant to check for the presence of MSG_NOSIGNAL macro in\nconfigure.ac, define HAVE_MSG_NOSIGNAL and then check whether the later\nis defined in the source code. Instead we can check directly whether\nMSG_NOSIGNAL is defined. Same for MSG_DONTWAIT.\n\nIn addition to that, the checks we had in configure.ac produce a\ncompiler warning about unused variable and thus could fail if\n-Werror is present and erroneously proclaim that the macros are\nnot available.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/8ae413235d4b3f68f0858a3ce2cd65291f9cbe64"},{"sha":"081bf54ee4a282eed72e7de409ad6b9ab97f2987","author":{"name":"Andrew Chow","email":"9ef92abc9bcc0292887b9c9cd2be76de0f344b83@achow101.com"},"message":"Test that BnB is not used when there are preset inputs","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/081bf54ee4a282eed72e7de409ad6b9ab97f2987"},{"sha":"4c317d89e9d980328028ff01cd9a0465cc22bb7e","author":{"name":"Russell Yanofsky","email":"d1818e90f775d1fa111cabb0c1a59ce802530221@yanofsky.org"},"message":"Document RPC method aliasing\n\nSuggested by Sjors Provoost <sjors@sprovoost.nl> in\nhttps://github.com/bitcoin/bitcoin/pull/11536#issuecomment-372820660","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/4c317d89e9d980328028ff01cd9a0465cc22bb7e"},{"sha":"499d95e278f34790660a2b9baf5525e0def1485a","author":{"name":"Russell Yanofsky","email":"d1818e90f775d1fa111cabb0c1a59ce802530221@yanofsky.org"},"message":"Add static_assert to prevent VARINT(<signed value>)\n\nUsing VARINT with signed types is dangerous because negative values will appear\nto serialize correctly, but then deserialize as positive values mod 128.\n\nThis commit changes the VARINT macro to trigger an error by default if called\nwith an signed value, and updates broken uses of VARINT to pass a special flag\nthat lets them keep working with no change in behavior.","distinct":false,"url":"https://api.github.com/repos/achow101/bitcoin/commits/499d95e278f34790660a2b9baf5525e0def1485a"}]}
{"actor":{"display_login":"achow101"}}