* enable soft-fork2
* add blockchain (consensus) test for time-lock conditions (non-ephemeral spend)
* introduce new soft-fork rule to compare ASSERT_SECONDS_* conditions against the previous transaction block's timestamp (to be consistent with ASSERT_HEIGHT_* conditions)
* bump chia_rs. This updates the mempool rules to disallow relative height- and time conditions on ephemeral coin spends
* implement assert_before in mempool_check_time_locks. Extend ephemeral coin test in blockchain with assert_before conditions
* implement support for assert_before conditions in compute_assert_height()
* support assert-before in mempool
* add timelock rule
* address review comments
* bump chia_rs to latest version
* add new error codes for ASSERT_BEFORE_* condition failures, ASSERT_CONCURRENT_SPEND failing, ASSERT_CONCURRENT_PUZZLE_FAILED and for impossible constraints
* add new condition opcodes for ASSERT_BEFORE_*, ASSERT_CONCURRENT_SPEND and ASSERT_CONCURRENT_PUZZLE
* fixup Spend and SpendBundleCondition types
* fixup tests that otherwise fail with MINTING_COIN
* fix test that otherwise would fail with RESERVE_FEE_CONDITION_FAILED
* remove use of NO_NEG_DIV flag. It's now implied
* remove duplicate test parameters
* add test
* do some forwards compat stuff
* Add a forwards compat example
* fix test
* Add more forwards compat tests
* Add more forwads compat tests
* Add forwards compatibility for nft1s
* add forward compatibility for nft offers
* Add forwards compatibility tests for DL offers
* Update DL test offers
* lint
* isort
* offer mod bytes
* Fix compression test
* isort again
* Add special offers for <=3.7 (CATs)
* Add special offers for <=3.7 (NFT1s)
* Add special offers for <=3.7 (NFT0s)
* Add special offers for <=3.7 (DLs)
* Check for conflicting items during aggregation
* isort
* Return created old offers properly marked
* move SerializedProgram into its own file (to fixup type annotations)
* fix type annotations for SerializedProgram
* fixup import statements for new SerializedProgram module
* configure isort to add the future annotations import
* apply the new isort setting
* remove type ignores for new mypy (#13539)
https://pypi.org/project/mypy/0.981/
* another
* updated wallet name
* deprecated series
* swap to cat2
* updating .gitmodule to point to defender-gui
* Remove break (its preventing other sockets from getting data when earlier ones have an error) (#12241)
* Convert DID Wallet to use the new coin selection algorithm that the normal wallet and the CAT wallet already use (#12063)
* small type change
* use coin_selection.py with DID Wallet
use more efficient coin selection methods.
* Add special DID edgecase + fix int type
* Ms.fix coin selection (#12261)
* Fix coin selection bug
* Fix properly
* Fallback in cases of too many coins selected
* Also check for num coins
* Lint issues.
* Add another test
* No sorting, and faster knapsack
* Lint fix
* Remove comment and useless check
* Lint line
* Tx submission idempotance, and prioritize wallet (#12282)
* Tx submission idempotance, and prioritize wallet
* TODO comment
* Updating gui modules
* extend min_coin to rpc calls & cli for coin selection (#12274)
* add tests to test if min_coin is working
they are passing, but no harm in being safe
* expand min coin amount across wallet.py
* extend to trade_manager
* add new options to rpc's
almost done lol.
* add min_coin_amount to wallet send
* make param non optional
alleviate None errors
* add cat wallet changes, rpc and all + fix a bug i accidentally made
oops
* Fix offer compression backwards compatibility
* bumping gui pin to head of release/1.5.0
* Calculate NFT royalty amount
* Create NFT wallet after the DID created (#12175)
* Bumping gui
* Show total amount to be paid for NFT offers
* Fix for NFT0 and NFT+Royalty detection suggested by quex
* Linter fix and formatting change
* Add RPCs for getting/extending the current derivation path index (#12472)
* Sleep to allow neworking layer to execute (#12463)
* Sleep to allow neworking layer to execute
* Add comment
* Added param to indicate how many additional phs create_more_puzzle_hashes should create. (#12493)
Account for range() not including last_index when `up_to_index` is provided.
* Fixed the wallet db rename from v2/v1 to v2_r1.
Removed vestigial code for dealing with the lite wallet db now that
we're syncing v2_r1 from scratch.
* When extending the derivation index, make sure we don't mark previously (#12513)
unused indices as used. This helps minimize gaps in the address space.
* Updating SBX asset ID
* Adding 1.5.0 changelog (#56)
* Adding 1.5.0 changelog
* Adding CVE fix
* Updating gitmodules (#57)
* Updating gitmodules
* Pinning gui
* black fixes
* mypy fixes
* xfail some run_block tests that need CAT2 update
* fix test
* Fix test based on series<->edition changes
* Drop EOL impish and hirsute (#12559)
(cherry picked from commit 189790ced2)
* Expand select_coins rpc (#12360)
* change type to uint64, 128 is too big anyway
* add new options to select_coins endpoint
* oops
* add tests and finalize
* oops
(cherry picked from commit d5bf4d8b59)
* .resolve() for wallet db path tests in windows
* followup to actually fix the wallet db path tests
* Update .gitmodules
* Update wallet_node.py
* Update trade_manager.py
Co-authored-by: Sebastjan <trepca@gmail.com>
Co-authored-by: matt <matt@chia.net>
Co-authored-by: William Allen <wallentx@users.noreply.github.com>
Co-authored-by: wallentx <william.allentx@gmail.com>
Co-authored-by: Chris Marslender <chrismarslender@gmail.com>
Co-authored-by: Jack Nelson <jack@jacknelson.xyz>
Co-authored-by: Mariano Sorgente <3069354+mariano54@users.noreply.github.com>
Co-authored-by: Matt Hauff <quexington@gmail.com>
Co-authored-by: Jeff Cruikshank <jeff@chia.net>
Co-authored-by: Kronus91 <t.yu@chia.net>
Co-authored-by: Justin England <justin@chia.net>
Co-authored-by: Earle Lowe <e.lowe@chia.net>
Co-authored-by: Earle Lowe <30607889+emlowe@users.noreply.github.com>
* Bump clvm_tools_rs for bug fix
* Add test for fixed 0.1.7 bug in clvm_tools_rs
* Remove other tmp file
* formatting (i prefer single quotes in python, lint likes dbl)
Co-authored-by: wjblanke <wjb98672@gmail.com>
* New RPC block_spends - Get spends for block using transaction generator (#10446)
* get spends for block using transaction generator
* type annotations and use existing function
* return None on exception
* parse to CoinSpend
* specify return type of get_block_spends in rpc client
* see what can be asserted
* test fix
* flags not necessary as we don't validate
* simplifying as cost is not required as we are not validating
* improve test to cover transaction generator ref_list
* simplify test
* remove unused import
* slight change and cleanup
* lint cleanup
* clean up
* wait until transaction is in mempool
* fix lint
Co-authored-by: Jack Nelson <jack@jacknelson.xyz>
* fix lint
Correct type and run lint checker
* switch to custom clvm
* add new puzzle
* curry and make better
* forgot to set linter to tools dir
* undo run_block changes
* Revert "curry and make better"
The tests do not like it
* correct tests
Co-authored-by: Jack Nelson <jack@jacknelson.xyz>