* Start block body tests
* More tests
* More tests
* Improvements and security fixes to block body validation
* Revert bad test changes
* Fix check for ref list size
* Change input to ROM to `(coin-solution-inputs . extras)`.
* Add `deserializer` to `generator_for_single_coin`.
* Fix last test.
* ROM now outputs `(coin-spends . block-level-extras)`
* rebase DID off main
* fix indentation and imports
* lint fixes
* fix test_compilation paths for new puzzles
* added _init__.py for did_wallet
* mypy typing fixes
* included did_wallet in setup.py module list
* stored pubkey & puzhash so that recovery_spend can choose not take them
* black missing comma
* add wallet id to return in get recovery info
* remove bad try statement
* fix DID recovery
* lint formatting, blacked
* use theirs for macos installer
Co-authored-by: matt <matt@chia.net>
* attempt to save time hashing PeerInfo objects in introducer, by moving attributes from hash tables into the peer object itself, where it belongs
* only remove peers after a few failures in a row, not immediately. Ensure we don't check peers too frequently.
* squash
* rebase cleanup
* cost
* Combine adam's and straya's PRs
* Fix cost test
* Fix another test
* Improve safety in reorgs
* Improve wallet in reorgs
* Improve wallet in reorgs
* Bug in reorg handling
* Bug in reorg handling, and fix test
* Band aid
* Comment out to pass test
* Comment out test
* rebase clean
* USe a list of reference generators
* create
* Integrate Block Compression
* Fix generator argument creation
* improve test
* update block tools
* Separate CompressorArg and GeneratorArg, improve type hints
* First crack at `list_to_tree`.
* Integrate generator arguments as tree
* End to end test for generators
* Fix linting issues, hook up things, and add a test
* tidy GeneratorArg test
* Get compression and decompression working in full node
* Fix fetching block generator from DB in multiprocess
* Fix edge case in reorgs, test many combinations of reorgs
* reduce max number of generators refs allowed in a block
* Apply Straya's fix for calculating the end index for generator args
* typos
* Run test_block_compression for a transaction large enough to force multiple input coins in the transaction
* Update generator compression tests for treearg change and decompressor offset args fix
* Fix merge conflict
* Fix test
* Fix full node tests
* Don't make full blocks
* fix lint
Co-authored-by: Yostra <straya@chia.net>
Co-authored-by: Adam Kelly <aqk@aqk.im>
Co-authored-by: Richard Kiss <him@richardkiss.com>
Require that a conflicting SpendBundle must not only have higher fee per
cost, but also increase the total fee by at least 0.00001 XCH and spend
all coins that were spent in the set of conflicting SpendBundles.
Refactor and update tests of conflicting spends (aka double spends) in
mempool.
Co-authored-by: Rostislav <rostislav@users.noreply.github.com>
* deleted blockchain_check_conditions and added optional timestamp to mempool_check_conditions
* removed unnecessary code
* change back to < for block height
* time now passes on equal to condition value