* Bump clvm_tools_rs version for clvm stepper and add a test
* lint
* lint
* flake8
* lint
* lint?
* formatting
* More formatting
* More formatting
* hopefully final lint
* A bit more formal python style for the clvm test
* Add typing imports
* Move wallet RPC test setup into a fixture
* Fix `mypy` issues
* Enable `isort`
* Move `tx_in_mempool` out and reuse it instead of `tx_in_mempool_2`
* Introduce `get_confirmed_balance` and `get_unconfirmed_balance`
* Use `pytest.raises`
* Only test with an untrusted full node
* Introduce `generate_funds`
* Drop sleeps and create less blocks
* Recover trusted/untrusted sync parameterization
* Some work on hints
* More cleanup and test_generator_tools
* Change relevant calls
* More refactor and cleanup
* More refactor
* Small fix
* Create wrapper object PeakPostProcessingResult
* Lint and small fix
* Fix a hint bug
* Fix hint update_wallets
* Fix test_full_sync
* pre-commit
* Start with PR review comments
* More efficient iteration
* Remove tx_removals_additions_and_hints
* Revert mozilla ca
* Fix issue with startup
* isort: Fix `streamable.py` and `test_streamable.py`
* mypy: Drop `streamable.py` and `test_streamable.py` form exclusion
And fix all the mypy issues.
* Fix `pylint`
* Introduce `ParseFunctionType` and `StreamFunctionType`
* Use `object` instead of `Type[Any]` for `is_type_*` functions
* Some `Any` -> `object`
* Use `typing.overload` for `recurse_jsonify`
* Move some comments
* Drop `Union`, use `Literal` properly
* Explicitly ignore the return of `f_type.parse`
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Merge two `recurse_jsonify` overloads
* Typing for the base definition of `recurse_jsonify`
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* farmer: Adjust notifications from the farmer to the UI
- Only send the data for the harvester which actually sent an update
- Notify for each loaded batch during initial loading
* Enable improved farmer/harvester GUI
* farmer|rpc|tests: Implement paginated harvester plot endpoints
* Simplify filtering
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Let the API handle the exceptions
* Simplify the other filtering too
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Simplify count assertions
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* Refactor `is_filter_match` to `plot_matches_filter`
And just convert to `Plot` in tests.
* Move `chia.util.misc.KeyValue` to `chia.rpc.farmer_rpc_api.FilterItem`
* Rename `peer_id` to `node_id` to be match `get_harvesters_{summary}`
Co-authored-by: Kyle Altendorf <sda@fstab.net>
* test: Give `setup_farmer` and `setup_harvester` a separate chia root
* test: Wait for `last_sync_time` in `get_harvesters_{summary}`
To make sure the first sync from the harvester to the farmer is done
before we check plot counts.
* util: Implement `Paginator` class as interface to access a list by pages
* Be less restrictive about page sizes and refactor tests
* Make the pages based of 0 instead of 1 and some more test refactoring
* More tests
* Adjust workflows after rebase
* Introduce `Paginator.create`
* `<=` instead of `- 1`
* farmer|rpc: Always add `last_sync_time` in `Receiver.to_dict`
This changes the resonse of `get_harvesters` and
`get_harvesters_summary` to always include that field with value
`None`/`null` if the receiver is not yet synced.
* plot_sync: Add sync state to dict in `Receiver.to_dict`
* Add `total_plot_size` to `Receiver.to_dict`
* Refactor sync object assertions
* Access `_current_sync` directly
* Generate `syncing` data outside
* farmer: Adjust notifications from the farmer to the UI
- Only send the data for the harvester which actually sent an update
- Notify for each loaded batch during initial loading
* Enable improved farmer/harvester GUI