* bump chia_rs dependency and accomodate for changes to SpendBundleConditions and run_block_generator()
* use ThreadPoolExecutor instead of ProcessPoolExecutor in pre_validate_blocks_multiprocessing
* don't serialize BlockRecords when passing into pre_validate_blocks_multiprocessing
* dont' pickle the list of full blocks passed into batch_pre_validate_blocks
* don't serialize conditions when passed to batch_pre_validate_blocks
* don't serialize previous session blocks passed to batch_pre_validate_blocks
* don't serialize the return value from batch_pre_validate_blocks
* make the batch size 1, in pre_validate_blocks_multiprocessing(). With the jobs running in a thread pool, there's no serialization cost we need to amortize over a batch
* make batch_pre_validate_blocks() only validate a single block at a time. rename it to pre_validate_block()
* avoid copying recent_blocks into each validation job. since they run in a thread we can just use the blockchain object directly
* merge loops over the blocks in pre_validate_blocks_multiprocessing(), to simplify the code and to build fewer temporary lists
slightly modified subset of Quexington's virtual project structure. All files default to be treated as belonging to chia-blockchain project. No default annotations. no default exclusions.
* add cap to amount of DID wallets that can be automatically created
* add further testing
* add extra tests for recovering discarded DID and making new DIDs above the limit
* lint fix
* add types to test functions
* add log warning when ignoring DID
* typing fixes for tests
* a few more typing fixes
* black
* Update chia/_tests/wallet/did_wallet/test_did.py
Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
* fix wrong wallet node get_wallet() call
* fix rebase
* remove unused typeignore
---------
Co-authored-by: Arvid Norberg <arvid@libtorrent.org>
* combine current sub slot iterations, current difficulty and previous ses block into ChainState, to make it easier to pass around and update
* address review comments
* address review comments. rename ChainState -> ValidationState. add more comments
* Some logging and some code to limit full file generation based on the max number of full files allowed
* Don't write out full files that aren't needed
* Black fixes
* Adjust the full file during error conditions
* No need for try
* minor simplification of stacked if-conditions and early exits on failure paths
* Simplify NPCResult -> SpendBundleConditions
* make include_spends() take SpendBundleConditions, rather than NPCResult
* bump chia_rs to 0.14.0
* update tests covering negative division (allowed since the hard fork) and infinity G1 keys (disallowed with soft fork 5)
* BLSCache.update() takes GTElement now
* use get_conditions_from_spendbundle() in test_mempool_manager, to get the ANALYZE_SPENDS behavior
* fix mypy warnings
* Port `log_in` to decorator
* Port `get_logged_in_fingerprint` to decorator
* Port `get_public_keys` to decorator
* Port `get_private_key` to decorator
* Port `get_mnemonic` to decorator
* Port `add_key` to decorator
* Port `delete_key` to decorator
* Port `check_delete_key` to decorator
* Port `delete_all_keys` to decorator
* Bad copypasta