* Upgraded dependencies
* Adapting code to scale v3
* Empty commit to trigger CI
* Triggering CI
* Fixing UI test
* Remove superfluous dev-dep added by #9228
* Cryout for CI
* beefy: add dummy latest_finalized() RPC
* beefy: rpc latest_best_beefy() using shared mem
* beefy: rpc populate latest_best_beefy()
* beefy: rpc handle readiness
* beefy: best block over channel - wip
Not working because channel can't be simply opened and receiver passed
to `rpc_extensions_builder` because `rpc_extensions_builder` has to be
`Fn` and not `FnOnce`... and and Receiver side of mpsc can't be cloned
yay!..
* beefy: make notification channels payload-agnostic
* beefy: use notification mechanism instead of custom channel
* beefy: add tracing key to notif channels
* sc-utils: add notification channel - wip
* beefy: use sc-utils generic notification channel
* grandpa: use sc-utils generic notification channel
* fix grumbles
* beefy-rpc: get best block header instead of number
* beefy-rpc: rename to `beefy_getFinalizedHead`
* fix nitpicks
* client-rpc-notifications: move generic Error from struct to fn
* beefy: use header from notification instead of getting from database
* beefy-rpc: get best block hash instead of header
* beefy-rpc: fix and improve latestHead test
* beefy-rpc: bubble up errors from rpc-handler instantiation
* update lockfile
* Apply suggestions from code review
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* fix errors and warnings
* fix nit
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* Introduce `SecretUri`
* `inspect-key`: Adds support for `expect-public`
`expect-public` can be used to check that a given secret uri corresponds to the given public key.
This is mainly useful when the secret uri is protected by a password and a new derived account
should be generated. With `--expect-public` the user can pass the public key/account-id of the
"base" secret uri aka the one without any derivation to ensure the correct password was inserted.
* Fixes
* 🤦
* Apply suggestions from code review
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* Review feedback
* FMT
* Bump the versions
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
Remove unneeded dependencies and dev-dependencies.
Made self_destruct test not dependent on wasm bin size.
Updated code related to deprecated warning on tracing-subscriber `scope()`
( See https://github.com/tokio-rs/tracing/issues/1429 )
* Run cargo fmt on the whole code base
* Second run
* Add CI check
* Fix compilation
* More unnecessary braces
* Handle weights
* Use --all
* Use correct attributes...
* Fix UI tests
* AHHHHHHHHH
* 🤦
* Docs
* Fix compilation
* 🤷
* Please stop
* 🤦 x 2
* More
* make rustfmt.toml consistent with polkadot
Co-authored-by: André Silva <andrerfosilva@gmail.com>
* mark template and utils as non-publish
* switch to development version for testing
* activate unleash check
* maybe if I disable all rules...
* Fix isolated compilation of `max-encoded-len-derive` with `syn`
error[E0369]: binary operation `==` cannot be applied to type `syn::Path`
--> src/lib.rs:88:29
|
88 | .filter(|attr| attr.path == parse_quote!(max_encoded_len_crate))
| --------- ^^ ----------------------------------- _
| |
| syn::Path
error: aborting due to previous error
For more information about this error, try `rustc --explain E0369`.
Error: could not compile `max-encoded-len-derive`
* WIP: bump changes crates since v3 tag to next breaking
cargo unleash version bump-breaking --changed-since v3.0.0
cargo unleash version set-pre dev --changed-since v3.0.0
FIXME: Don't modify crates that are not yet released, e.g.
`max-encoded-len-derive`
* Update lockfile
* WIP: Bump sp-transaction-pool as well
* WIP: Bump sp-offchain as well
* WIP: Bump frame-system-rpc-runtime-api as well
* WIP: Bump sp-authority-discovery as well
* Manually deactivate dev-deps before `cargo unleash check`
Otherwise we run into `Cycle detected` error.
* Bump sp-consensus-slots
* Add missing Cargo.lock change
* Bump sp-consensus-vrf as well
* Bump sp-keyring as well
* Bump sp-consensus-pow as well
* Try to speed up the `unleash-check` job
Previously, the job took 106 minutes - let's see if explicitly
specifying a `CARGO_TARGET_DIR` will help
* fixup: Ensure the temp target dir exists for unleash check
* Bump pallet-transaction-payment-rpc-runtime-api as well
Needed for Polkadot
* Bump pallet-transaction-payment-rpc as well
Needed for Polkadot
* Try updating crates after patching in the Polkadot CI job
* Use another approach to update patched Substrate crates
* Try to update all sp-core versions in Polkadot CI job
* Simplify sp-core version checking
* Apply another shellcheck lint
* Just do the simplest thing I guess
* Welp don't do --offline then
* Clean up `unleash-check` job triggers
Co-authored-by: Denis Pisarev <denis.pisarev@parity.io>
* Fix a note in unleash-check cache step
* Add a note about temporary optimization in cargo-unleash
* Pin a newer version of cargo-unleash
Co-authored-by: Igor Matuszewski <xanewok@gmail.com>
Co-authored-by: Denis Pisarev <denis.pisarev@parity.io>
* grandpa: persist block number for last block of authority set
* grandpa: fix authority_set_changes field in tests
* grandpa: fix date on copyright notice
* grandpa-rpc: implement cleaner api for prove finality rpc
* grandpa-rpc: replace the old prove_finality with the new one
* grandpa: undo accidental whitespace change
* grandpa-rpc: start work on redo of the finality_proof RPC API
* grandpa: manual impl of Decode for AuthoritySet
* grandpa: add comment about appending changes for forced changes
* grandpa: flip order in set changes, tidy up some comments
* grandpa: update some of the doc comments
* grandpa: store authority set changes when applying forced changes
* grandpa: simplify finality_proof.rs
* grandpa: move checks and extend tests in finality_proof
* grandpa: address first set of review comments
* grandpa: check that set changes have well-defined start
* grandpa: rework prove_finality and assocated tests
* grandpa: make AuthoritySetChanges tuple struct
* grandpa: add assertions for tracking auth set changes
* grandpa: remove StorageAndProofProvider trait
* grandpa: return more informative results for unexpected input to RPC
* grandpa: tiny tweak to error msg
* grandpa: fix tests
* grandpa: add error specific to finality_proof
* grandpa: fix review comments
* grandpa: proper migration to new AuthoritySet
* grandpa: fix long lines
* grandpa: fix unused warning after merge
Co-authored-by: André Silva <andrerfosilva@gmail.com>
* Re-generate READMEs to fix doc links; set readme field in package manifests
* Re-generate READMEs to fix doc links; set readme field in package manifests
* Re-generate READMEs to fix doc links; set readme field in package manifests
* Re-generate READMEs to fix doc links; set readme field in package manifests
* Revert stuff that shouldn't have been committed
* Revert stuff that shouldn't have been committed
* Fix parent relative link generation
* Manually remove this incorrect link for now.
* grandpa-rpc: use FinalityProofProvider to check finality for rpc
* grandpa-rpc: minor tidy
* grandpa-rpc: remove dyn FinalityProofProvider
* grandpa-rpc: remove unused dependencies
* node: move finality_proof_provider setup
* grandpa-rpc: print error reported by finality_proof_provider
* grandpa-rpc: add note about unnecessary encode/decode
* grandpa-rpc: dont encode/decode and use correct hash
* grandpa-rpc: set_id is optional
* grandpa-rpc: create test for prove_finality
* grandpa-rpc: set visibility back to how it was
* grandpa-rpc: remove unused dependency
* grandpa-rpc: minor tidy
* grandpa: doc strings
* grandpa-rpc: rename to prove_finality
* grandpa-rpc: use current set id if none is provided
* grandpa-rpc: remove unnecessary check in test
* node: group finality_proof_provider in rpc_setup
* grandpa: make prove_finality concrete in FinalityProofProvider
* grandpa-rpc: wrap finality output in struct and store as Bytes
* grandpa-rpc: exhaustive error codes and wrap
* grandpa-rpc: let prove_finality take a range instead of a starting point
* grandpa-rpc: fix test for changed API
* grandpa-rpc: fix line length
* grandpa: fix reviewer nits
* node/rpc: fix reviewer comments
* service builder: fix todo about jsonrpc Option workaround
* grandpa-rpc: only share executor instead of sub manager
* grandpa-rpc: fix compilation
* grandpa-rpc: rename to subscription_executor
* node/cli: remove another unused jsonrpc dependency
* grandpa: apply style fixes from code review
Co-authored-by: André Silva <123550+andresilva@users.noreply.github.com>
* grandpa: use bytes type for justification rpc notification
* grandpa: always create justification if there are rpc subscribers
* grandpa: wording
* grandpa: replace notify_justification macro with function
* grandpa: prefer Option<&T> over &Option<T>
* Bump version
* update test-utils crates to be ready for publishing
* adding changelog
* Adding automaticly generated READMEs
* fixing versions
* another version mishap
* Rough skeleton for what I think the RPC should look like
* Create channel for sending justifications
Sends finalized header and justification from Grandpa to the
client. This lays the groundwork for hooking into the RPC module.
* WIP: Add subscribers for justifications to Grandpa
Adds the Sender end of a channel into Grandpa, through which notifications
about block finality events can be sent.
* WIP: Add a struct for managing subscriptions
Slightly different approach from the last commit, but same
basic idea. Still a rough sketch, very much doesn't compile yet.
* Make naming more clear and lock data in Arc
* Rough idea of what RPC would look like
* Remove code from previous approach
* Missed some things
* Update client/rpc-api/src/chain/mod.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
* Update client/rpc-api/src/chain/mod.rs
Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
* Split justification subscription into sender and receiver halves
* Replace RwLock with a Mutex
* Add sample usage from the Service's point of view
* Remove code that referred to "chain_" RPC
* Use the Justification sender/receivers from Grandpa LinkHalf
* Add some PubSub boilerplate
* Add guiding comments
* TMP: comment out to fix compilation
* Return MetaIoHandler from PubSubHandler in create_full
* Uncomment pubsub methods in rpc handler (fails to build)
* node/rpc: make Metadata concrete in create_full to fix compilation
* node: pass in SubscriptionManger to grandpa rpc handler
* grandpa-rpc: use SubscriptionManger to add subscriber
* grandpa-rpc: attempt at setting up the justification stream (fails to build)
* grandpa-rpc: fix compilation of connecting stream to sink
* grandpa-rpc: implement unsubscribe
* grandpa-rpc: update older tests
* grandpa-rpc: add full prefix to avoid confusing rust-analyzer
* grandpa-rpc: add test for pubsub not available
* grandpa-rpc: tidy up leftover code
* grandpa-rpc: add test for sub and unsub of justifications
* grandpa-rpc: minor stylistic changes
* grandpa-rpc: split unit test
* grandpa-rpc: minor stylistic changes in test
* grandpa-rpc: skip returning future when cancelling
* grandpa-rpc: reuse testing executor from sc-rpc
* grandpa-rpc: don't need to use PubSubHandler in tests
* node-rpc: use MetaIoHandler rather than PubSubHandler
* grandpa: log if getting header failed
* grandpa: move justification channel creation into factory function
* grandpa: make the justification sender optional
* grandpa: fix compilation warnings
* grandpa: move justification notification types to new file
* grandpa-rpc: move JustificationNotification to grandpa-rpc
* grandpa-rpc: move JustificationNotification to its own file
* grandpa: rename justification channel pairs
* grandpa: rename notifier types
* grandpa: pass justification as GrandpaJustification to the rpc module
* Move Metadata to sc-rpc-api
* grandpa-rpc: remove unsed error code
* grandpa: fix bug for checking if channel is closed before sendind
* grandpa-rpc: unit test for sending justifications
* grandpa-rpc: update comments for the pubsub test
* grandpa-rpc: update pubsub tests with more steps
* grandpa-rpc: fix pubsub test
* grandpa-rpc: minor indendation
* grandpa-rpc: decode instead of encode in test
* grandpa: fix review comments
* grandpa: remove unused serde dependency
Co-authored-by: Tomasz Drwięga <tomusdrw@users.noreply.github.com>
Co-authored-by: Jon Häggblad <jon.haggblad@gmail.com>
Co-authored-by: Tomasz Drwięga <tomasz@parity.io>
* Bump jsonrpc pubsub, core, http, and ws
Right now these are the packages which _need_ to be updated
so I can just the latest `jsonrpc-pubsub` code. Once a release
it cut upstream the rest of the dependencies should be updated
as well.
* Use jsonrpc-pubsub's SubscriptionManager
This places sc-rpc-api::Subscriptions
* Bump jsonrpc-core outside of sc-rpc-*
* Update client/rpc tests
Right now one of the `author` tests is failing, I
need to think a bit about how best to fix it.
* Remove Subscriptions manager
There's no need for this implementation since we're
using the one from `jsonrpc-pubsub` now
* Fix author RPC test
This test used to check for a numerial subscription ID,
whereas now it uses a string based ID which is the default
provided by `jsonrpc-pubsub`'s subscription manager.
* Remove unused NumericIdProvider
* Add missing bracket
Removed one too many with that last one, lol
* Bump `jsonrpc` to v14.2
There's an exception though. `jsonrpc-derive` cannot be bumped
past v14.0.5 just yet since it has a dependency on `quote` pinned
to v1.0.1. This means that at the moment it won't build on Substrate
since it's using v1.0.3.
* Track `jsonrpc-derive` master branch
* Bump `quote` version to v1.0.6
* Bump `jsonrpc-derive` to v14.2.1
This includes support for `quote` v1.0.6
* Use exact version for jsonrpc crates
Doing this to make sure any updates in jsonrpc don't
accidently trickle down to Polkadot.
Co-authored-by: André Silva <andre.beat@gmail.com>
* Bump jsonrpc pubsub, core, http, and ws
Right now these are the packages which _need_ to be updated
so I can just the latest `jsonrpc-pubsub` code. Once a release
it cut upstream the rest of the dependencies should be updated
as well.
* Use jsonrpc-pubsub's SubscriptionManager
This places sc-rpc-api::Subscriptions
* Bump jsonrpc-core outside of sc-rpc-*
* Update client/rpc tests
Right now one of the `author` tests is failing, I
need to think a bit about how best to fix it.
* Remove Subscriptions manager
There's no need for this implementation since we're
using the one from `jsonrpc-pubsub` now
* Fix author RPC test
This test used to check for a numerial subscription ID,
whereas now it uses a string based ID which is the default
provided by `jsonrpc-pubsub`'s subscription manager.
* Remove unused NumericIdProvider
* Add missing bracket
Removed one too many with that last one, lol
* Bump `jsonrpc` to v14.2
There's an exception though. `jsonrpc-derive` cannot be bumped
past v14.0.5 just yet since it has a dependency on `quote` pinned
to v1.0.1. This means that at the moment it won't build on Substrate
since it's using v1.0.3.
* Track `jsonrpc-derive` master branch
* Bump `quote` version to v1.0.6
* Bump `jsonrpc-derive` to v14.2.1
This includes support for `quote` v1.0.6