SEARCH
NEW RPMS
DIRECTORIES
ABOUT
FAQ
VARIOUS
BLOG

 
 
Changelog for bitcoinunlimited-doc-2.1.0.0-150500.2.2.noarch.rpm :

* Tue May 28 2024 marecAATTdetebe.org- Update to version 2.1.0.0:
* Update release notes for BCHU 2.1.0.0
* Fix ubuntu 24.04 (noble) compilation issues
* ABLA state need to retrieved from activation block not the block before
* ABLA state need to be stored into CBlockIndex since activation.
* Fix std::optional objects serialization
* Add missing code to write abla block size to disk
* Add a needed symbol to cashlib (token.cpp) and fix the HF effects in mempool_accept
* Add release notes for BCHU 2.1.0.0
* Pass P2P port to rostrum
* Fix chipnet configuration parameters
* Properly setup default activation time per chain during bootstrap
* [qa] Fix the last issue for feature_abla
* Use nBlockMaxSize as input for GetMaxBlockSigChecksCount()
* Remove debug log from percentblockmaxsize validator
* [qa] fix getlogcategories.py functional test
* Fix compactblocks_1.py functional test
* Fix prioritise transactions functional test
* Fix formatting
* [qa] fix all remaining problem with feature_abla.py
* Add two consensus tweaks
* Fix code searching for activation block
* Slightly change activation time semantic.
* Add log statements to May 2024 upgrade helper funcs and to VerifyAblaStateForChain
* Add a new debug category for protocol upgrade activation
* Fix the code that search for activation block in VerifyAblaStateForChain
* [qa] temp fix for feature and wallet p2sh32
* Remove object to track the exact height when May 2023 upgrade activated
* partially fix feature_abla.py test
* add sigcheckslimit to mining candidate info
* add miningblocksizelimit to getmininginfo
* disable blockstorage.py test because the feature is disabled
* fix bug in fillmempool
* change boost::shared_ptr to std::shared_ptr
* [qa] fix another bunch of funcrtional tests
* [qa] add qa/rpc-tests/test_framework/cdefs.py to the test framework infra
* [qa] fix validateblocktemplate.py
* [qa] fix mempoolsync.py
* [qa] fix syntax error in feature_min_tx_size.py
* [qa] fix syntax error in feature_tx_version.py
* [qa] Fix tweak.py
* [qa] fix parallel.py
* [qa] fix miningtest.py
* [qa] fix syntax error in feature_p2sh32.py
* Fix fomratting and remove dunused var in rpc/blockchain.cpp
* Fix compilation errors in mempoofill rpc command code
* add mempoolfill rpc
* set consensusBlockSize to new max size when chainActive tip is updated
* remove no longer used max mining block size and max block size constants
* rename excessiveBlockSize to consensusBlockSize. dont change rpc or arg
* Fix formatting according to project standard
* [consensus] Max signature checks is a function of ABLA maximu block size
* add partially converted ABLA qa feature test
* add abla python logic to test_framework
* disable excessive QA test
* connect ABLA in validation code
* [ci] fix last 2 failures in token_tests.cpp
* [ci] convert token_tests.cpp to be height activated
* add abla tests to makefile
* AD is no longer a part of subversion, remove it from tests
* add missing call to new in pow_tests.cpp
* [ci] set back priority txns block space back to 0 as default
* [ci] comment mining block size configuration tests
* Use boolean rather than bitwise operators
* removed unused const DEFAULT_BLOCK_MAX_SIZE_REGTEST
* [ci] make txn min size test to use block height activation (may 2023)
* [consensus] may2023Height is defined otherwhise code won\'t compile
* fix compilation issue in miner_tests.cpp
* remove setexcessiveblock and miningmaxblock rpcs
* remove ebTweak
* make the maximum generated block size always 95% of the alba max size
* add abla unit tests
* update block and blockheader rpcs
* [ci] remove test for excessive block size from checkblock_tests.cpp
* Temporary fix for nol net max block size.
* [ci] fix a typo in may 2024 unit tests
* [ci] make token txns test to use block height activation (may 2023)
* update makefile
* start to add abla validation code
* remove min max block size from chainparams
* rename more excessive block size to consensus block size
* add ABLA config to the chainparams
* re-add token_transaction_tests.cpp which went missing somehow
* fix pow_tests.cpp
* consensus: Add MTP based activation helpers for May 2024 protocol upgrade
* Use BU logger facility in abla.cpp
* consensus: Use height for May 2023 hf activation
* Miscellaneous changes to the formatting tools
* Remove last remaining Acceptance Depth references
* comment out on disk storage sync, CDiskBlockIndex is no longer copyable
* remove AcceptDepth and excessive chain concepts
* add AblaStateMixin as super of CBlockIndex
* rename DEFAULT_EXCESSIVE_BLOCK
* to DEFAULT_CONSENSUS_BLOCK
*
* add ABLA code to consensus folder
* Bump BCHU version to 2.1.0.0
* Fix building on FreeBSD and update the documentation
* [depends] Avoid to build Rust if not building linux binaries
* Allow fetching blocks outside active chain via RPC
* Sat Feb 24 2024 marecAATTdetebe.org- Update to version 2.0.0.1:
* Add release notes for BHC Unlimited 2.0.0.1
* Bump BCHU version to 2.0.0.1
* [depends] Fix Qt 5.9.8 fetch URL
* [depends] update rust to last stable version, 1.73.0
* Pin rostrum electrum server to v10.0.0
* [ci] use python 3.11 to run rostrum QA functional tests
* ECDSA multisig verification issue
* AssertWriteLock now checks if the current thread has the exclusive lock
* resolve test lockordering issues
* cast nHeight to int32_t to match the VarIntMode expected type/value
* Sat May 06 2023 marecAATTdetebe.org- Update to version 2.0.0.0:
* Make the rostrum CI task to use version 8.1.0
* clean up compiler warnings
* Add release notes for version 2.0.0.0
* Bump BCHU version to 2.0.0.0
* Add span.h to src/Makefile.am
* Fix gitian rostrum build
* build: Fix CI linker issue
* Add unit tests for GetMinimumTxSize()
* Tag rostrum release v8.1.0
* Minimal CashToken RPC token support
* Add a dummy BOOST_AUTO_TEST_CASE to chip_testing_setup.cpp
* Add new network: \"chipnet\" (-chipnet)
* Add signing with token support + fix tests
* Handle validating SIGHASH_UTXOs
* Update script error messages
* Calculate dust limit for token outputs
* Workaround prevector issue
* Improve reject reason for oversized OP_RETURN
* Update ATMP validation order
* Add cashtokens introspection opcodes
* May 2023 CHIP test vectors
* Update and fix testnet4 consensus parameters.
* fix some locking issues evident in debug builds
* Build fix for OS X
* CashToken primitives w/o opcodes and sighash
* CashAddr: Add support for token-aware cash addresses
* consensus: Add P2SH-32 support
* build: Fix boost depends build with glibc >= 2.34
* util: Add HeapOptional
* Fix bip69 output sort
* consensus: Change min tx size limit to 65 bytes
* Port \'feature_tx_version\' test to BU framework
* Unbundle the bad tx testing in blocks, post upgrade
* BCH May 2023 Upgrade: Enforce tx nVersion in consensus rather than standardness
* tests: Remove OldSetKeyFromPassphrase/OldEncrypt/OldDecrypt
* wallet: Change CCrypter to use vectors with secure allocator
* Replace Q_FOREACH where PAIRTYPE is used
* Use correct network message in net.cpp comment
* Fix formatting
* Add checkpoints for May 2021 and May 2022 BCH network upgrades
* Execute as many QA test in parallel as the number of cpus
* Run functional and unit tests using binaries build with system libs deps
* Remove 32 bits CI task for windows and linux
* Remove installation of clang-format-12/15 from .gitlab-ci.yaml
* Emit an error if clang-format is not installed
* Add run-formatting target to makefile.am
* Make check-formatting target to work with exec names w/o version
* Increase timeout for mempool_accept.py
* Formattng changes after updating clang-format to version 15.0.7
* Update formatting tools to use clang-format ver 15
* build: Bump rust to 1.64.0
* test: Fetch & run electrum tests from rostrum repo
* ci: Disable check-formatting
* Execute as many QA test in parallel as the number of cpus
* Run functional and unit tests using binaries build with system libs deps
* Remove 32 bits CI task for windows and linux
* Remove installation of clang-format-12/15 from .gitlab-ci.yaml
* Emit an error if clang-format is not installed
* Add run-formatting target to makefile.am
* Make check-formatting target to work with exec names w/o version
* Increase timeout for mempool_accept.py
* Formattng changes after updating clang-format to version 15.0.7
* Update formatting tools to use clang-format ver 15
* ci: Disable check-formatting
* consensus: Add check for May 2023 activation MTP
* consensus: Use height for May 2022 hf activation
* build: Bump rust to 1.64.0
* test: Fetch & run electrum tests from rostrum repo
* Update copyright year to 2023
* cashlib: Export decoding of private key
* electrum: Rename ElectrsCash -> rostrum
* [dev] fix compiler and linker warnings
* More specific fast filter docs, no odd num of HFs
* Sat Apr 02 2022 marecAATTdetebe.org- Update to version 1.10.0.0:
* [doc] Add BCH Unlimited 1.10.0 release notes
* [gitian] Fix an error due to missing libbitcoinconsensus.dll
* Add May 2022 activation code to the mempool admission process
* [DEV] move static outside of function to avoid multi-thread issues with static var initialization
* Pin ElectrsCash to version 3.1.0
* Show proper output index in transaction details (QT)
* Bump version to 1.10.0 and build date to jan 1, 2022
* fix small test issues
* build depends with --std-c++17 flag
* USe clang 10 in the fot build-debian-clang CI task
* [depends] protobuf: drop -Werror from CPPFLAGS
* Switch back to osx SDK 10.14
* Revert \"depends: only use dbus with qt on linux\"
* build: pass -dead_strip_dylibs to ld on macOS
* depends: don\'t use OpenGL in Qt on macOS
* depends: only use dbus with qt on linux
* depends: qt: Fix C{,XX} pickup
* depends: qt: Fix LDFLAGS pickup
* build: remove unnecessary qt xcb patching
* build: remove unnecessary macOS qt patching
* depends: qt: Fix C{,XX}FLAGS pickup
* depends: disable unused Qt features
* doc: remove line numbers from qt package links
* doc: fix typo in bitcoin_qt.m4 comment
* build: remove jpeg lib check from bitcoin_qt.m4
* build: disable libjpeg in qt
* depends: Bump QT to LTS release 5.9.8
* depends: qt: Patch to remove dep on libX11
* gitignore: Actually pay attention to depends patches
* symbol-check: Disallow libX11-
*.so.
* shared libraries
* depends: libXext isn\'t needed by anyone
* build-aux: Remove check for x11-xcb
* depends: qt: Explicitly stop using Xlib/libX11
* depends: xproto is only directly needed by libXau
* depends: qt: Don\'t hardcode pwd path
* depends: expat 2.2.6
* Bump macOSX min version to 10.12 (Sierra) and OSX SDK to 10.15
* Fix formatting
* Fix deprecation declaration warning in the secure allocator
* Use standard mutex in init/validation/txmempool.cpp
* Use std lib for mutex and condition_variable in the mining code
* Fix an uninitialized const reference warning
* Use standrd mutex in transactions admission code
* Use standard algorith library rather than Qt deprecated counterpart
* Use standard mutex implementation for signature caches
* Convert blockrelay subsys to use standard mutexes
* Fix a bunch of warnings due mistmatching types in BOOST_CHECK_EQUAL
* Use standard library mutexes for our synchronization mechanism
* Silence clang warnings in boost asio library
* Enable C++ 17 for the code base
* resolve most compilation warnings
* change SubmitBlock param to a ConstCBlockRef
* add sigtype arg to signrawtransaction
* Update copyright year to 2022
* [DEPENDS] Use parallel compilation when building packages
* Make sure we flush when IBD is complete
* Fix 3 warnings spotted by compiling the source code using clang
* Fix libbitcoinconsensus dll compilation
* [ci] osx depends: upload only needed artifacts
* Remove documents related to unconfirmed txn chain limits
* Fix installation of clang 12 in our CI workflow
* Tidy up the error message for absurd fees
* use shared_ptr for cblock throughout all validation code, make the cblock const
* only log network connection failures if debug=net is configured
* minor cleanup and bugfixes
* remove IP address check specific to pre 0.2.9 node addr messages
* Dont allow free transactions into the mempool bug fix
* script interpreter fixes
* Update Qt 5.9.7 URL to point to the new location
* add may2022 fork activation checks
* return proper change output index for bip69
* BCH Native Introspection
* use bip69 by default in CWallet::CreateTransaction()
* Bigger script ints
* Fix spurious failure in mempool_tests.cpp
* May2022 fork activation code
* add the config path to cmakelists.txt so that bitcoin-config.h is found
* remove \'config\' path from all bitcoin-config.h includes. This prepended path allows an external target directory build to accidentally pick up a residual bitcoin-config.h from a in-tree build. This happens because external builds still need a -I that pulls in the source tree and the internal bitcoin-config.h is located at src/config/bitcoin-config.h
* fix use before set error in graphene simultaneous processing check
* cherry pick !2513 to dev
* fix tests
* Remove unnecessary file
* Move nextchain antifragile QA fixes to dev
* Fix miner.cpp when mining priority transactions
* Remove unnecessary cs_main lock in rpc generate() and remove internal bitcoin miner
* make the mininode properly handle extversion automatically, and report extversion support in getpeerinfo RPC
* Do not try to output a public label if this is a coinbase
* Update dependencies.md to 1.71 not 1.70
* Remove boost assign
* Fix libbitcoinconsensus cross-compiling for win32/64
* build: add PTHREAD_LIBS to LDFLAGS configure output
* build: split PTHREAD_
* flags out of AM_LDFLAGS
* Replace uses of boost date_time with std::chrono
* build: AX_PTHREAD serial 27
* [trivial] Sync ax_pthread with upstream draft
* build,boost: update download url.
* [build][depends]: Bump boost to 1.71.0
* [build] Remove unused boost patches
* depends: boost: Refer to version in URL
* depends: Consistent use of package variable
* depends: fix boost mac cross build with clang 9+
* [depends] boost: update to 1.70
* run clang-format-12 on all files
* update to clang-format-12
* Validate tx p2p message
* Prevent the modal overlay from briefly appearing after chain is synced
* Fix testnet nov2020 height activation
* enable zmq on windows builds
* Remove unnecessary call to CNodeRef destructor
* syscall requires missing unistd.h
* Post Upgrade: We can finally remove all references to ancestor and descendant limits
* Only consider \"Up to date\" when receiving a recent block, not a header.
* Fix help message/option for QA execution wrapper
* regression test for spaces in tweak set
* Revert \"Pin ElectrsCash to version 3.0.0\"
* electrum: Add test for `blockchain.utxo.get`
* CI: Cache rust artifacts
* qa: Use PortSeed for Electrum server
* Order the block requests.
* [moveonly] Move port seed features to own unit
* Simplify by removing duplicate code.
* Allow whitespace between \"=\" when setting tweaks
* Request manager fixes for downloading blocks during IBD
* Check chain activation after we load the block index
* CheckFinalTx is checked inside IsTrusted, no need to call it twice
* Wed Apr 21 2021 marecAATTdetebe.org- Update to version 1.9.2.0:
* Add release notes for BCH Unlimited 1.9.2
* Adjust to use isMay2021Enabled check
* Make multiple OP_RETURN standard
* Bump BCH Unlimited verions to 1.9.2
* Add an in memory block cache
* Use 120 wait instead of 60 in wallet.py
* Remove the call to IsMay2021Next() when setting unconfPushAction.
* Revert back to the 4hr orphan timeout after the fork is activated.
* Add tests to mempool_push.py
* Adjustments after rebasing on sickpigs activation code
* Adapt the long chain code for the May 15, 2021 hard fork.
* Remove misbehavior for invalid dsproof and throw if spenders are the same
* Cleanup parallel.cpp/.h and remove the redundancy with regards to clearing the orphanpool
* Output where the txn is found when doing a getrawtransaction rpc
* Activate Nov 2020 upgrade by height, add helpers from May 2021
* Set the RPC warmup earlier when reindexing
* Tue Mar 30 2021 marecAATTdetebe.org- Update to version 1.9.1.1:
* BCH Unlimited 1.9.1.1 release notes
* Bump BCH Unlimited version to 1.9.1.1
* directly enforce a maximum tx size as part of consensus
* Shutdown during re-index was getting hung
* Use a more general exceptions type
* Remove bloom filter targeting for xthins
* Align our RPC for getblock() with the BCHN node
* getrawtransaction will now return orphans
* Remove descendantcount, descendantsize and descendantfees from EntryDescriptionString()
* Add a few uiIterface messages during startup
* Create a RemoveForBlock for the orphan pool
* remove tip is nullptr check during tip time validation on startup, tip is always at least the genesis block
* Make sure to get an initial snapshot before doing txadmission
* add bounds check for nToFetch.
* Trigger txn rate computation on a timer
* Fix a typo
* Fix \"Unbound transactions chain\" document URL
* Move ConditionStack class defintion inside ScriptMachine class
* Add clear() method to ConditionStack class
* Benchmark script verification with 100 nested IFs
* Implement O(1) OP_IF/NOTIF/ELSE/ENDIF logic
* [refactor] interpreter: define interface for vfExec
* Wed Feb 17 2021 marecAATTdetebe.org- Update to version 1.9.1.0:
* Patch extversion compactsize issue
* Add BCH Unlimited 1.9.1 release notes
* Wallet: Remove random component of locktime
* Pin ElectrsCash to version 3.0.0
* Fix BIP34 consensus difference between BCHN & Core and BU
* fixes to improve QA test stability
* Remove fOverrideMempoolLimit since it is not used anywhere
* Fix GuessVerificationProgress when checkpoints are enabled.
* Minor CheckQ locking changes
* Disconnect peers if they give us a bad header at a checkpoint
* Do not use GetHeight or nVersion before the BIP34 soft fork enforced nVersion semantics
* Catch the exception in case basedir has been already created
* Revert the coins cache leveldb block_size back to 4096
* allow mining candidates to be reused if multiple RPC calls request candidates within a configurable # of seconds. Only allow a configurable maximum number of candidates to be \'live\' at any time
* give mapUnconnectedHeaders its own lock
* Add Nov 2020 checkpoints
* Allow a greater range for prefilled transactions in compactblocks
* Bump version to 1.9.1.0
* Save orphanpool to disk and load again on startup
* fixes ExtVersion docs
* Update copyright year
* Fix copyright headers
* Update copyright year to 2021
* Fix zmq DSProof notification
* No need to run though the loop if wallet is disabled.
* Remove class ScoreCompare from miner.cpp
* Fix potential propagation issues when reconstructing thintype blocks
* Update hashBlock in GetTransaction() if needed
* Drop --jsonrpc-import flag when starting ElectsCash
* add explorer.bitcoinunlimited.info as our default transaction viewer and validate proper txviewer URLs before letting the user choose them
* Use uint64_t for file sizes, update CBlockFileInfo to use specific byte size integers
* Workaround for bug in extversion
* Make sure to check correctly for known INV types
* Add maxtipage to allowed args
* improve nToFetch calculation in the request manager
* some fixes for qa test consistency
* electrum: Integrate ElectrsCash v3 upgrades
* electrum: Test for verbose unconfirmed tx
* finish the port. convert to BU function calls and add some test framework helper functions to make subsequent porting easier. add all zmq test into the qa runner. Use different zmq ports so tests can be run simultaneously. remove unused block attach/unattach notification. expand interface_zmq.py, add missing bitcoind option. ZMQ tests are sensitive to race conditions between python asking for a zmq message and bitcoind generating it. Add wrappers that retry ZMQ receive until a timeout. Add a P2PKH tx to the wallet and use it for the ZMQ doublespend notification test in zmq_test.py and interface_zmq.py.
* Upgrade UniValue code in zmq/zmqrpc.cpp (#51)
* Backport of BCHN 5df3c1d33e RPC: Add new getzmqnotifications method.
* electrum: Test for addresses field in verbose tx
* start electrs build earlier
* make QA utility function create_confirmed_utxos operate more efficiently by not generating 101 blocks unless needed, and by utilizing a wider split. This fixes the mempool_push block sync timeout problem that happens in underpowered QA runs
* Test for blockchain.transaction.get_merkle
* electrum: Test more of verbose transaction output
* electrum: Refactor mempool chain tests
* Validate dsproof after we create it and before we forward it
* Use the dirty flag
* Build development version of ElectrsCash for the dev branch of BU
* Remove deb pkgs that are already installed in out custom docker image
* Remove `--coverage` when running electrum server tests only
* [ci] Add electrscash build & testing
* [electrum] Support out-of-source build
* Avoid updating ban score for whitelisted nodes
* electrum: Add test for connection limit
* electrum: Detect disconnect in electrum framework
* Move the calculation of ancestors into updateEntryForAncestors()
* Add the Double Spent status to the transaction description dialog and place a warning icon next to the transaction in the transaction list.
* Add the Double Spent status to the transaction description dialog and place a warning icon next to the transaction in the transaction list.
* Change the way we trim transactions from the mempool
* Fix rpc_tests for manually added bantimes
* Change the place where we check for nTxPersec < 0
* Implement a block lookahead when receiving data
* Add logging category for tweaks
* Enable electrum server integration on Mac OS
* Make the CNode XVERSION variables atomic
* Fix a warning in validation.h
* Add autoconf to the list of prereqs to ubuntu/debian build instructions
* Add EXTVER in the peers UI to indicate support of EXTVERSION
* electrum: Tests for blockchain.address.(un)subscribe
* Turn on XVal by default when mining a new block
* Remove old xversion
* Fix a startup issue where the QT Wallet is getting hung
* Update seeders domain name server
* Fix bug in connection logic and tweak ref
* increase max block file size to 2 GB, fix loop when selecting block file
* Distinguish testnet4 and scalenet icon colors
* change calculation for max http body size
* fix formatting
* set maxchecksigs based on default EB value but dont override user tweaks
* set a minimum excessive block size for each chain
* fix bad comparators in python qa suite
* fix scalenet network id string
* move default mining block size to chainparams, set it for each chain
* move the default excessive block size to chainparams, set for each chain
* Make CFeeRate atomic
* Update build instructions
* Add missing lock in keystore.cpp
* Update the dev environement build instructions for Windows
* Check size limits when doing IsTxAcceptable
* Add a minimum delay before block finalization
* [rpc] add getfinalizedblockhash to return the current finalized block
* Only update the finalized state if finalization is turned on.
* Partially revert 31046fa5f9a843a8ba00c38e5c6d57d8b1c2c1da
* _idx checks were already made in _Contains, just fetch the index
* Add tweak blockchain.maxReorgDepth rather than using -maxreorgdepth
* Add a DbgAssert() to check pindex in IsBlockFinalized()
* Create a new scope for cs_main
* make the explanation string for -maxreorgdepth a little easier to understand
* Remove accendental line which was cherry-picked into bip68_sequence.py
* fix format
* Add missing cs_main lock when checking pindexFnalized
* Prevent auto-finalization from moving backwards
* Do not remove the validity mask for block valid when finalizing
* [rpc] add getfinalizedblockhash to return the current finalized block
* Fix the python tests
* Add check for genesis block when finalizing
* Auto-finalize block once they reached a certain depth (by default 10)
* Remove unnecessary print statements from finalize.py
* Remove mining blocks by score
* Fix a typo in 1.9.0.1 rel notes
* Fix finalizeblock.py so that it works with BU code
* MOVE only abc-finalize-block.py -> finalizeblock.py
* Fix format
* Check and set validity bits correctly
* Fix a varity of complile issues related to the port of finalize block
* Add an RPC to finalize a block
* ix unit tests to handle CLIENT_VERSION_BUILD not equal to 0
* [gitian] temporary fix for rust on x86_64
* Bump BCH Unlimited version 1.9.0.1
* WIP: Add scalenet
* [PORT] Add testnet4 IPv6 Seeds from BCHN
* Update allowed args ports for all supported chains
* Add separate GUI const
* Add missing May 2018 & May 2019 fork heights
* Set May 2020 fork height to 0
* Fix testnet4 RPC port
* added checkpoints and chatxdata for testnet4
* Add seed.tbch4.loping.net testnet4 seed
* Fix testnet4 activation heights
* Update testnet4
* add testnet4 network sytle for gui
* Add testnet4
* fixup: allowed_args formatting
* [PORT] Add testnet4 IPv6 Seeds from BCHN
* Update allowed args ports for all supported chains
* Add separate GUI const
* Add missing May 2018 & May 2019 fork heights
* Set May 2020 fork height to 0
* Fix testnet4 RPC port
* added checkpoints and chatxdata for testnet4
* Add seed.tbch4.loping.net testnet4 seed
* Fix testnet4 activation heights
* Update testnet4
* add testnet4 network sytle for gui
* Add testnet4
* Sat Sep 26 2020 marecAATTdetebe.org- Update to version 1.9.0.1:
* Update #2
* Update the commits and contributors lists
* Fix the first round of feedback
* Add release notes for BCH Unlimited 1.9.0.1
* Fix merge conflict due to the last rebase
* Ensure new DSProof is valid
* Rename getters for private Spender(s) attrbutes in DoubleSpendClass
* Restricted size of pushData to 520
* Fixed a bug in addOrphan()
* Enforce some message size limits for DSPROOF messages
* DSProof: Various nits and fixups
* Remove orphans (if any) when adding a new dsproof
* Replace int with NodeId when using a peerId
* Repoint build status badge from Travis to Gitlab
* Graphene verson negotiation at connect time only
* Fix compile warning in bitcoin-miner.cpp
* Remove unnecessary printf from sigopcount_tests
* Update runtime error message when block size is exceeded
* git ignore src/pull-tester/ctorout.txt
* fix univalue kvp insertion complexity. now log(N) instead of N^2
* move CheckAgainstCheckpoint call into contextualcheckblockheader
* only send extversion message if both peers are using the protocol
* Use GetLastCheckpoint()
* Re-enable GetLastCheckpoint()
* Remove TestConservativeBlockValidity
* add java function to verify a message\'s signature
* change XVersionMap from unorderded_map to map for better performance
* Disable the coin freeze feature
* Fix printf warning in the cpu miner
* fix ubuntu 20 warning: use default copy op and copy constructor rather then defining the constructor to call the copy op and not defining the copy op
* formatting
* small cherrypick fix
* qt: Replace objc_msgSend with native syntax
* Use Qt signal for macOS Dock icon click event
* fixes for boost v1.73
* Fix compiling error on OSX when using --enable-debug
* build: Add options to override BDB cflags/libs
* Use a different critical section for vNodesDisconnected.
* [gitian] Avoid to build rust for linux 32 bits
* qt: include QPainterPath header
* Properly scope mutex variable used with condition_variable wait_until
* Add a missing atomic include
* Turn the bench compile off if tests are disabled
* [electrum] Add OSX support for electrs build script
* Clear the availableFrom list when processing a transaction
* Bump ElectrsCash HEAD commit hash
* Address a few issues after the 1st round of review
* regressions: fix may2020 fork time and use else if not just if
* Change `electrum.blocknotify` default to true
* cache TXN concat xversion config param for efficiency, like many other xversion configs are cached, rather then looking it up in a map repeatedly
* protect xmap when assigning values in set_u64c()
* Remove \'continue\' if we have found an orphan and reclamed it.
* Remove rpc-tests2.py
* Bump rust to ver 1.45.2
* Thu Aug 20 2020 marecAATTdetebe.org- Update to version 1.9.0.0:
* Bump version of BCHUnlimited to 1.9
* formatting
* Fix MAX_STANDARD_TX_WEIGHT check
* a few small extra checks: make sure pskip is not nullptr, and be explicit about the uint16 to uint64 type promotion rather than relying on the compiler\'s implicit rules
* Update the user facing name for the miningForkTime tweak
* Remove invalid file st4MxtLD
* change frac from auto to uint16_t just for clarity.
* add asert spec to docs folder
* port additional asert c++ tests and fix formatting
* port ASERT daa c++ test from BCHN (contains minor changes)
* port ASERT daa from BCHN (contains minor changes)
* add nDAAHalfLife to consensus params
* Add more logging to ctor.py
* Add ctorout.txt to the artifacts set for qa testing
* Save the spend hash rather than the mempool iterator
* break up nodeps build in CI
* Correctly remove orphans from the doubleSpendProofStorage
* Add code comments to DoubleSpendProof.cpp/.h
* When validating DSP, return Invalid if P2SH is true or GetOp fails
* Remove unused functions firstSpender(), doubleSpender()
* Add DbgAssert() in hashTx()
* Update the double-spend-proof-specification
* change creatHash() and make it GetHash()
* Re-enable the early return if respend is not interesting
* refactor broadcastDSPInv() out of the mempool write lock scope
* Send a reject message is the dsproof was not found when requested
* Convert assert() statements to DbgAssert()
* Fix potential assert
* change dsproof to dsproof-beta
* Forward dsproofs to SPV peers for descendant txns
* Consolidate duplicate code for dsp broadcasting
* fix failing test in respenddetector_tests.cpp
* fix locking issue
* Add tests for doublespend proof orphans
* Reintroduce the handling of dsproof orphans
* Use a multi input transaction for testing dsproof
* Add Log message when broadcasting INV for dsproof
* Remove last check for missing signature
* Add check for identical transactions
* Add test for order of transactions in dsproof
* Unit tests for DoubleSpend proofs
* Add DSPROOF to the allNetMessageType arrray
* Clean up the requesting of a dsproof via and INV message
* Remove relaying of double spent transactions
* Only print out log messages if DSPROOF is enalbed
* Fix Resend Relayer test
* Uncomment code
* Remove the old dsproof broadcasting code
* Broadcast the dbouble spend from within the respendrelayer trigger
* change message name from dsproof-beta to dsproof
* fix getlogcategories.py
* Fix various complile wanrnings
* Add doublespend cpp/h files to .formatted-files
* fix compile issue for some platforms
* Fix a host of rebase issues and formatting issues
* Add some more comments and sanity checks
* Nicely initialize the variable every loop
* Import DSP spec from gitlab.com/snippets/1883331
* Import DoubleSpendProof support
* clean up how we use python Proc, add a notice to compact_blocks2 that an exception is expected. look for defunct processes, and use cache in graphene_stage2 for performance. isolate child tests from the parent process more than default popen does. add node status dump function if there is a problem
* Make sure to remove an item when there are no longer any sources
* Add a null check for CNode
* when sending priority messages
* Change the isValid description in the validaterawtransaction help text
* adjust locking in pval to avoid cs_main being held thru delay loop
* fix a few timing issues in mempool_push that cause rare failures
* treat too deep unconf chain tx as orphans
* Avoid deleting core files after inspection, mving it in a different path
* Remove useless gdb command from coreanalysis.gdb
* Add info proc and info proc cmdline to the list of command executed by gdb
* Add bitcoind and cores to qa artifacts in case of failure
* Print the core file name before trying to extract info from it
* Use a catch-all exception when it comes to core dump analysis
* Add missing gdb package in case we need to analyze core dump
* Increase DELAY_TIME in mempool_push.py
* Create the temporary folder where to store eventual core dump
* Timeout individual tests after 20 minutes also when in gitlab CI
* update pull-tester rpc test list
* remove signchecks_inputs activation test
* remove signchecks activation py test
* simplify op_reversebytes_activation to op_reversebytes.py
* remove activation for mempool policy. fork has already occurred.
* update may activation functions to use IsMay2020Activated
* change may 2020 to block height in chain params, add nov2020 HF MTP
* change may 2020 HF variable to use the block height instead of time
* add nov 2020 HF activation time variable to consensus params
* add new next HF check functions and may HF activated functions
* Make thinblock and grapheneblock checks more permissive
* Handle modifications to mempool between hash access and tx access in graphene
* add comment
* need to increase timeouts for debug build because mempool check is very slow for large mempools. need to provide the datadir to bitcoin-cli
* [cashlib] Export \'sign data\'
* Implement xversion handshake state
* Always send inventory to SPV peers
* Change xversion key size
* upload qa tests as artifact on qa_tests failure
* remove old debugging prints
* When checking for conflicts in mempool_accept.py use a subprocess
* Use sendrawtransaction in mempool_accept.py
* Serialize AcceptToMemoryPool()
* Add missing stack include
* [electrum] Allow passing switch params with rawarg
* [qa] Add tests for blockchain.
*.get_first_use
* Fix debug ui -> blockcount and size not updating
* remove tag
* Always ensure we have at least one scriptcheck thread running
* Use the correct variable name CI_MERGE_REQUEST_IID
* Remove MSG_MEMPOOLSYNC as an inventory message type
* Split build-debian in two job one for deps and for the actual bitcoind sw
* Add NO_RUST parameter to depends Makefile
* Activate Repo Lockdown bot on GitHub Legacy repository.
* [electrum] Introduce electrum.blocknotify (#2233)
* [qa] Add benchmark comparator tool
* [qa] Multiple client electrum subscription test
* [qa] Convert electrum test to async
* bump cmake version due to linking problem compiling with old versions (#2230)
* output confirmations and more accurate time in some RPC calls in some edge conditions (#2225)
* keep unprocessed priority messages, shorten messagehandler sleep (#2224)
* Fix bench_bitcoin command line flags parsing (#2227)
* Remove warning about not NUL-terminated string
* Fix shadowing warnings on csv parser
* Squashed \'src/fast-cpp-csv-parser/\' changes from 3b439a6640..327671c577
* Change xversion to match new spec (#2134)
* Remove reference counting from the requestmanager (#2209)
* Do not shutdown bitcoind if ActivateBestChain() fails on startup (#2211)
* [cashlib] Throw in GetPubKey on invalid argument
* Add test case for stack mutation
* Add the ability to launch or kill txAdmissionThreads and msgHandlerThreads (#2200)
* Fix formatting for `cashlib/cashlib.cpp` (#2220)
* [cashlib] Handle address type correctly (#2219)
* Make getblock RPC call works both with block height and block hash (#2205)
* Remove a useless assert() from getblockchainfo()
* [rpc] getblockchaininfo: add size_on_disk, prune_target_size
* Add mainet and testnet checkpoints for May 2020 net upgrade
* add missing defines for Android cashlib based on libssecp256k1 changes
* have mempool tests use global mempool object not locally created one
* This will come in handy in a short while for benchmarking new UniValue code changes/optimizations.
* update old rpm ius release link (#2215)
* Make getblockheader works both with block height and block hash (#2202)
* 4 fix/cleanups (#2199)
* [qa] Electrum tests for blockchain.address.
* (#2213)
* Add a new log category for priority queue messages (#2203)
* bench: Benchmark blockToJSON
* bench: Move generated data to a dedicated translation unit
* Remove unused includes
* Add `src/bench/bench_constants.h` to `Makefile.bench.include` (#2212)
* bench: Benchmark mempoolToJSON (#2206)
* Disable reconsidermostworkchain during initial bootstrap when chain is not synced
* Change txvalidationcache unit tests to work with the new max len chain limit (#2208)
* add modaloverlay.cpp/h to formatted files
* Use compare_exchange_weak when setting bestBlockHeight
* fix format
* Add signal for Header Tip UI update
* Add code that went missing during the port from Core.
* [Qt] modalinfolayer: removed unused comments, renamed signal, code style overhaul
* [Qt] only update \"amount of blocks left\" when the header chain is in-sync
* [Qt] add out-of-sync modal info layer
* [Qt] make Out-Of-Sync warning icon clickable
* [Refactor] refactor function that forms human readable text out of a timeoffset
* Move ActivateBestChain() into ThreadImport() during startup (#2184)
* [giga-net] Concatenate transactions before sending (#1852)
* [Giga-net] Activate XVal for newly mined blocks (#1791)
* Speed up OP_REVERSEBYTES test significantly
* Error out and exit if unknown command line parameters are used
* trivial: Mark overrides as such.
* bench: Add block assemble benchmark
* Remove SATOSHI constant from sigcache_tests.cpp
* benchmark: Removed bench/perf.{cpp.h}
* bench: Move constructors out of mempool_eviction hot loop
* bench/tests: Avoid copies of CTransaction
* Fix missing or inconsistent include guards
* Add missing bench files to the list of the ones that have to be formatted
* Fix a memory leak in bench and use C++1 for loop rather than BOOST_FOREACH
* Use PACKAGE_NAME instead of hardcoding application name in log message
* Log debug build status and warn when running benchmarks
* Removed CCheckQueueSpeed benchmark
* Improved microbenchmarking with multiple features.
* Remove deadlock detector variable definition in bench_bitcoin
* Remove useless include from Example.cpp
* Initialize recently introduced non-static class member lastCycles to zero in constructor
* Require a steady clock for bench with at least micro precision
* bench: prefer a steady clock if the resolution is no worse
* bench: switch to std::chrono for time measurements
* Remove countMaskInv caching in bench framework
* Changing &vec[0] to vec.data()
* Avoid unwanted conversion for the PrevectorJob contructor
* Avoid static analyzer warnings regarding uninitialized arguments
* Replace boost::function with std::function for bench suite
* Use FastRandomContext::randrange in src/bench/checkqueue.cpp
* Properly initialize random number generator for the unit tests suite
* [bench] Avoid function call arguments which are pointers to uninitialized values
* bench: Fix initialization order in registration
* Assert that what might look like a possible division by zero is actually unreachable
* Fix a typo in src/bench/perf.cpp
* Address ryanofsky feedback on CCheckQueue benchmarks.
* Add Basic CheckQueue Benchmark
* Add missing random generator initialization in bench_bitcoin.cpp
* build: Make \"make clean\" remove all files created when running \"make check\"
* Bugfix: Correctly replace generated headers and fail cleanly
* Add microbenchmarks to profile more code paths.
* bench: Add support for measuring CPU cycles
* Add deserialize + CheckBlock benchmarks, and a full block hex
* bench: Added base58 encoding/decoding benchmarks
* bench: Fix subtle counting issue when rescaling iteration count
* Avoid integer division in the benchmark inner-most loop.
* Try to send xthin blokcs via expedited only if when needed
* Use trasaction reference in hasNoDependencies mempool method
* [Doc only] update the xversion spec (#2132)
* [electrum] Add test for .scripthash.unsubscribe
* Revert \"Pin ElectrsCash to v1.1.1 tag (#2167)\"
* Use correct type for syncMempoolWithPeers tweak
* Removed unused reference to removed tweaks
* remove some commented out code for gui alerts
* change connection limitation log prints to be more descriptive
* [electrum] Catch http_get error in getelectruminfo
* Fixes warning on variable shadowing
* try to bump file descriptors to requested amount before setting maxconns
* set the maxoutboundconns after maxconns as it depends on it
* add missing lot_mutex lock in DeleteCritical method in CLockOrderTracker
* Add regular blocks to the priority queue
* Remove duplicate code from TestConservativeBlockValidity()
* Add bool flag fConservative to TestBlockValidity
* Move TestConservativeBlockValidity into validation.cpp
* [SECP256K1] Fix issue where travis does not show the logs
* [SECP256K1] Request --enable-experimental for the multiset module
* [SECP256K1] Fix a valgrind issue in multisets
* Remove secret-dependant non-constant time operation in ecmult_const.
* Preventing compiler optimizations in benchmarks without a memory fence
* README: add a section for test coverage
* Overhaul README.md
* Convert bench.h to fixed-point math
* Add SECURITY.md
* Clarify that a secp256k1_ecdh_hash_function must return 0 or 1
* doc: document the length requirements of output parameter.
* variable signing precompute table
* Docstrings
* Increase robustness against UB in secp256k1_scalar_cadd_bit
* Remove mention of ec_privkey_export because it doesn\'t exist
* Remove note about heap allocation in secp256k1_ecmult_odd_multiples_table_storage_var
* Make no-float policy explicit
* JNI: fix use sig array
* Avoid calling secp256k1_
*_is_zero when secp256k1_
*_set_b32 fails.
* Add a descriptive comment for secp256k1_ecmult_const.
* secp256k1/src/tests.c: Properly handle sscanf return value
* Fix typo
* Fix typo in secp256k1_preallocated.h
* Make ./configure string consistent
* Fix a nit in the recovery tests
* typo in comment for secp256k1_ec_pubkey_tweak_mul ()
* scalar_impl.h: fix includes
* Moved a dereference so the null check will be before the dereferencing
* Fix typo in docs for _context_set_illegal_callback
* [secp256k1] Allow to use external default callbacks
* [secp256k1] Remove a warning in multiset test
* Add ECMH multiset module to libsecp256k1
* [SECP256K1] Fix ability to compile tests without -DVERIFY.
* scratch space: use single allocation
* Enable context creation in preallocated memory
* Make WINDOW_G configurable
* Use trivial algorithm in ecmult_multi if scratch space is small
* Note intention of timing sidechannel freeness.
* configure: Use CFLAGS_FOR_BUILD when checking native compiler
* Respect LDFLAGS and #undef STATIC_PRECOMPUTATION if using basic config
* Make sure we\'re not using an uninitialized variable in secp256k1_wnaf_const(...)
* Pass scalar by reference in secp256k1_wnaf_const()
* Avoid implementation-defined and undefined behavior when dealing with sizes
* Guard memcmp in tests against mixed size inputs.
* Use __GNUC_PREREQ for detecting __builtin_expect
* Add $(COMMON_LIB) to exhaustive tests to fix ARM asm build
* Switch x86_64 asm to use \"i\" instead of \"n\" for immediate values.
* Allow field_10x26_arm.s to compile for ARMv7 architecture
* Clear a copied secret key after negation
* Use size_t shifts when computing a size_t
* Fix integer overflow in ecmult_multi_var when n is large
* Add trivial ecmult_multi algorithm which does not require a scratch space
* Make bench_internal obey secp256k1_fe_sqrt\'s contract wrt aliasing.
* Summarize build options in configure script
* Portability fix for the configure scripts generated
* Correct order of libs returned on pkg-config --libs --static libsecp256k1 call.
* Eliminate scratch memory used when generating contexts
* Optimize secp256k1_fe_normalize_weak calls.
* Assorted minor corrections
* Make constants static: static const secp256k1_ge secp256k1_ge_const_g; static const int CURVE_B;
* secp256k1_fe_sqrt: Verify that the arguments don\'t alias.
* Make randomization of a non-signing context a noop
* add static context object which has no capabilities
* Fix algorithm selection in bench_ecmult
* Make use of TAG_PUBKEY constants in secp256k1_eckey_pubkey_parse
* improvements to random seed in src/tests.c
* [secp256k1] [ECDH API change] Support custom hash function
* Update secp256k1 README
* [SECP256K1] Create a different library when building with JNI
* [SECP256K1] Build java class files out of tree
* [SECP256K1] JNI tests : remove dependency to obsolete DatatypeConverter
* [TRIVIAL] Cleanup the JNI test file
* [schnorr] Refactor the signature process in reusable component
* [secp256k1] add schnorr sign jni binding
* [secp256k1] refactor nativeECDSABuffer to a more generic name
* [secp256k1] add schnorr verify jni binding
* [secp256k1] remove unused byte array
* [secp256k1] remove guava dep
* [secp256k1] fix java secp256k1 test
* Allow for running secp256k1 java build/tests out of tree
* Thu Apr 16 2020 marecAATTdetebe.org- Update to version 1.8.0.0:
* restore sigops fields in case mining pools are using them, but deprecate post fork by setting tx sigops to 0
* fix getblocktemplate output for sigchecks
* eliminate sigops checking postfork in 2 other places. comment on one slight mining deviation from spec (block produces 1 less than max sigchecks)
* add a timeout to zmq operations so this test doesn\'t hang forever if no zmq message comes in
* delete lock order information about a mutex when the mutex is d… (#2171)
* Add missing lock around vInventoryToSend vector in respend rela… (#2170)
* fix test not crossing misbehavior limit (#2172)
* BCH Unlimited 1.8.0 release notes (#2161)
* Throw exceptions when a get/set tweak or a getstat is invalid (#2166)
* Set net.unconfChainResendAction default value to 2 (#2168)
* request xthin block if graphene block cannot be reconstructed (#2169)
* Pin ElectrsCash to v1.1.1 tag (#2167)
* ignore already disconnected exception if disconnecting (#2163)
* fix enum misordering (#2162)
* ignore exception thrown due to bug in communicate (#2164)
* fix doublespend issue in schnorrsig test (#2160)
* unnecessary to convert to and from UniValue (#2159)
* bump timeouts for travis
* On startup, use reconsidermostworkchain() when chain not synced (#2158)
* cleanups based on PR review
* implement sigchecks consensus rules
* Cherry pick from ABC 18708a54d [sigcheck] Add per tx limit
* cherry pick ABC 276a95b871
* [standardness] activate SCRIPT_VERIFY_INPUT_SIGCHECKS in next upgrade
* implement sigcheck limits as defined in the 2020 may hard fork.
* implement sigcheck counting as defined in the 2020 may hard fork at the script level. Enforcement of sigcheck limits is not implemented in this commit.
* Thread locking (#2157)
* connections are not necessarily evicted in connection order. update nodehandling.py test to reflect that (#2156)
* fix comptool problem (#2154)
* increase port range to minimize conflicts when running rpc_tests.py (#2155)
* Gradually decay assigned misbehavior over time (#2143)
* Use MAX_THINTYPE_BLOCKS_IN_FLIGHT to determine the chain length… (#2152)
* Refactor ReconstructBlock in graphene (#2147)
* Add missing lock to CDB Flush (#2153)
* [qa] Add cashaccount activation height argument (#2151)
* [qa] Improved version parsing in test (#2150)
* [layout] Update various icon and splash screen using the new na… (#2148)
* [qa] Add a timeout parameter to sync_blocks (#2138)
* Use a CNodeRef rather than explicit reference counting in PV (#2145)
* [rebrand] BUcash to BCH Unlimited (#2142)
* fix lockheld checks, throw meaningful logic errors rather than… (#2140)
* delete duplicate bunode.py file (#2144)
* Fix mempool_packages.py with long chained transactions (#2139)
* Fix a pack of nits (#2137)
* Add missing locks and fix false positive clang warnings - part 3 (#2126)
* some graphene block fixes (#2130)
* Make IsAlreadyValidating() more granular by checking for hash (#2133)
* op_reversebytes_activitation fix (#2131)
* Updating bitcoinforks.org operetade seeders. (#2123)
* Turn variables that store CB/GR salt used for any given peers i… (#2120)
* check the correct vBlocksToAnnounce (#2125)
* randomlyDontInv tweak has to affect only to MSG_TX INVs (#2127)
* Add missing locks and fix false positive clang warnings - part 2 (#2124)
* improve lock order debug printing (#2128)
* [merge 2117 first] enforce lock ordering by checking pointer va… (#2116)
* Add missing locks - part 1 (#2121)
* Just use 3 nodes in mempool_push.py
* Use new getters to retrieve BCH default policy for chain of unconfirmed txs
* Add new post-fork ancestor and descendants limit.
* Move mempool policy constants to policy/mempool.h
* Silence sync.h warning we got when compiling with clang `-Wthread-safety-analysis` on
* fix lock ordering issue between cs_utxo and cs_blockvalidationthread
* Add missing cs_vSend while accessing vSendMsg.size()
* Annotate GetTotalRecvSize with EXCLUSIVE_LOCKS_REQUIRED(cs_vRecvMsg)
* Use correct critical section name in net.h GUARDED_BY macro
* Silence sync.h warning we got when compiling with clang `-Wthread-safety-analysis` on
* Set default txn chain length to 500 (#2080)
* recognize bare multisigs as standard only when using minimal pushes
* Add string lenght check to MatchLabelPublic
* In GetTxnOutputType use the same order used in txnouttype enum
* Avoid code duplication in the definition of \"<<\" operator
* Remove a couple unneeded #ifdefs ENABLE_WALLET directives
* Unit tests for IsMine
* Add back BU IsMine tests
* [script] Unit tests for script/standard functions
* Formatting prevector code and related unit tests/benchs
* prevector: avoid misaligned member accesses
* Use correct C++11 header for std::swap()
* Remove unused includes
* speed up Unserialize_impl for prevector
* Drop defunct prevector compat handling
* warnings: Compiler warning on memset usage for non-trivial type
* refactor: Lift prevector default vals to the member declaration
* Explicitly initialize prevector _union
* Remove default argument to prevector constructor to remove ambiguity
* Explicitly initialize prevector::_union to avoid new warning
* Make prevector::resize() and other prevector operations much faster
* prevector: assert successful allocation
* Fix header guards using reserved identifiers
* Port of Core #9505: Prevector Quick Destruct
* Add SSE41 and AVX2 libreary to bitcoin-miner linker flag
* Fix --disable-asm for newer assembly checks/code
* build: always attempt to enable targeted sse42 cxxflags
* Enable double-SHA256-for-64-byte code on 32-bit x86
* 8-way AVX2 implementation for double SHA256 on 64-byte inputs
* 4-way SSE4.1 implementation for double SHA256 on 64-byte inputs
* Use SHA256D64 in Merkle root computation
* Specialized double sha256 for 64 byte inputs
* Refactor SHA256 code
* Benchmark Merkle root computation
* OP_REVERSEBYTES activation logic
* Add create_tx_with_script to blocktools.py
* Move pad_tx from txtools.py to blocktools.py
* Added OP_REVERSEBYTES+implementation, added (always disabled) activation flag
* Fix a conflict due to the merge of #2068
* Simplify testing RNG code
* Make unit tests use the insecure_rand_ctx exclusively
* Bugfix: randbytes should seed when needed (non reachable issue)
* Introduce a Shuffle for FastRandomContext and use it in wallet and coinselection
* Use a local FastRandomContext in a few more places in net
* Make addrman use its local RNG exclusively
* Fix FreeBSD build by including utilstrencodings.h
* Make FastRandomContext support standard C++11 RNG interface
* Minimal code changes to allow msvc compilation.
* Use nullptr instead of the macro NULL in random.cpp
* Check if sys/random.h is required for getentropy on OSX.
* random: only use getentropy on openbsd
* Clarify entropy source
* Use cpuid intrinsics instead of asm code
* random: fix crash on some 64bit platforms
* Add RandAddSeedSleep
* Add internal method to add new random data to our internal RNG state
* Maintain state across GetStrongRandBytes calls
* Use sanity check timestamps as entropy
* Test that GetPerformanceCounter() increments
* Use hardware timestamps in RNG seeding
* Add attribute [[noreturn]] (C++11) to functions that will not return
* Fix resource leak
* Use rdrand as entropy source on supported platforms
* scripted-diff: Use new naming style for insecure_rand
* functions
* scripted-diff: Use randbits/bool instead of randrange where possible
* Use randbits instead of ad-hoc emulation in prevector tests
* Replace rand() & ((1 << N) - 1) with randbits(N)
* Make CScript (and prevector) c++11 movable.
* Replace more rand() % NUM by randranges
* scripted-diff: use insecure_rand256/randrange more
* Add various insecure_rand wrappers for tests
* Merge test_random.h into test_bitcoin.h
* Deduplicate SignatureCacheHasher
* Add FastRandomContext::rand256() and ::randbytes()
* Add a FastRandomContext::randrange and use it
* Switch FastRandomContext to ChaCha20
* Add ChaCha20
* Introduce FastRandomContext::randbool()
* random: Add fallback if getrandom syscall not available
* sanity: Move OS random to sanity check function
* util: Specific GetOSRandom for Linux/FreeBSD/OpenBSD
* Don\'t use assert for catching randomness failures
* Always require OS randomness when generating secret keys
* Build cashlib only on linux (#2115)
* update all seenLockOrder maps when a new lock is seen (#2110)
* No need to explicitly add SCRIPT_ENABLE_CHECKDATASIG
* Fix a comment minimaldata.py python test
* Remove SCRIPT_VERIFY_MINIMALDATA from the set of standard flags
* add SCHNORR_MULTISIG to mandatory flags
* add SCRIPT_VERIFY_MINIMALDATA to mandatory flags
* Reformat MANDATORY_SCRIPT_VERIFY_FLAGS and add clang-format exception
* drop \'check3\' upgrade-conditional-script-failure for Schnorr multisig
* Sync cashlib python test data structure with C++ ones
* Make more script validation flags backward compatible
* Remove NULLDUMMY
* [travis] remove BU special casing to avoid exiting before the timeout
* [Minor enhancement] Startup txindex after ActivateBestChain (#2094)
* Remove handling for xthin versions < 2
* Update the name tweak used to set/change network upgrade time
* [travis] Give more time to run unit tests (#2108)
* Add opcodes_tests.cpp to .formatted_files (#2106)
* clean up some deadlock detector code (#2103)
* replace multimaps with safer datastructures (#2084)
* Bump version to 1.8 (#2101)
* Fix edge case in request manager (#2102)
* A few IBD tweaks (#2050)
* Remove bitprim seeders (#2099)
* Run excessive.py again in our QA test suites (#2091)
* dont fetch coin from view 3 times when one will do. (#2093)
* Up the reserved diskspace in CheckDiskSpace() to 100MB (#2095)
* Remove EC for sigops (#2097)
* remove unused state param from updatecoins and spendcoins (#2092)
* [travis] Remove constraints on build time for dependencies and… (#2096)
* Change Nov 2019 net upgrade activation to be height based (#2098)
* Better performance for checking p2sh sigops (#2089)
* Mention you need `--allow-modified` to build ElectrsCash from a… (#2085)
* Update univalue subtree (#2086)
* Add graphene recovery messages to the priority queue (#2087)
* Implement a release mode action for DbgAssert in `getchaintxsta… (#2090)
* [port][rpc] Add getchaintxstats and uptime RPC calls (#2070)
* Increase the second timeout slightly (from 2K to 2.1K)
* Reduce time threshold to force travis to save cache and abort
* Update travis.yml according to travis backend errors and warns
* Failure recovery for Graphene (#2030)
* Do not reset the pblock smart pointer when clearing data (#2083)
* fix issue allowing the creation of duplicate reconstruct templa… (#2082)
* Don\'t add more than one unique thintype block in flight (#2081)
* Update to Graphene spec for changes in v2.2 (#2055)
* Speed up the loading of the block index (#2078)
* [qa] Add -electrum-only filter
* [qa] Add test for server.features
* [electrum] Tests for \'blockchain.transaction.get\'
* [electrum] More debug info in `getelectruminfo`
* [qa] Test for tx chain with same scripthash
* [qa] Test for electrum.blockchain.get_history
* [qa] Allow passing prev as hexstr in create_block
* [qa] Electrum helper functions
* Add a test for node eviction
* fix ordering in compare_exchange_weak
* [electrum] Add test for unknown method (#2071)
* GetTransaction improvements (#2068)
* Cleanup inactivity checking
* Add the rest of the GUARDED_BY statements in CNode
* Add a few more atomic vars in CNode
* In CNode make nActivityBytes atomic
* [Giga-Net:] Add a priority queue for urgent message processing (#1721)
* Add Nov 15th 2019 checkpoints for mainnet and testnet (#2053)
* Build latest electrscash (#2069)
* Get the subver string earlier when we track inbound connections (#2063)
* Use BU BCH ppa repository as Berkely DB packages provider (#2065)
* [gui] Fix input validation for traffic shaping parameters (#2061)
* Update copyright year to 2020 (#2058)
* Update ElectrsCash build instruction to take into account binary rename (#2062)
* Do not ban a peer for sending a null hash with inv - just ignore instead (#2060)
* Fix a warning in cashlib.cpp (#2054)
* Implement two more ban reason codes (#2052)
* Don\'t run CheckBlock() more than once during IBD (#2057)
* fix cashlib decodebase64 error return (#2056)
* Turn off PV for compactblocks_2.py (#2051)
* [Requires #2020] Don\'t make copies of CTxMemPoolEntry\'s in RemoveForBlock() (#2042)
* Improve block post processing from O(n^2) to O(n) (#2020)
* Reduce txadmission ancestor chain parsing by roughly 50% for long ch… (#2032)
* Clarify comments in CalculateMemPoolAncestors when looking up p… (#2043)
* Reduce the retry inteval during IBD (#2049)
* Improve performance of blocksdb during IBD (#2044)
* Make the ban reason visible in the QT Banned Peers table (#2048)
* don\'t send inv for mempool sync objects (#2046)
* Start pruning slow peers before we get to the max outbound connections (#2047)
* Flush the blockindex at regular intervals during IBD (#2045)
* do not use smart pointer references (#2039)
* Do not std::move(ptx) when passing a parameter (#2040)
* enhance the hd44 derivation code to handle 64 byte master seeds (#2041)
* Improve MatchFreezeCLTV() according to gandrewstone feedback
* Fix a typo in MatchFreezeCLTV()
* Introduce PUBLIC_KEY_HASH160_SIZE and use it in standard.cpp
* Remove template matching and pseudo opcodes
* Minor nits in Xversion doc and comments (#2038)
* [Electrum] Flag electrum server in xversion (#2037)
* Port wallet optimizations from old coinselection branch.
* Improve schorrsig.py reliability
* Improve reliability of compactblocks_2.py
* Do not process any more blocks if shutdown is requested
* Add ./autogen.sh and mention installing curl.
* scanelf needs the right binary file
* Remove boost build instructions.
* add patch to BDB build instructions
* Where to find bitcoin-qt
* Set the mempoolminfee to be the max of either the minrelaytxfee (#2031)
* Add git to list, update link
* net: Improve and document SOCKS code
* Do not run reomoveForBlock() if we are in initial sync (#2026)
* revert estimatesmartfee return obj for backwards compatibility (#2025)
* [QA only] Isolate QA features from PR #2022 (#2027)
* add flag to enable build against libstdc++ debug mode: https://gcc.gnu.org/onlinedocs/libstdc%2B%2B/manual/debug_mode_using.html
* Small changes for FreeBSD info
* Add freebsd build guide
* Change preparations to dependencies
* Cleanup unix build instructions
* Make sure to lock cs_blockvalidationthread during the time (#2024)
* Update OpenBSD build instructions (#2021)
* move SyncStorage to before we lock mapblock index (#1764)
* Fee estimater fix (#899)
* Wallet lock refactor and fixes (#2019)
* Re-enable -limitfreerealy in our unit tests
* [qa] Allow setting custom electrum bin path
* Erase() the blockvalidation thread id as the very last step
* Trivial: Fix DbgAssert that would never fail
* Replace missing ClearCompactBlockStats()
* expose the bloom filter capacity to the java layer so that blooms can be created with a larger capacity than elements under the expectation that they will be filled later
* Add missing lock to IsBlockInFlight()
* Cleanup requestmanager_tests.cpp
* Add tests for multi thintype blocks in flight
* Enable multi thintype blocks in flight
* #1992 Fix -Wsign-compare warnings in Qt tx graph widget
* Avoid initial package accounting if transaction is alredy in the block
* [qa] Add subscription tests for electrum server
* Add missing message types to allNetMessages[] (#2005)
* Add a description as to why we sort by time for ancestor transactions (#2003)
* add java cashlib APIs to access existing merkle block tx extractor
* Makes getLabelPublic() to work with string longer than 16 chars (#1988)
* [gitian] Strip electrcash binary before installing (#1979)
* Set the default behaviour of -limitfreerelay to zero (#2001)
* Fix mempool sync bug (#1994)
* Another pass to use c++11 nullptr across the codebase when appropriate (#1995)
* [qa] Use connectrum in QA tests
* [qa] Add connectrum electrum library
* Change the reject message from too-many-inputs to bad-txn-too-many-inputs
* Fix mempool_push.py to work with restrictInputs
* Add the reject reason to some of the other tests in this suite
* Add tweak and logic for rejecting txns that have too many inputs
* fix an undefined behavior in uint::SetHex
* update APIs to pass the blockchain identifier to address encode and decode functions, allowing cashlib to easily handle regtest, testnet and mainnet addresses. rename throwIllegalState and AddrBlockchainUnlimited for clarity
* Improve IBD when pruning
* Add limitfreerelay to getnetworkinfo()
* Add readlock when accessing nSequenceId
* Remove giving DOS points for unknown inv types
* Take out calls to RemoveForReorg()
* Add a warming about txindex database migration process to 1.7 rel notes
* Add URL for ElectrsCash changelog to the release notes for 1.7.0
* Fix computation for smoothed runtime TPS statistic
* Force the log to flush before checking the log for entries
* Fri Oct 11 2019 marecAATTdetebe.org- Update to version 1.7.0.0:
* Make Makefile.am and gitian descriptor use electrcash rather than electrs
* [electrum] Allow overriding verboseness argument
* Explictely state ElectrsCash dependencies
* Add a check for clang and update min rust version in help message
* Initialize variables in CNode for mempoolsync vars
* implement quicker shutdown using for loops around sleep until an interruptable sleep can be made
* Bitcoin Unlimited 1.7.0 release notes (#1968)
* doc updates (#1967)
* keep temp dir names short when tmppfx is used for human use, and remove wallethd backup file that is left over after the test add segwit_recovery import where its needed
* Fix tmppfx to work w/o the need of adding port seed to the path Removed ununsed import
* fix initialization ordering problem when txindex=1 and checklevel>=4, restore tmppfx behavior. Add quick-run capability to setwit_recovery test
* Turn ctor on at the correct height on mainnet (#1969)
* remove old bip135 votes (#1965)
* [doc] Update dependencies.md (#1957)
* Ignore the state of the queues when disconnecting a node (#1964)
* Adapt segwit recovery QA test to work with BU (#1963)
* Move the cleanup of the mempool sync maps to FinalizeNode()
* Don\'t request a mempool sync unless our chain is nearly synced
* A few nits
* basic implementation of mempool sync
* Set lexicographical transaction ordering on by default (#1958)
* small fixes for QA stability when run 100s of times
* Add some range protections to tx rate graph widget
* Add transaction rate graph to Qt debug UI
* Refactor to return all txn rate stats atomically as a group
* Expose some local variables in the update txn rate method
* implementation of a transaction forwarding algorithm that is aware of peer mempool policy and pushes transactions to nodes only when they will be accepted by the peer.
* gitignore Visual Studio .vs directory
* Remove assert for sync_with_ping()
* Also add waitFor in send_txs_and_test
* Add waitfor() statements to schnorrmultisig-activation.py
* temporarily disable live dld and tests
* misc fixes for android compiler of problems caused by recent commits
* Erase the entire range at once rather than looping through the range
* Turn mapBlocksToReconstruct into a multi-map
* Fix lock guard definition in lockorder.h
* [qa] BU adaptions to abc-schnorrmultisig-activation
* Cleanup reject_code in abc-schnorrmultisig-activation
* [qa] Test for new Schnorr multisig activation
* better error message for mandatory-flag tx rejections
* Add unit tests for CheckMinimalPush()
* Misc small changes (#1948)
* Make test framework produce lowS signatures
* for compatibility with unit tests, create a global boolean variable that indicates when lockdata is destructed
* logical not the check, because assert/dbgassert triggers when the boolean FAILS
* [qa] BU adaptions for minimaldata test
* MINIMALDATA consensus activation
* Add activation code for Schnorr mutlisignature
* fix formatting
* Fix warning related to the wrong use of static_assert in interpreter.cpp
* make CheckMinimalPush available to codebase
* [rpc] Improve error on method not found
* [qa] Better assertion on unexpected rpc error code
* [qa] allow passing headers to msg_headers
* [qa] Add P2PDataStore
* [qa] Add assert_debug_log
* [qa] add assert on missing connection
* [qa] add optional hex encoding to gethash
* [qa] allow custom scriptPubKey in create_coinbase
* [qa] Add function \'make_conform_to_ctor\'
* Allow log to be both output to stdout and file
* add doxygen comments
* reword trylock comment, make it clear when these added locks are removed
* remove the boolean available data member from LockData struct
* cleanup deadlock errors for clarity and capitalization.
* CLockOrderTracker data member names now all start with lowercase letters
* add missing lock on critical section for method CanCheckForConflicts
* make class variables protected by default, not private
* Assert CPubKey::ValidLength to the pubkey\'s header-relevent size
* move lock before count to solve potential segfault issue where map can be read and written to at the same time
* Use ptrdiff_t type to more precisely indicate usage and avoid compiler warnings
* Scope the ECDSA constant sizes to CPubKey / CKey classes
* Ensure that ECDSA constant sizes are correctly-sized
* emove redundant `= 0` initialisations
* Specify ECDSA constant sizes as constants
* Add comments
* Fix potential overflows in ECDSA DER parsers
* rpc: faster getblockstats using BlockUndo data
* Add bitfield to cashlib since its required in the interpreter. Add addtl tests and cleanup.
* Implement new checkmultisig trigger logic and execution logic. Cherry-pick from ABC and merged. Summary: See specification at https://github.com/bitcoincashorg/bitcoincash.org/pull/375 Differential Revision: https://reviews.bitcoinabc.org/D3474 Also include elements of: D3472 and D3265
* add missing DEBUG_LOCKORDER defines
* Update gitian descriptor yaml files to use 1.7 version
* Bump version to 1.7.0
* clear the lock order tracking at the end of the deadlock tests
* add a test for lock order checking using two separate threads
* temporarily disable test 9 until feature is implemented
* rebase fixes
* update makefile and fix formatting
* move lock ordering to its own file, track more information
* refactor locklocation into its own file
* remove unused headers
* move deadlock detection to its own folder
* only check lock ordering when we are not locking recursively
* disallow naming critical sections \"cs\" for easier debugging
* make GetTid function inline
* add basic test for lock order tracking
* add tracking for lock ordering for non try locks
* add typedef lost during rebase
* add some doxygen comments to functions declared in header
* reorganize function order and remove HasAnyOwners from header
* remove second declaration of LocksHeld
* fix formatting
* dont call SetWaitingToHeld for try locks, they should never be waiting
* add some debug asserts for missing waiting locks
* fix issue where a try lock would be considered waiting, try never waits
* add held locks even if waiting locks do not exist for some reason
* skip deadlock detection when recursively locking
* do not erase locks from held map that we have recursively locked them and have more than 0 remaining locked
* store the locktype in the locklocation struct, add getter for it
* fix issue with try locks not being shown in heldlocks maps
* add missing lock in SetWaitingToHeld (commit lost in rebase)
* clean up some syntax nitpicks, fix formatting
* replace the now removed CSharedUnlocker with manual locking/unlocking
* debug assert if we attempt to push_lock for an unsupported mutex type
* change tests to rely on counters instead of sleeping/timing
* remove functions from emptysuite so it is now empty
* fix incorrect logic, a thread with only readlocks can deadlock
* initialize bitbuf_size to 0 to avoid filling buffer when not needed
* remove boost include that is no longer needed
* change isExclusive bool to an enum, remove extra function header decs
* remove CSharedUnlocker
* add defines to deadlock tests so they only run when debugging lockorder
* add missing fastrandomcontext initialization
* CSharedUnlocker now uses the lockstack when DEBUG_LOCKORDER is defined
* add clarification comment about a continue in deadlock detection logic
* add comments explaining the lock ordering being tested in each test
* add new lockstack delcaration to globals and utility binaries
* hackfix to get around segfault when dealing with old openssl mutex array
* add tests for new deadlock detection system
* implement new deadlock detection system
* fix needless ifdefs to a single ifdef for DEBUG_LOCKORDER for the file
* move getTid() from sync.cpp to threaddeadlock.h
* add (empty) threaddeadlock files to be used for new deadlock detection
* minor refactoring of class ordering for consistency
* remove entire current deadlock detection system
* update travis centos config (#1934)
* [qa] Add tests for electrum cashaccounts
* convert some python2 tools to python3, run optimize-pngs.py to crush png images
* [qa] support debug build of electrscash
* [qa] add timeout to electrum sockets
* [electrum] electrs v0.7 -> ElectrsCash v1.0
* Add missing header to makefile
* Bump rust to 1.37.0
* fix formatting
* [rpc] Switch to BCH (was stats) in getblockstats
* rpc: faster getblockstats using BlockUndo data
* determine if param is a number string by length, not content.
* Allow getblockstats to use either the hash or a numerical block height
* Cashlib random bytes fix
* interpret the 2nd getblockstats parameter as json
* Restore the previous version of forEachThenClear
* Install dependencies using apt for \"#x86_64 Linux\"
* Give more time to travis to build BU
* Fix potential deadlock
* Rename the secondary commit queue from just q to txCommitQFinal
* Consolidate mempool clearing code in case of reorg across hard fork block
* refactor: add a function for determining if a block is pruned or not
* Replace median fee rate with feerate percentiles
* Fix a bunch of warnings
* Update cashlib.py script error enumerator
* No need for anonymous namespace for set_{success,error}() definition
* Actual formatting for bitbitfield.
* and related unit tests
* Add new files to the list of files to auto format
* Add a facility to parse and validate script bitfields.
* Move set_success and set_error to script/script_error.h
* Update guiutil.cpp service flags list
* clear mempool during blockchain rewinds (#1902)
* RPC: Introduce getblockstats to plot things (#1913)
* Temp commit to debug travis issues
* Use black magic for popcount.
* CPU Miner Enhancements -- Follow-up
* CPU Miner Enhancements (#1904)
* Add #include guard to cashlib.h
* Add missing copyright header to cashlib header files
* Update cashlib.py script flags list
* limit the txes sent to the inqueue in cases where many transactions have been received but not processed, since they will need to be pulled back during every mempool commit phase
* Fix a bash syntax error in .travis.yml
* Update tweak label use to set Nov \'19 mining fork time
* Initialize nov2019ActivationTime and nMiningForkTime using a const rather than a literal
* Add unit tests for Nov 2019 activation code (IsNov2019Enabled)
* Clear mempool and txs queue in case we get a reorg across Nov 2019 block activation
* Fixed compile error for --enable-debug on non-Linux
* Add helpers to use in Nov 2019 protocol upgrade MTP based code activation
* Fix a few more nits
* make sure CScript << vector generates MINIMAL_DATA compliant script binary
* Remove May, 15Th 2019 activation code
* remove SCRIPT_ENABLE_SCHNORR flag and clean up tests
* remove effect of SCRIPT_ENABLE_SCHNORR flag
* Remove Schnorr activation
* Add script tests with valid 64-byte ECDSA signatures.
* remove four duplicate tests from script_tests.json
* Make nTotalPackage and nTotalScore atomic
* Use a for loop instead of while when iterating through the mempool.
* A variety of nits
* Accept SegWit recovery transactions if acceptnonstdtxn=1
* Fix incorrect node being checked in segwit recovery test
* remove another unused variable
* remove ComparisonTestFramework dependency from segwit recovery test
* remove unused variable
* clean up script_tests -- move segwit recovery into static json
* Clean up Segwit Recovery feature
* [travis] timeout after script_b.sh only if we need to run unit tests
* Format bitcoin-miner.cpp
* adjust forkid error message
* return false when inputs are missing. we cant continue with missing data
* bitcoin_miner: Made CPU miner thread safe by using per-thread randgen
* CPFP (AGT)
* Use ancestor-feerate based transaction selection for mining
* add private key parsing to cashlib (#1892)
* add missing script error string translations (#1884)
* fix mutex self-deadlock in stat and add regression test (#1887)
* Fix transactions per second data (#1891)
* [script] simplify CheckMinimalPush checks, add safety assert (#1882)
* [electrum] Option to shutdown node if electrs dies (#1866)
* Add script tests (#1881)
* fix spelling issue, madatoy -> mandatory (#1886)
* fix ping latency time to use stopwatch time (#1880)
* [Electrum] Support passing arguments to electrs (#1874)
* if not pruning, set preallocation of block/undo files to their max size (#1873)
* SCRIPT_ENABLE_CHECKDATASIG flag not needed in Schnorr unit tests (#1878)
* Update electrum documentation (#1876)
* Using cashaddr econding by default for addresses. (#1877)
* Validaterawtx (#1726)
* Standard flags cleanups (#1847)
* Time cleanup (#1872)
* [qa] Enable electrum if binary has been built (#1869)
* Make it so that uacomment[] are correctly reported in subver string (#1830)
* During IBD we need to flush cache as infrequently as possible. (#1868)
* Fix a compiler warning showed when native compiling on a 32 bit linux machine (#1839)
* Terminate rpc-tests.y if there\'s no test to run. (#1870)
* Refactor cache configuration settings (#1867)
* Clarify the debug ui transaction pool naming (#1849)
* Significantly reduce the number of dbcache lookups (#1864)
* Simplify the intialization of g_txindex and txindex_db
* The caller should lock cs_main for FindForkInGlobalIndex()
* Fix up a bad rebase
* Tidy up cs_main locking
* Add python tests
* Change BlockUntilSynced to chain to IsSynced().
* Remove the Read and Write flags for txindex
* Do not writebest block if we are shutting down but have not written the txindex data
* Set the fReindex flag when starting txindex
* Adjust parameter naming to be more in alignement with BU\'s codebase
* Don\'t allow rpc until the txindex is fully synced
* Tidy up the progress messages for the upgrade
* Remove unnecessary check for fTxIndex in init.cpp
* Fix error in params
* Commit the new txns to the txindex database in ConnectBlock()
* Remove unused functions
* Move txindex logic from GetTransaction() to TxIndex::FindTx()
* [init] Initialize and start TxIndex in init code.
* [index] TxIndex method to wait until caught up.
* [index] Allow TxIndex sync thread to be interrupted.
* [index] TxIndex initial sync thread.
* [index] Create new TxIndex class.
* [db] Migration for txindex data to new, separate database.
* [db] Create separate database for txindex.
* Initialize the dbcache size and nCoinCacheMaxSize for the unit tests
* move debug defines to configure from util.h
* get cashlib compiling on android, and add JNI calls in android and linux. This code makes no semantic changes outside of the cashlib android build, although many files needed to be touched due to naming conflicts and the need to conditionally not compile some APIs to limit the dependencies that get pulled into the android build
* fix format
* UPnP bug fix: When disabling UPnP from options dialog we get a hang.
* Add UpdateBlockAvailability() when we handle Thinblocks or CompactBlocks
* Make sure to lock cs_mapBlockIndex when we RaiseValidity()
* Pruning: fix lock order issue and potential deadlock
* Update comments for ProcessGetData() and prevent taking lock if not needed.
* Fix compiler warnings
* Make nCoinCacheMaxSize atomic
* If not on windows, replace boost once with std once replace boost mutex with std mutex.
* Fix checkblock_test hidden failure (#1834)
* Implementation of variable keycheck mask for CIblt (#1819)
* A few small fixes to trimming the coincache during IBD or after txadmission (#1813)
* Fix edge condition where we try to connect an invalid chain but… (#1838)
* Fix hang on shutdown when upnp is enabled (#1856)
* Show the peak transaction per second rate in the debug ui (#1842)
* Update docs to agree with commit 12e21ec4b
* remove unserialized fields from CGrapheneBlock and CGrapheneSet
* fix broken image link
* add specification for Graphene version 2.1
* small edit to iblt spec
* small edits to fast filter
* fix formatting in fast filter
* add spec for fast filter
* minor changes
* initial draft of IBLT spec
* Tidy up request manager block type checking so that we only have to make changes in one place.
* Add additional unit tests for segwit recovery
* [travis] Re-enable unit tests for win64
* [travis] Disable unit tests for win32/64 only via RUN_TESTS=false
* Use temporaries when evaluating atomics in an \'if\' statment
* Fix edge condition where we try to connect an invalid chain
* Run unit test without using travis_wait
* Print folding log statements for unit tests only if we run make check
* [qa] Add electrum address balance test
* [qa] electrum helper functions
* [qa] Add ElectrumConnection
* [qa] add cashaddr module
* [qa] calc hash on prevtx in create_transaction
* Thu Jul 18 2019 marecAATTdetebe.org- Update to version 1.6.0.1:
* update head commit hash (#1848)
* Add BUcash 1.6.0.1 release notes (#1844)
* Criptolayer nodes seeder are going to be decomissioned (#1841)
* Fix invalid memory access in CScript::operator+= (#1846)
* debugging electrs deterministic build
* move electrs forward
* Run unit test without using travis_wait
* Print folding log statements for unit tests only if we run make check
* Tue Jul 09 2019 marecAATTdetebe.org- Update to version 1.6.0.1:
* Bump BU version to 1.6.0.1 (#1835)
* ensure that the wallet is fully synced before proceeding with c… (#1833)
* Track in-progress checks (#1832)
* Fix incorrect validation state when connecting many blocks (#1828)
* Release the noderef upon disconnect. (#1831)
* Do not find xthin peers or disconnect non network peers during reindex (#1812)
* fix an early possible free for wallet transaction objects (#1826)
* Use nMaxConnections plus some padding as a limiter on set size (#1824)
* Add a few timing points to ctor.py (#1822)
* Use a set to ensure we don\'t double count peers (#1821)
* Remove support for requesting a THINBLOCK via getdata.
* fix formatting
* Prevent deadlock of CPU miner and TX commit thread
* Remove cs_main lock when syncing with wallets
* Fix BIP37 processing for non-topologically ordered blocks
* Also ban BitcoinUnlimited SV type peers
* spawn electrs in a seperate process group so spurious SIGHUPs don\'t kill it
* move unit tests to use a temporary directory so they don\'t overwrite an ongoing regtest
* get result in the try then return instead of returning inside the try
* remove unusued OnPostCommand slot and its corresponding signal
* Declare aux variable only if we are actually using it.
* Avoid 1 << 31 (UB) in calculation of SEQUENCE_LOCKTIME_DISABLE_FLAG
* mkdir src
* Delete unused files
* Fix typo
* Fix typos
* Remove old gitian instructions
* fix a problem where a stat may be deleted but its timeout handler is simultaneously running. This fix makes all stat APIs thread-safe. If subsequent performance testing finds that this is inefficient, it is still possible to leave the update operations unlocked and only use the lock in the destructor and the timeout(). This will then rely on the caller to ensure non-simulaniety of the update operations, or risk losing an update. Also remove unnecessary lock in sendmany.
* Disable eletrumserver unit tests if boost version is lower than 1.65
* [electrum] Make host cfg independent of port
* [util] Add UnsetArg
* Bump electrs to v0.7.0
* [rpc] Fix electrum monitor parsing of long ints
* document return value for EraseOrphanTx()
* Get the new iterator when erasing from the map;
* Erase orphans before enqueuing them.
* Cleanup CVariableFastFilter (#1790)
* travis: Properly cache and error on timeout (MarcoFalke)
* travis: Use absolute paths for cache dirs
* travis: Fix caching issues
* Add --enable-debug configure flag to one of the travis jobs
* [travis] fix unit tests execution
* Add CHECKDATASIG to script standard flags (#1750)
* Remove initializtion of nLastBlockSize in the requestManager constructor (#1792)
* Ban SV peers by checking the user agent string
* Add Last Block Size to the Debug UI (#1785)
* Change May 2019 activation code to work by block height (#1780)
* Update testnet and mainnet checkpoints list (#1770)
* Fix bug in limitfreerelay (#1782)
* The last of the thinrelay refactors (#1755)
* Initialize struct
*QuickStats fields to 0 upon construction (#1768)
* Replace DbgAsserts() with if statements when checking peers connected (#1777)
* Remove unused var in graphene.h and double inclusion in bitcoind.cpp (#1778)
* fix inclusion order for librsm
* remove lock tracking, rsm is guarenteed to not deadlock itself
* add missing $(LIBRSM) include to bitcoin cli, tx, and miner
* replace NULL with nullptr
* add missing header include, fix formatting
* add rsm to lockstack
* A few relatively minor thinrelay changes (#1754)
* Cleanup finalize node (#1753)
* Make excessiveblocksize parameter and setexcessiveblock RPC command conistent (#1747)
* remove old gitian build instructions, we have docker for this now (#1774)
* If a block fails acceptance then set the fProcessing flag back to false (#1776)
* Remove sv features (#1722)
* properly release cnode refs upon shutdown (#1775)
* Cleanup and optimize commitq entry (#1732)
* Remove bitcoinCashForkBlockHash unused variable. (#1765)
* Add BU security policy document to the repo. (#1771)
* Add BCH protocol upgrades timeline (#1773)
* remember git clone, and some links (#1772)
* Reduce the scope of write lock on cs_mapBlockIndex in AcceptBlock (#1769)
* Add syncronisation point to wallet.py when doing maintenance tests (#1766)
* Tidy up notify.py and add one test at the end (#1763)
* Use nullptr instead of NULL for all files in src/ (#1703)
* Update copyright date on all file under src/ (#1702)
* [UI] Save column width/sort for peers tables on debug dialog (#1762)
* Make sure to lock cs_mapBlockIndex when accessing nStatus or nSequenceId (#1715)
* Do not relay transactions if the bloom filter is empty (#1758)
* Reduce the message max multiplier (#1743)
* Add a few asserts (#1752)
* fix issue where wallet.py does not actually run the maintenance tests (#1756)
* Fix for license not being valid (#1757)
* Update COPYRIGHT_YEAR in clientversion.h to 2019 (#1759)
* Avoid triggering undefined behaviour in base_uint::bits()
* pull rsm 1.0.1 from upstream (#1720)
* on thread group deconstruct interrupt and join threads instead of detach (#1742)
* Update validation time for re-requested txns (#1744)
* Refactor Graphene out of CNode (#1708)
* add missing header ifdef (#1749)
* [syntax only refactor] rename hash.h to hashwrapper.h because there is a hash.h in secp256k1. (#1748)
* remove boost from tweaks (#1746)
* Set to nullptr after delete (#1719)
* Better dbcaching for giga-net (#1738)
* Disable the UI versionbits warning message (#1733)
* [elects] Bump to version 0.6.1 (#1730)
* change READLOCK to WRITELOCK (#1740)
* Add a couple of more syncronisation points to ctory.py (#1737)
* check for DISCONNECT_UNCLEAN instead of !fClean (#1741)
* Do not re-request a block if it is currently being processed (#1694)
* Solve a few performance issues in SendMessages() (#1736)
* fix the error we are looking for
* Increase the max dbcache size from 16GB to 32GB
* adjust wallet.py test to account for a change in param conversion
* disable invalid param type check, param types now validated serverside
* remove getrawtransaction duplicate entry
* add missing params set
* add rpc param conversion to the server side execute
* Remove check for CSV transactions in accepttomemorypool
* Disconnect instead of ban when we exceed request limit for thin objects.
* Simplify the code
* Properly increment the nNumRequests counter.
* Fix statistics for time to validate a compact block
* Properly initialize CVariableFastFilter members in default constructor (#1713)
* [Build Scripts] - Update Windows build scripts wget dependency to v1.20.3 (#1707)
* add an environment variable that allows you to push configuration into every bitcoin.conf file generated by the test framework (#1686)
* [rpc] Improve getelectruminfo (#1692)
* Improve reliability of ctor.py
* Use $(top_srcdir) instead of ${PWD} to determine current path in electrs target
* Remove redundant NULL checks after new
* Remove redundant check (!ecc is always true)
* Remove duplicate uriParts.size() > 0 check
* Avoid NULL pointer dereference when _walletModel is NULL (which is valid)
* Remove find by tx hash method from CBlockHeader
* Remove outdated comments
* Remove unnecessary cs_main lock from rest.cpp
* add param conversion for getrawtransactionssince (#1711)
* Update forkscsv_tests.cpp
* Add bip68 activation heights to chainparams.cpp
* Add LOCK for inode.cs_vSend to access inode.vAddrToSend
* Add READLOCK around mapOrphanTransactions and mapOrphanTransactionsByPrev
* Remove unused variable in unlimited.cpp
* Check nVersion before sending out sendcmpct p2p message: fixes #1701
* Fix comment about s in schnorr sigs
* [wallet] Close DB on error
* Remove nonnull warning when calling secp256k1_schnorr_sign with NULL noncefp
* Add schnorr verify benchmark
* Add schnorr sign benchmark
* fix electrs documentation link (#1699)
* Fix Qt\'s rcc determinism for depends/gitian (ARM) (#1695)
* Break up script_build() in script_tests.cpp
* Thu Apr 25 2019 marecAATTdetebe.org- Update to version 1.6.0.0:
* Fix Qt\'s rcc determinism for depends/gitian (ARM) (#1696)
* Update 1.6.0 release notes commits list (#1691)
* Use the new paramters name in BU electrum integration documentation (#1690)
* [trivial] fix two typos in ConnectBlockScopeExit comments (#1689)
* Add ca-certificates to osx gitian descriptor (#1688)
* Two more nits (#1687)
* [electrum] More electrum configuration options (#1684)
* a couple of little nits (#1685)
* Add BUCash 1.6.0 release notes (#1671)
* Fix compact block compression data in getnetworkinfo (#1683)
* [electum] Fix cookie dir path (#1682)
* release thread handles when group is destructed (#1680)
* Make sure to wait for all script validation threads to finish (#1678)
* make schnorrsig.py issue many fewer tx (#1681)
* Add electrs to gitian output
* Update Rust from v1.28.0 to v1.32.0.
* Introduce Rust to depends system.
* Build cashlib on travis so that we could run tests based on that on x… (#1662)
* [Builds on 1611] Refactor compact blocks out of CNode (#1623)
* use rsm_debug_assertion in configure instead of debug_assertion in util (#1676)
* add unsigned integer types to tweakbase (#1674)
* Basic integration with the electrum server electrs (#1633)
* Refactor Xthin data out of CNode (#1611)
* add schnorr activation test, expand cashlib with datasig, fix lock on xversion (#1672)
* [util] Introduce utilprocess (#1645)
* Qt: Use _putenv_s instead of setenv on Windows builds
* introduce high and low version preferences for graphene (#1670)
* add get for unsigned ints from univalue class (#1665)
* fix bip68-112-113-p2p.py and improve reliability (#1673)
* add missing diff for 1589
* [rpc] Allow passing int for verbose in getblock
* Fix getblocktemplate_proposals.py for the transaction size limitation
* Fix spurious failures in bipdersig.py
* Temporarily disable maxblocksinflight.py
* Fix spurious failures in mempool_packages.py
* Update rpm travis build and doc instructions to use boost 1.66.0
* Schnorr signature activation
* Add schnorr activation code based on MTP
* wrap lockedtime in DEBUG_LOCKTIME define
* Partial port of \"Add activation code for SEGWIT_RECOVERY\" (D2479)
* Add SCRIPT_ALLOW_SEGWIT_RECOVERY
* Partial port of Core\'s 449f9b8d (BIP141)
* [util] throw proper exception in IsStringTrue (#1659)
* Clear version bits warning message if conditions normalize. (#1660)
* Allow Graphene to use variant of CFastFilter (#1603)
* Remove a couple of Misbehaviours (#1653)
* Remove bip9-softforks.py (#1658)
* Activate November 15th 2018 upgrade by height (#1644)
* implement recursive_shared_mutex (#1591)
* Bump ver 1.6 (#1657)
* Rename USE_CLANG to NODEPENDS (#1656)
* Fix a comparison warning in interpreter.cpp
* add simple test for reverse_iterator
* Rename member field according to the style guide.
* Introduce src/reverse_iterator.h
* Add script_tests.json.gen to .gitignore
* Improve reliability of sync_with_ping()
* Improve reliablility of sendheaders.py
* Improve reliablility of p2p-acceptblock.py
* add centos build to travis (#1637)
* implement NODE_NETWORK_LIMITED (BIP 159)
* Remove expedited log message. (#1642)
* don\'t run the test if cashlib is not available for this platform
* Set a boolean to indicate whether we really have a competing validation (#1641)
* add schnorr enable tweak and python tests using cashlib that generate a lot of schnorr signed transactions
* add rpm build instructions (#1636)
* restrict multiple public labels (#1640)
* Set default minlimitertxfee to 1 Sat per byte.
* Check that a Public Label is within size constraints (#1638)
* add Schnorr signing module to test_framework [alternative implementation]
* [util] Add method http_get
* fix typo and signatures because the deterministic signature algo changed
* OpenSSL 1.1 API usage updates
* resolve issue where makefile doesn\'t properly start lcg_tests
* Travis: Save cache when compilation took very long
* [build] Add missing header
* [doc] Remove outdated Gitian build guide
* fix missing flags in script_tests and format code
* [qa] Support setup_clean_chain, extra_args and num_nodes
* Add an algorithm identifier to the nonce generation for ECDSA signatures
* Update boost system m4 macros to latest upstream
* [depends] Boost 1.66.0
* Enable Schnorr signature verification in CHECK(DATA)SIG(VERIFY)
* fix var contention in ram miner
* add SCRIPT_ENABLE_SCHNORR flag
* formatting
* port schnorr sigcache changes
* add include directory to get schnorr files for certain tests
* Add CKey::SignSchnorr and CPubKey::VerifySchnorr
* API rename: Sign->SignECDSA, Verify->VerifyECDSA
* [secp256k1] Implement Schnorr signatures
* delay was completing on the wrong result, causing some test failures (#1622)
* Fix compile warning regarding out of order intitialization (#1621)
* Clear graphene data first before requesting failover block (#1620)
* Add Try/Catch block to HandleBlockMessageThread() (#1616)
* DRY refactor in rpc/blockchain.cpp (#1402)
* [rpc] Allow fetching tx directly from specified block in getrawtransaction (#1612)
* [rpc] Add initialblockdownload to getblockchaininfo (#1606)
* Fix typos in net_processing and requestManager comments (#1601)
* Command line arg for bloom targeting showing incorrect value (#1613)
* Fix initializations out of order compile warning (#1614)
* Seed IBLT hash functions (#1582)
* Port Core PR 15549: gitian: Improve error handling
* ADDR message handling (#1602)
* Use SipHash for cheap hashes in Graphene (#1551)
* Check if datadir is valid (#1605)
* Remove the check that enforce first block in UAHF (Aug 1st, 2017) is bigger than 1MB
* Remove the check for IsUAHFforkActiveOnNextBlock() in tx admission process
* Coalesce forks helper all in the same file
* Simplify and remove dead code from uahf_fork.cpp
* Port core PR #10775: nCheckDepth chain height fix
* add a few batch rpc calls (#1575)
* add missing space
* More code marked as code
* Mark code as code in Markdown
* markdown lists
* No longer supported OS removed
* Debian/Ubuntu uses systemd now
* Add tests to check proper deserialization of CExtKey and CExtPubKey
* Deserialized key should be the correct size.
* add net magic override (#1445)
* Cleanup XVal (#1588)
* add HasData() methods to CTransaction (#1598)
* Assert proper object type for univalue push_back and pushKV when debug enabled (#1589)
* Reset default -g -O2 flags when enable debug
* Headlines consistency
* removed unused qt46 pathces
* Removed unused patches from qt.mk
* Run bitcoin_test-qt under minimal QPA platform
* Minimal version of Qt we support is 5.3.x
* Fix a linker error while producing bitcoin-qt executable.
* Remove duplicate code from bitcoin_qt.m4
* depends: qt 5.9.7
* depends: Remove unused Qt 4 dependencies
* Update Qt version in doc/dependencies.md
* depends: disable unused qt features
* depends: qt: avoid system harfbuzz and bz2
* depends: fix bitcoin-qt back-compat with older freetype versions at runtime
* depends: fix qt determinism
* Add aarch64 qt depends support for cross compiling bitcoin-qt
* Fix Qt\'s rcc determinism for depends/gitian
* depends: use MacOS friendly sed syntax in qt.mk
* Add depends 32-bit arm support for bitcoin-qt
* Upgrade Qt depends to 5.9.6
* Fix depends Qt5.9.4 mac build
* Ugrade Qt depends to Qt5.9.4
* Update helper text for outscript= to reflect actual usage (#1572)
* Build gitian using Ubuntu 18.04 based docker containers (#1594)
* Add table of contents to the long developer-notes file
* Headers in developer-notes
* Add top bar back
* Upgrade to std::thread and std::chrono (#1553)
* Blockstorage logic fix (#1590)
* Support larger blocks for compact blocks
* Add DbgAssert in compactblocks
* Remove the clearing of thintype data in parallel.cpp
* Prevent requesting get_blocktx, get_grblocktx and getblocktxn too far from tip
* Remove checks graphene, thinblock or compactblock capable
* Reorder getnetworkinfo order for compact stats and update help text for missing outputs
* Add compact block statistics to Debug window UI
* A variety of nits
* remove print statement from ctor.py
* Move thintype request tracking to the request manager.
* fix rebase
* Only send SENDCMPCT message is compact blocks is enabled.
* Refactor IsBlockRelayTimerEnabled method
* Use debug log level cmpctblock instead of cmpctblocks
* Fix bug: ABC nodes not receiving compact blocks
* Consolidate thin type object request tracking
* Add p2p test for BIP 152 (compact blocks)
* Add support for compactblocks to mininode
* Remove redundant ThinType from ThinTypeRelay class
* Fix format
* Fix a few tests
* Add get_thin message request
* Add request compact block as failover for graphene
* Introduce BU_XTHIN_VERSION
* Tidy up compactblock statitics gathering
* Update IsCompactBlockValid()
* Add some blockencodings tests
* Turn off compact blocks for sendheaders.py
* simplify code for requesting full blocks
* request full block if too many hashes to request
* Implement Compact Blocks (BIP 152)
* initialize uint256 to null
* Use MakeTransactionRef in blockencodings.cpp
* Implement SipHash in Python
* add blockencodings.cpp/.h to .formatted-files
* Remove type and version from serialization ops
* Add log level CMPCT for compact blocks
* Add reconstruction debug logging
* Add partial-block block encodings API
* Add protocol messages for short-ids blocks
* Minor text modification to thin timer.
* remove redundant call to ClearThinTypeBlockInFlight
* clear blocks in-flight instead of block data
* Avoid clearing thintype block data in parallel.cpp (#1595)
* remove unnecessary cs_main lock
* fix deadlock and add detector to CNodeStateAccessor
* Fix unbalanced pushKV parenthesis and an instance of Pair()
* Add extra help text to importprivkey
* Add links to windows README
* remove checksum check since it wastes CPU for no benefit
* Update FinalizeNode()
* remove unused, nonexistent extern decl
* Remove core specific action
* Update ppa link from bitcoin-unlimited/+archive/ubuntu/bu-ppa to /~bitcoin-unlimited/+archive/ubuntu/bucash
* trivial - remove number left over
* Headlines, lists
* Syntax, headlines
* Remove version number, delete link
* add copyright, remove irc channel
* syntax
* Linebreak
* Remove top links, minor cleanup
* Links for online resources
* Add doc/bips-buips-specifications.md link
* Links in README.md
* Fix links
* Delete (now almost empty) doc/README.md
* Move from doc/README.md to /README.md
* Add links to support/discussion, remove old (core centric) links
* Delete quick-install.md
* Remove reference to Ubuntu nightly ppa. Hasn\'t been updated for years.
* Merge text about compiling from source and getting dependencies
* Tidy up INSTALL.md, and remove duplicate info
* Move quick installs to INSTALL.md
* Move setup and Initial Node Operations to INSTALL.md
* Make INSTALL.md file more informative
* Make INSTALL.md the place for install info
* Licens info in /README.md only
* The right part is code, the rest is text
* Headlines instead of broken lists
* Turn list into headlines
* Remove link to dnsseedpolicy
* Fix links
* Headers more pretty
* Remove word \"reference\", link to README.md
* Markdown formatting of headlines
* make code stand out
* Update to martdown syntax
* Delete dnsseed-policy.md
* check if smId is attr before checking for nonetype. fixes \"AttributeError: \'ScriptMachine\' object has no attribute \'smId\'\" error
* Squashed \'src/univalue/\' changes from 07947ff2da..51d3ab34ba
* Use UniValue.pushKV rather than push_back(Pair())
* Port Core #14164: Update univalue subtree
* Squashed \'src/leveldb/\' changes from 64052c76c5..524b7e36a8
* Squashed \'src/leveldb/\' changes from c521b3ac65..64052c76c5
* Fixed typo
* Explicitly set py3 as the interpreter used by symbol-check.py
* [contrib] fixup symbol-check.py Python3 support
* Add stdin, stdout, stderr to ignored export list
* Modified in_addr6 cast in AppInit2 to work with msvc.
* Use IN6ADDR_ANY_INIT instead of in6addr_any
* GCC-7 and glibc-2.27 compat code
* fix tsan: utiltime race on nMockTime
* Ditch boost scoped_ptr and use C++11 std::unique_ptr instead
* Remove cs_main from getblockcount(), GetDifficulty and getbestblockhash()
* Only check FindNextBlocksToDownload() if chain is not synced
* Add missing lock: cs_objDownloader in FindNextBlocksToDownload()
* Create error(ctgr, ...) that allows us to specify a logging category (#1560)
* reduce number of nodes (resource usage) in getlogcategories.py (#1564)
* [Windows Build Scripts] - Update toolchain and dependencies versions. (#1550)
* Update cleanup script to remove previous build outputs (#1540)
* update dependency chart to reflect changes made in #1562
* Simplify and update expedited code. (#1526)
* Move to cxx 14 and bump boost min ver to match (#1562)
* Use canonical ordering in graphene (#1532)
* Reduce log spam (#1561)
* Explicitly fold sub tasks in travis script step
* Fix execution path in after_script and after_failure steps
* travis: avoid timeout without saving caches, also enable qt (x86_64, arm)
* use export LC_ALL=C.UTF-8
* Make script exit if a command fails
* abort script in END_FOLD on non-zero exit code
* move script sections info individual files and comply with shellcheck
* Update zmq to 4.3.1
* add /doc/Doxyfile to .gitignore (#1556)
* Disable a debug log category if prefixed with \'-\' (#1254)
* net_processing: Remove gotWorkDone variable (#1520)
* Refactor Script interpreter as a \"virtual machine\" encapsulated by a class. Add py debugger (#1545)
* Doxygen (#1552)
* Properly initialize templates in Solver() (#1555)
* Configure travis to use an Ubuntu 18.04 docker container (#1450)
* Modify clang-format.py to make it work with python 3.x (#1449)
* Reduce scope of cs_main in ThreadCommitToMemPool() (#1434)
* implement xversion changeable key (#1503)
* Fix rescan=false not working in importprivkey (#1549)
* Fix requestmanager_tests.cpp assertion (#1547)
* Improve optimization (#1525)
* Refactor tracking of thin type blocks in flight. (pre-req for compact blocks) (#1524)
* fix behaviour now that thread_local is removed
* UI - Re-enable word wrap in peer details header
* Add release notes for BUcash 1.5.1.0
* Remove thread_local storage qualifier from logbuf declaration
* It seems we are ready to release final BUcash 1.5.1 (#1535)
* rpc: Prevent `dumpwallet` from overwriting files
* ppa update (#1529)
* Add a new parameter to define the duration of Graphene and Thinblock preferential timer. (#1531)
* Switch ctor on earlier in the init process if we are on the BCH chain
* Remove a useless assert in PruneBlockIndexCandidates()
* Add Graphene specification v1.0 (#1522)
* Improve Graphene decode rates by padding IBLT (#1426)
* Extend CTransactionRef into a few more areas (#1472)
* Proper multi-threaded multi-line logging and no more empty lines (#1441)
* zerochecksum: More comprehensive testing, test fix
* mininode: Save exceptions for later evaluation
* mininode: Allow to specify explicitly whether to send zero checksums
* Move LoadMempool() and DumpMempool() to txmempool.cpp/.h
* Create a default constructor for CTxInputData and use it
* fix format
* Control mempool persistence using a command line parameter.
* Add savemempool RPC
* Add return value to DumpMempool
* Read/write mempool.dat as a binary.
* [Qt] Do proper shutdown
* Allow shutdown during LoadMempool, dump only when necessary
* enqueue transactions when loading the mempool
* Add DumpMempool and LoadMempool
* Add mempool.dat to doc/files.md
* use uint32_t from stdint.h instead
* DbEnv constructor parameter explicit cast to avoid compilation error in macOS
* Fix format
* Make code more readable
* tests: Fix incorrect documentation for test case cuckoocache_hit_rate_ok
* Use explicit casting in cuckoocache\'s compute_hashes(...) to clarify integer conversion
* scripted-diff: Rename cuckoo tests\' local rand context
* Decrease testcase sizes in cuckoocache tests
* Add unit tests for the CuckooCache
* add cuckoocache.h to .formatted-files
* Add CuckooCache implementation and replace the sigcache map_type with it
* Fri Dec 21 2018 marecAATTdetebe.org- Update to version 1.5.1.0:
* It seems we are ready to release final BUcash 1.5.1 (#1535)
* ppa update (#1529)
* Add a new parameter to define the duration of Graphene and Thinblock preferential timer. (#1531)
* Switch ctor on earlier in the init process if we are on the BCH chain
* Remove a useless assert in PruneBlockIndexCandidates()
* Add Graphene specification v1.0 (#1522)
* Improve Graphene decode rates by padding IBLT (#1426)
* switch from a scoped_lock to a lock_guard in UpdateTransactionsPerSecond() (#1507)
* Test framework improvements (#2) (#1461)
* http -> https (#1497)
* Wed Nov 14 2018 marecAATTdetebe.org- Update to version 1.5.0.2:
* Bump BUCash version to 1.5.0.2 (#1471)
* very basic docker instructions and files (#1448)
* [TEST ONLY] Script fuzzer (#1460)
* In GBT, match fees and sigops with the correct tx (#1470)
* Test framework improvements (part 1) (#1456)
* Improve propagatation of non-final and too-long-mempool-chain (#1419)
* remove a few cs_main locks in QT that are no longer needed (#1469)
* Fix a couple of potential log errors in thinblocks and graphene. (#1466)
* Add missing cs_vNodes lock in requestmanager_tests.cpp (#1468)
* Remove ban if merkle root incorrect for graphene block
* Mon Nov 05 2018 marecAATTdetebe.org- Update to version 1.5.0.1:
* rsvg binaries are needed to convert svg to png while producing dmg on macos (#1453)
* BUcash 1.5.0.1 release notes (#1452)
* Bump BUcash version to 1.5.0.1
* patch check that look at pointer address of labelPublic instead of size
* Add lock on vNodes when checking size() in rpc getinfo()
* fix linker error
* Fix bug in dmg builder so that it actually reads in the configuration file
* build: Fix \'make deploy\' for OSX
* depends: mac deploy Py3 compatibility
* Add Bitcoin SV seeders only if SV fork is activated
* Turn miningSvForkTime and minigForkTime into CTweakRef
* Sat Oct 13 2018 marecAATTdetebe.org- Update to version 1.5.0.0:
* Turn on graphene by default. (#1411)
* Revert \"Turn on graphene by default.\" (#1414)
* add link for forks.csv, fix broken guide link (#1412)
* Make graphene use excessive-block-logic
* install the forks.csv file so that it becomes part of the distribution
* add guide link for bip135
* Create bip135-guide.md
* BUcash release notes for version 1.5.0.0
* Mon Aug 27 2018 marecAATTdetebe.org- Update to version 1.4.0.0:
* Add BUcash 1.4.0.0 release notes to doc/release-notes folder
* Further elaborate on stand alone cpu miner
* Typo fix, explain further cashlib, add graphene activation param
* Both graphene and blocksdb are experimental and turned off by default
* Add release notes for BUcash 1.4.0.0
* Add BIP 135 to the list of supported BIPs (#1265)
* [1.4.0.0] Gitian build include file copying fixes (#1263)
* If we receive a thinblock or graphene block but we already have the block (#1258)
* [1.4.0.0] fix various clang warnings (#1257)
* [1.4.0.0] Fix Another bunch of warnings (#1255)
* Fri May 04 2018 marecAATTdetebe.org- Update to version 1.3.0.1:
* formatting and remove unused var
* add more disconnect logs
* formatting, locks, add ping timeout reset when block arrives
* fix spurious disconnect due to block download crowding out getheaders. Convert all logs to GetLogName()
* Remove unnecessary brackets and then fix indentation (no code logic was changed)
* Remove unnecessary code for retrieving headers
* remove unnecessary inclusion of clientversion.h
* make \"bitcoin-cli get\" == \"bitcoin-cli get
*\" and a few small changes to test_template (#1067)
* Remove unnecessary brackets and then fix indentation (no code logic was changed)
* Remove unnecessary code for retrieving headers
* Add basic sanity checking for script pushdata size
* Refactor ParseScript logic to remove `else` conditions
* Give more descriptive error when parsing partial-byte hex values
* Fix May 15th MTP UTC timestamp in release notes
* Makefile.am: Typo fix that broke `make clean` rule
* Remove unnecessary clientversion.h includes
* Change launchpad link from bu-ppa to bucash
* add formatting for consensus and policy directories
* Thu Apr 19 2018 marecAATTdetebe.org- Update to version 1.3.0.0:
* Fix out-of-tree builds (#1044)
* Fix wording in the \"Downgrade\" paragraph
* Add BUcash release notes file to the doc folder.
* Add release notes for the upcoming BUcash 1.3.0.0 release.
* Fix several tests in script_tests.json
* fix for #1035: blocknotify (#1037)
* add cumulative chain work to \'getchaintips\'
* Makefile.am: Typo fix that broke `make clean` rule
* Remove unnecessary clientversion.h includes
* Change launchpad link from bu-ppa to bucash
* add formatting for consensus and policy directories
* Fri Jan 26 2018 marecAATTdetebe.org- Update to version 1.2.0.1:
* Modify getinfo rpc to always return \"Bitcoin Cash\" as current fork.
* Take out the parallel_2 logging when checking each input
* Rename buip055.py into uahf.py
* Remove code duplication, use func defined in blocktools.py instead
* Reinstate CASH service bit.
* Last pass in removing BITCOIN_CASH ifdef
* Always enforce LOW_S and NULLFAIL if 13th Nov \'17 HF is active
* Remove all BITCOIN_CASH ifdefs from Qt related code
* Tue Jan 09 2018 marecAATTdetebe.org- Update to version 1.2.0.0:
* add green icons in pixmap directory
* Revert Transacation description back to previous behavior (fixes #838) (#892)
* Devpool work: express amounts in satoshis in RPC commands (#882)
* make win build point to the main repo
* some versions of osx does not contain CLOCK_MONOTONIC so use a different clock on osx
* BitcoinCash change release version to 1.2.0.0
* fix formatting
* change the default python node to behave as a BitcoinCash node on the BitcoinCash branch
* fix formatting
* [Qt] remove trailing output-index from transaction-id
* Remove the & that was showing in front of the Pullic Label: in sendcoinsentry.ui
* Sun Nov 12 2017 marecAATTdetebe.org- Update to version 1.1.2.0:
* Added fork block checkpoints for testnet3
* Customize Bitcoin Cash testnet seeders
* Add BUCash 1.1.2.0 release notes
* bump to version 1.1.2.0
* Add `newdaaactivationtime` to the list of allowed arguments
* Fix improper formatiting according to project programming style
* Use the BCH ticker rather than BCC in code comments
* Change currency unit to BCH when compiled for BUCash
* Create a more robust and realistic reindex.py
* Change currency unit to BCC when compiled for BUCash
* Fix a typo in BUcash 1.1.1.1 rel notes
* BUcash 1.1.1.1 release notes
* 1.1.1.1 point version
* use BITCOIN_CASH define to determine which ui string to return
* Remove #include Application.h
* Make the QR code show a fork specific prefix
* Fix commits list format
* Add BUcash 1.1.1.0 release notes
* bump to version 1.1.1.0
* name too long for osx
* better icons
* remove bad chars from package name and reposition text on the splashscreen
* some branding
* Add BUcash 1.1.0.0 release notes
* fix exe name for BUcash
* fix dir
* fixup copy filename on windows gitian build
* rename in yml files
* fix archive name
* new header needs to be included in makefile.am list
* apply bu cash version 1.1
* Add clientversion.h to guiutil.cpp
* add BITCOIN_CASH #define
* Thu Aug 31 2017 marecAATTdetebe.org- Update to version 1.1.1.1:
* Make sure we set the pickedForkId flag if the user didn\'t specify
* remove unused code
* Do not process INV, GETDATA or GETBLOCKS when fReindex or fImporting
* Create smaller consistently size batches when flushing to leveldb
* Only flush and delete pruned entries
* 1.1.1.1 point version
* use BITCOIN_CASH define to determine which ui string to return
* Remove #include Application.h
* Make the QR code show a fork specific prefix
* Fix commits list format
* Add BUcash 1.1.1.0 release notes
* bump to version 1.1.1.0
* name too long for osx
* better icons
* remove bad chars from package name and reposition text on the splashscreen
* some branding
* fix bug with fundrawtransaction that ends up with an nLockTime of 0 rather than the current block
* Add BUcash 1.1.0.0 release notes
* fix exe name for BUcash
* fix dir
* fixup copy filename on windows gitian build
* rename in yml files
* fix archive name
* new header needs to be included in makefile.am list
* apply bu cash version 1.1
* Add clientversion.h to guiutil.cpp
* add BITCOIN_CASH #define
* Thu Aug 24 2017 marecAATTdetebe.org- Update to version 1.1.1.0:
* Add BUcash 1.1.1.0 release notes
* move case to same place as the other invalid cases
* fix cash test error where we were expecting the excessive set to work at 1MB, but now cash is mining 2MB by default
* cleanup warnings
* bump to version 1.1.1.0
* name too long for osx
* eliminate much of the build output
* squelch autogen and build output
* only show configure output if there\'s a problem
* Sat Jul 29 2017 marecAATTdetebe.org- Update to version 1.1.0.0:
* fix exe name for BUcash
* fix dir
* fixup copy filename on windows gitian build
* rename in yml files
* fix archive name
* new header needs to be included in makefile.am list
* apply bu cash version 1.1
* request manager header re-request fix, and remove extra logs
* BU style format of the BCC seeders list
* Remove seed.bu.info from the BCC seeder
* Add clientversion.h to guiutil.cpp
* add BITCOIN_CASH #define
* Mon Jul 17 2017 marecAATTdetebe.org- bumped to version 1.0.3.0
* Thu May 11 2017 marecAATTdetebe.org- bumped to version 1.0.2.0
* Tue Apr 25 2017 marecAATTdetebe.org- bumped to version 1.0.1.4
* Thu Mar 23 2017 marecAATTdetebe.org- Update to version 1.0.1.3:
* version 1.0.1.3
* make debug assertion printout more helpful by printing the source file/line and add unit test
* back out unnecessary null check, fix one more spacing change
* fix indentation
* make DbgAssert log, some comment repositioning, remove dead code
* add locking in MarkBlockAsInFlight, rather than checking that the lock is already held. convert a few asserts to debug mode only. Change one use of a hardcoded number (coinbase comment size) to a symbolic constant
* bump version to 1.0.1.2
* re-evaluate use of asserts
* validate the result of every std container find() before using it, and avoid asserting if find fails
* early input checking for P2P messages
* Wed Mar 15 2017 marecAATTdetebe.org- Update to version 1.0.1.1:
* version 1.0.1.1
* Fix potential unwanted assertion
* Merge pull request #291 from ptschip/dev_prune
* Bump client version
* Merge pull request #300 from Justaphf/dev_2017
* Add release notes for BU ver 1.0.1
* bump to version 1.0.1.0
* add range checking to mining block size and excessive size, still need to show a warning in the GUI
* Wed Mar 08 2017 marecAATTdetebe.org- Update to version 1.0.1.0:
* bump to version 1.0.1.0
* add range checking to mining block size and excessive size, still need to show a warning in the GUI
* fix unit test for new constraint on setminingmaxblock
* ensure that mined block size cannot be set > excessive block size
* Change the order of Network Initialization
* Set a 4 hour ban only on Invalid MessageStart
* Disconnect node using the disconnect flag
* Ban node if PROCESS MESSAGESTART failure
* Removed redundant parameter from mempool.PrioritiseTransaction
* Mon Feb 27 2017 marecAATTdetebe.org- Update to version 1.0.0.1:
* bump the build number
* shorten runtime of miner_tests because windows test on travis may be taking too long
* Add unit test for zero reserve block generation, and zero reserve block generation with different length coinbase messages. Account for possible varint lengths of 9 bytes for 2 values that are not known during transaction selection
* Add unit test for block generation, and fix a unit test issue -- an invalid configuration left by a prior test
* fix issue where a block\'s coinbase can make it exceed the configured value
* Fix random hang for excessive.py
* bump revision to 1.0.0
* Mark nol seeder as able to filter service bits
* Fix nol seeder fqdn
* Don\'t set extra flags for unfiltered DNS seed results
* Add support for dnsseeds with option to filter by servicebits
* Renable bip69-sequence.py
* Fix maxblocksinflight for python3
* Fri Aug 19 2016 marecAATTdetebe.org- bumped to version 0.12.1
* Thu Mar 31 2016 marecAATTdetebe.org- Update to version 0.12.0:
* fix some tests based on BU changes
* oops, this filter lock is not really needed because filter won\'t be updated but creates a \'possible deadlock\' with vSend
* getstats: user convenience, if the number of items is not specified send just 1 not the whole history
* Added a separate bloom filter specifically for XThinblocks
* WIP: integration
* removed unnecessary logs
* fixed cheap hash collision detection
* modified excessive block chain semantics -- once a chain that has an excessive block has been accepted, stay on its tip even if other excessive blocks are mined on that same chain. If no excessive blocks produced for 24 hours (approx) then reset and resist a new excessive block on that chain. This means clients and miners won\'t continually lag behind the tip if a chain is produced with lots of excessive blocks.
* BUIP005: Add coinbase transaction message
* clean up old code from the moved traffic shaping
* Bugfix: gitian: Add curl to packages (now needed for depends)
* [depends] builders: No need to set -L and --location for curl
* Workaround Travis-side CI issues
* doc: Clean out release notes
* BUIP013 - disable network alerts (note that local alerts such as a fork warning will still be sent to alertnotify if set)
* Sat Jan 23 2016 marecAATTdetebe.org- initial package build
 
ICM