Update Substrate to 1.13.0#2868
Conversation
|
litep2p brings OpenSSL as dependency (paritytech/polkadot-sdk#4856) 😞 |
shamil-gadelshin
left a comment
There was a problem hiding this comment.
Sync test works.
… to removed WebRTC support
|
Created litep2p fork to get rid of OpenSSL: https://github.com/subspace/litep2p/tree/subspace-v1 |
|
Skimmed through MMR leaf proof and Ancestry proof changes. We already patched on our end the on-chain block hash limitation and using ancestry proof may not be worth it since it introduces extra storage proofs. On the other hand, we may benefit from not storing the MMR roots since we can use the Ancestry proof to prove any parent blocks. Will take a closer look again and will initiate some dicussion if we can benefit from the change @nazar-pc. Thanks for pointing it out |
|
Hm... domain tests are failing with too large allocation 🤔 |
|
@nazar-pc looks like this upgrade increases the genesis payload till 37 Mib while the limit is 32 Mib I'm still looking if we can build wasm only in |
|
IIRC WASM runtime is already build in release even for debug builds 🤔 |
|
Apparently not, from the code base, I see we have to explicitly set I'm testing this locally. Will let you know if it works |
|
That is not what I see 🤔 Even for debug builds WASM is built as release: |
|
@nazar-pc Yes, WASM blob is being built with release profile but it skips the compression of compact WASM because tests are run in debug profile. So final |
Force EVM test runtime with `release` profile to get compressed compacted wasm
This updates Substrate from 1.10.1 to 1.13.0.
PR points to tips of https://github.com/subspace/polkadot-sdk/tree/subspace-v6 and https://github.com/subspace/frontier/tree/subspace-v8
Te biggest change upstream was probably related to networking refactoring (they have introduced litep2p library, which is libp2p-compatible reimplementation, as an option).
I have dropped a custom limit for block download response size in Substrate. The reason is that we mostly rely on DSN sync these days and that limit was more important when syncing using Substrate sync during early history with heavy blocks when users had a very slow Internet route to other peers.
Other patches were rebased without major conflicts. I have created two upstream PRs (paritytech/polkadot-sdk#4842 and paritytech/polkadot-sdk#4844) that do not introduce concurrent block verification, but still reduce our diff downstream and shouldn't be very controversial for upstream.
Interesting PRs on Substrate side:
framecrate topolkadot-sdk-frameparitytech/polkadot-sdk#3813Currencytofungibleparitytech/polkadot-sdk#2292GenesisConfigpresets for runtime paritytech/polkadot-sdk#2714 (this might be useful for test network potentially)whitelist ipsin rate limiting paritytech/polkadot-sdk#3701Multiaddr& related types with substrate-specific types paritytech/polkadot-sdk#4198AncestryProofparitytech/polkadot-sdk#4430 (@vedhavyas this introduces new proof type in addition to leaf proofs we used before, might be potentially useful)burn_allow_deathextrinsic paritytech/polkadot-sdk#3964The only potentially interesting PRs on frontier side are these:
Code contributor checklist: