* update the fast FullBlock parser (that just skips fields) to support the new serialization of RewardChainBlock
* add test and shard the test, to enable it running in parallel
* disable expensive tests on MacOS Intel
* document some aspects of the full_blocks_utils test
* Add the request types
* Add the request types
* some test fixes
* Add the client ports
* Fix tests
* Add cmd support and fix a test
* Missed a couple
* Add test for `CreateNewWallet.__post_init__()`
* initial changes
* poetry fix
* Address ruff
* Install scripts issues
* Experiment a little bit
* Okay now try for rocky linux and use 3.12 instead
* Remove the now unused thing
* Use dnf for consistency
* Simplify installations
* Still need git
* relock poetry with 2.2.0
* relock poetry with 2.2.0
* try `git checkout main poetry.lock && .penv/bin/poetry lock` on altendky's system
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Port `spend_clawback_coins` to `@marshal`
* fix tests
* fix test again
* how do I keep missing these?
* Port `select_coins` to `@marshal`
* fix tests
* fix test
* Port `get_spendable_coins`
* Port `get_coin_records_by_names`
* Port `send_notifications` to `@marshal`
* Fixing the thing that is always broken
* Remove accidental import
* Port `get_default_cat_list`
* Port `cat_set_name`
* Port `cat_get_name`
* Port `get_stray_cats`
* Port `cat_get_asset_id`
* Port `cat_asset_id_to_name`
* Port `check_offer_validity`
* Port `get_offers_count`
* Port `spend_clawback_coins` to `@marshal`
* fix tests
* fix test again
* how do I keep missing these?
* Port `select_coins` to `@marshal`
* fix tests
* fix test
* Port `get_spendable_coins`
* Port `get_coin_records_by_names`
* Port `send_notifications` to `@marshal`
* Fixing the thing that is always broken
* Remove accidental import
* Port `spend_clawback_coins` to `@marshal`
* fix tests
* fix test again
* how do I keep missing these?
* Port `select_coins` to `@marshal`
* fix tests
* fix test
* Port `get_spendable_coins`
* Port `get_coin_records_by_names`
* bad port of `include_spent_coins`
* Less bad replace logic
* Actually autofill the CoinSelectionConfigLoader in `get_spendable_coins`
* Comments by @altendky
* Port `get_transaction_count`
* Port `get_next_address`
* Port `delete_unconfirmed_transactions`
* Port `get_current_derivation_index`
* Really disliking this framework FYI
* Port `extend_derivation_index`
* Fix the mock
* Port `delete_notifications`
* Fix the test check
* Store, not RPC
* Port `verify_signature`
* Port `sign_message_by_address`
* Fix tests
* Port `sign_message_by_id`
* fix tests
* fix test
* test coverage
* comments by @altendky
* Change `TransactionRecord` to use dict instead of list of tuples for memos
* Update streamable and fix tests
* Update test to accidentally fixed memos generation
* Remove `TransactionRecord.*_json_dict_convenience`
* Fix test
* Use AddressType library in WSM method
* Use AddressType library in transaction_store method
* Include plotNFT rewards in get_farmed_amount
* Add flag to include pool rewards in farm summary
* Add -i for short flag
* Fix expected args
* Include additional farming detail
* Include additional farming detail
* Format/organize output
* Move block rewards
* Update test
* Format
* Update test_farm_cmd.py
* revert test bool
* Passing tests
* Added test for 'include_pool_rewards=True'
* Address linting errors
* Change `TransactionRecord` to use dict instead of list of tuples for memos
* Update streamable and fix tests
* Update test to accidentally fixed memos generation
* Port `did_set_wallet_name`
* Port `did_get_wallet_name`
* Port `did_update_recovery_ids`
* Port `did_message_spend`
* Port `did_get_info`
* Port `did_find_lost_did`
* fix test
* Port `did_update_metadata`
* Port `did_get_did`
* Port `did_get_recovery_list`
* Port `did_get_metadata`
* Port `did_get_pubkey`
* Port `did_get_information_needed_for_recovery`
* Port `did_get_current_coin_info`
* Port `did_create_backup_file`
* Port `did_transfer_did`
* Add extra_conditions uniformly in CLI tests
* test coverage
* Minor changes.
---------
Co-authored-by: Amine Khaldi <amine.khaldi@reactos.org>
* Port `nft_mint_nft`
* Fix tests
* More test fixes
* Port `nft_count_nfts`
* Port `nft_list_nfts`
* Fix tests
* Port `nft_set_nft_did`
* Fix tests
* Port `nft_set_did_bulk`
* Port `nft_transfer_bulk`
* Port `nft_get_by_did`
* Port `nft_get_wallet_did`
* fix tests
* Fix one more test
* Okay actually fix the test
* Port `nft_get_wallets_with_dids`
* Port `nft_set_nft_status`
* Port `nft_transfer_nft`
* Use kwargs
* Forgot default raise
* Port `nft_get_info`
* Port `nft_add_uri`
* d
* Port `nft_calculate_royalties`
* Fix tests
* Port `nft_mint_bulk`
* Add test coverage for cmd line offering CAT by asset ID
* Add test coverage for a more complex offer take
* Add test coverage for `NFTCalculateRoyalties.__post_init__()
* test coverage generally
* Actually dont commit puzzle hashes when push=False
* Inadvertent test breakage
* Fix tests
* Fix tests
* Fix test
* Fix hopefully one more test
* Comments by @altendky
* small improvement @altendky
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* small improvement @altendky
Co-authored-by: Kyle Altendorf <sda@fstab.net>
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>
<!-- Merging Requirements:
- Please give your PR a title that is release-note friendly
- In order to be merged, you must add the most appropriate category
Label (Added, Changed, Fixed) to your PR
-->
<!-- Explain why this is an improvement (Does this add missing
functionality, improve performance, or reduce complexity?) -->
The modules `chia.protocols` and `chia.server` form a dependency loop.
This change at least removes the direct dependency of `chia.protocols`
on `chia.server`.
### Purpose:
<!-- Does this PR introduce a breaking change? -->
### Current Behavior:
### New Behavior:
<!-- As we aim for complete code coverage, please include details
regarding unit, and regression tests -->
### Testing Notes:
<!-- Attach any visual examples, or supporting evidence (attach any
.gif/video/console output below) -->
* Somewhat hacky workaounds for DIDs from other wallets
* cannot use set as not hashable
* Add a couple tests
* Change DIDCoinData to use bytes instead of bytes32
* Remove some unused code
* Remove some more unused code
* Make the alternate recovery did spendable I think
* Use Optional[bytes32] for DIDCoinData to show the list should be 32 bytes or nothing (where nothing is the NIL program)
* Replace specific test with parameterization of other tests to get more testing of the Alternate DIDs
* Empty commit for github
* minor formatting change
* No need to cast to bytes since as_atom returns bytes
* add chia dev gh test for launching configured test runs
* empty again
* better
* use the actual authenticated username
* more output
* helpful errors for invalid --only value
* tidy short help
* add at least an invalid --only test case
* prepare a long help
* add gh api runner helper
* use the commit hash for the temporary branch
* and uuid too
* fix up os selection
* add `--remote`
* load a url for a specified `--ref` as well
* both helps
* show defaults in `--help`
* help touchup
* Revert "show defaults in `--help`"
This reverts commit 5d7f4868e0.
* r
* add an actual dispatch test skeleton
* do not conflict check `tmp/**`
* assert a bit more about the resulting run
* oops
* skip the test for now
* pre-commit
* use a class for the chia cli context data
* actually assign to the context properly...
* handle the not-present case
* catch up
* tidy
* more
* stuff
* ...
* more real
* expected address prefix
* Extract TransactionsIn/Out
* Create a helper for coin selection arguments
* Port `chia wallet coins list`
* Unused item
* Add TransactionEndpoint
* Port `chia wallet coins combine`
* Port `chia wallet coins split`
* Delete test_coins.py
* Add test for TXConfig helpers
* Add test for TransactionEndpoint mixin
* Forgot to delete old split command
* test coverage
* coverage ignores
* Link old framework with new
* fix command tests
* fix signer test
* coverage ignores
* pre-commit
* Move tests back to rpc file
* Move coin functions back to their own file
* Move split above combine in rpc tests
* Stop duplicate name definitions
* new puzzle hashes allowed
* Address comments by @altendky
* more comments by @altendky
* Update chia/cmds/cmd_classes.py
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* another comment by @altendky
* this one is the fault of @altendky
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>