* backend(fix): Early unpin for pruned blocks with no active `BlockRef`
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend/tests: Check unpinning only after max_life time
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend/tests: Remove unpinning when droped tests
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend/tests: Ensure new blocks are not unpinned
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend: Add only pruned blocks to unpin hashset and add a test
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* backend: Introduce the `UnpinPolicy`
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Update subxt/src/backend/unstable/follow_stream_unpin.rs
* backend: Fix clippy
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
* Only unpin blocks that have been pruned by the backend
* Fix comments
* Mark initialized and finalized blocks as 'can_be_unpinned' too and tests
* fmt
* tweak a couple more comments
* tidy tests and fix undeterministic check
* Fix wrong names in comments
* tweak another test to focus it a bit more
* clippy
* wee rename of args in a couple of test helpers
* add some logs and simplify submit_transaction in the same way Alex did
* ditch logging again and keep to the experiment pr
* cargo fmt
* reduce CI timeouts to 30mins
* Handle Init and Stop events in submit_transaction too, just in case
---------
Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io>
Co-authored-by: Alexandru Vasile <alexandru.vasile@parity.io>
Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com>
This commit changes the following:
1. FollowEvent::Finalized: just remove the finalized and pruned blocks from runtimes
2. FollowEvent::Initalized: just remove the finalized block from runtimes
Co-authored-by: James Wilson <james@jsdw.me>
* add follow_stream impl
* follow_stream_unpin first draft
* add tests for follow_stream_unpin
* more tests and fixes for follow_stream_unpin
* first pass follow_stream_driver
* follow_stream_driver: add tests, fix things, buffer events from last finalized
* First pass finishing Backend impl
* Fix test compile issues
* clippy fixes
* clippy fix and consistify light_client
* revert lightclient tweak
* revert other lightclient thing
* cargo fmt
* start testing unstable backend behind feature flag
* more test fixes and move test-runtime metadata path just incase
* fix compile error
* ensure transaction progress stream actually used and fix another test
* cargo fmt
* CI tweak
* improve some comments and address some feedback bits
* update CI to use our own nightly binary
* wait for finalized block perhaps
* add back unstable APIs and tests
* clippy fixes
* fmt with new rust
* deserialize from object or array into api versions
* remove inspect
* add some of the other unstable RPC methods we might want
* clippy fix
* no unused deps warning in test crate
* fix doc fails
* legacy -> unstable
Co-authored-by: Tadeo Hepperle <62739623+tadeohepperle@users.noreply.github.com>
* runtime_updates -> with_runtiem
* add test and be consistent with naming of unstable RPCs
---------
Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
Co-authored-by: Tadeo Hepperle <62739623+tadeohepperle@users.noreply.github.com>