* add_missing_files
* lint
* dont error on fail to write
* use resource
* remove prints
* use dl folder and file names
* rearrange loop
* remove redundant str conversion
* dont break on failed upload
* Add plugin_id and healthz endpoints to s3 plugin service
* Add `chia data plugins check` cli
* plugin_id -> plugin_info
* updates based on reviews
* Use gather to run the lookups
* Update chia/data_layer/data_layer.py
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Fix typo
* short_help -> help
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Added some sanity checks to upload and download
* Add server files path to config
* small fix
* send filenames and not paths now
* minor tweaks
* Update chia/data_layer/s3_plugin_service.py
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* use bytes32.fromhex and other fixes
* set host to "localhost"
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Addition logging for datalayer wrt plugins
* some plugin modifications to config and endpoints
* Add entry point and some minor config checking
* Improved config file reading for store_ids
* Changed to upload_bucket and download_url
* Apply suggestions from code review
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Code review suggestions
* uploaders and downloaders are now URLs and this was missed earlier
* Update pyinstaller.spec to include plugin binary
* updates based on code review
* Update chia/data_layer/s3_plugin_service.py
Co-authored-by: Almog De Paz <almogdepaz@gmail.com>
* minor updates
* Add boto3 to setup for s3 plugin
* Add None check
---------
Co-authored-by: Kyle Altendorf <sda@fstab.net>
Co-authored-by: Almog De Paz <almogdepaz@gmail.com>
* Apply `final` decorator to `DataLayerWallet`
* Simplify `DataLayerWallet.create_new_dl_wallet`
* Simplify `DataLayerWallet.create`
* Improve `WalletStateManager.get_dl_wallet`
* More use of `WalletStateManager.get_dl_wallet`
* Only try `get_dl_wallet`
* 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
* add max coin amount everywhere
* add excluded amounts to bare minimum
offers really does not need it passed.
* add excluded coin ids
* finish rpc stuff
* finalize commands
add coins command group & expand various coin selection methods
* fix argument processing & clean up code
* fix grammer
* small miss
* Update wallet_rpc_api.py
* fix test
* add combination command
* fix error
* move command group
* add new built in funcs for direct wallet coin searches.
* add get coin rpc
* add last command
* switch to pageable function
* fix args
* expand multi rpc call and tests
+ fix other things
* da lint
* add reverse coin sorting and ability to select coins
* Update wallet_state_manager.py
* fix types
* align with protocol
* fix asserts
* fix imports
* isort
* Update wallet_coin_store.py
* Update wallet_rpc_api.py
* convert datalayer to DBWrapper2 (all write)
* more read, less write
* remove unneeded connection managers
* and... close it
* data store now creates its own wrapper
* Drop unused hint DataLayer.batch_update_db_wrapper
* require named arguments for most of `DBWrapper2.create()`
* 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
* Refactor away from post init for UPnP
* refactor UPnP to not be reusable
* update upnp in datalayer too
* add if_needed parameter to UPnP.shutdown()
* simpler
* be more lenient about startup failures, like before
* too many ways for UPnP to fail right now, revert to a smaller refactor approach instead of fixing them all up
* provide a skeleton hint protocol for rpc apis
* more
* more self.custom_get_connections = None
* fix RpcApiProtocol.service hinting
* catch up with RpcApiProtocol._state_changed()
* FullNode.server is now non-optional. 'ish
* drop another todo
* custom_get_connections -> get_connections
* just make get_connections() a mandatory method with a helper provided
* lots
* try again
* ._start_with_fingerprint()
* fill out the Service generic parameter in start scripts
* ... instead of pass
* add docstrings to the protocols
* remove no longer needed hasattr/not None checks
* remove outdated comment
* refactor Harvester._is_shutdown to ._shut_down
* make a WalletProtocol, defining the shared API of all wallets and fix type checking
* add protocol check for DataLayerWallet. remove outdated comment
* Hint to the ephemeral coin's innerpuzhash
* update datalayer rpc test reference offer blobs and trade ids
Co-authored-by: Kyle Altendorf <sda@fstab.net>