-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Name/version in runtime #241
Comments
This condition should not include |
No - the original text was correct. Authorship is a weaker requirement than runtime-substitution. So whereas authorship only requires |
Actually, there is one addendum: authorship should require |
* remove relay block entropy from author filter * bump spec version * Fix array length * cargo fmt
* Need to resolve finalized paritytech#30 * Fixes unfinalized issue after 30 blocks * Avoid invoke pcx_move * Draft * Split out * Rebuild wasm * Init session validators * Quick fix for unfinalized issue * Mul first
Signed-off-by: koushiro <koushiro.cqx@gmail.com>
…h#242) * implement session handling for unsubscribe in subxt-client Signed-off-by: Gregory Hill <gregorydhill@outlook.com> * update jsonrpsee to `v0.2.0-alpha.2` Closes paritytech#241 * use new jsonrpsee request message types in subxt client Signed-off-by: Gregory Hill <gregorydhill@outlook.com> Co-authored-by: Niklas Adolfsson <niklasadolfsson1@gmail.com>
This should add an entry to the API that returns a
Slicable
struct:The fields have very particular meanings:
spec_name
identifies the different Substrate runtimes. There'll be at leastpolkadot
anddemo
. A different on-chainspec_name
to that of the native runtime would normally result in node not attempting to sync further.impl_name
Is the name of the implementation of the spec. This is of little consequence for the node and serves only to differentiate code of different implementation teams. For this codebase, it will beparity-polkadot
. If there were a non-Rust implementation of the Polkadot runtime (e.g. C++), then it would identify itself with an accordingly differentimpl_name
.authoring_version
is the version of the authorship interface. An authoring node will not attempt to author blocks unless this is equal to its native runtime.spec_version
is the version of the runtime specification. A full-node will not attempt to use its native runtime in substitute for the on-chain Wasm runtime unless all ofspec_name
,spec_version
andauthoring_version
are the same between Wasm and native.impl_version
is the version of the implementation of the specification. Nodes are free to ignore this; it serves only as an indication that the code is different; as long as the other two versions are the same then while the code may be different, it is nonetheless required to do the same thing. Non-consensus-breaking optimisations are about the only changes that could be made which would result in only theimpl_version
changing.NOTE: This should not be thought of as classic Semver (major/minor/tiny). This triplet have different semantics and mis-interpretation could cause problems. In particular: bug fixes should result in an increment of
spec_version
and possiblyauthoring_version
, absolutely notimpl_version
since they change the semantics of the runtime.The text was updated successfully, but these errors were encountered: