Dot Leap #3

Core stack is maturing, third party tools doing their best to keep up, and a brand new MOOC to take you from zero to hero!

Thank you for taking the Dot Leap!


We cover Polkadot, Kusama, Substrate, and all related and unrelated Web 3.0 projects!

For the Ethereum side of Web 3.0, please subscribe to Evan's newsletter.

The content in this newsletter is the author’s own opinion and not in any way endorsed by the Web3 Foundation. This is an independent and unaffiliated effort.


Polkadot 

Launch is approaching - keep an eye on this issue to be in the loop on what else needs to be done!


Kusama (v 0.7.28.)

🚨 Sign up for this email list if you run a validator or intend to, or to just be kept in the loop about official network updates (like when you should upgrade and why, or when new releases come out!) 🚨

  • All transaction fees are weight-based now (baseFee + byteFee * tx.bytes instead of the old algorithm of baseFee + byteFee * tx.bytes + transfer/creationFee). You can always retrieve an estimate of the tx fee ahead of time by querying the payment_queryInfo RPC.

  • On a related note, based on an audit report, all weight declarations are now mandatory, with no implicit defaults.

  • On the telemetry page, Kusama CC3 is now Kusama, in case you were confused and unable to find your node listed.

  • Off-chain Phragmen has been merged and activated, meaning nominee selections are about to become much more light-weight

C̴̛̗̒͋͗ͅĥ̸̘a̴̦͇̔͒̆͂͆̈̽̃͊̕̚o̶̧̮̠͇̓̆̊̋̃s̸̭͓̮̠̗̮̹̩̝͊̋͊̀̉̉͠ͅ

Due to a fast-tracked upgrade to do a massive storage reshuffle and some other things, the finalization was stalled while waiting for validators to upgrade nodes. The same runtime upgrade also caused a lot of validators to be dropped, removing their nominations as well. The slashing was undone, but nominations had to be re-issued by all nominators.

GRANDPA hard forked due to borked migration of session keys after the above runtime upgrade (at block #1491596), and the signaled authority set changes were invalid (blank keys) and were impossible to finalize. The authorities for these intermediary pending changes have been replaced with a static list comprised of w3f validators and randomly selected validators from the latest session (at block #1500988).

Kusama Governance

Due to a low turnout even among council members, there is now a Prime Member in the council whose vote is the default for any non voter. This discourages voter apathy. Prime was originally selected as the "most popular" member (based on phragmén vote), but is now selected using Borda since this PR.

  • As another anti-voter-apathy measure, it is now possible to delegate your vote in Democracy - you can have someone vote for you. You can select your lock period and then whoever you dedicate your staked funds to will have that much extra voting power when they vote. Since staked accounts have an unlock period anyway, this basically means you can lock-vote without any extra cost.

  • Any funds that you vote with will be locked and you will need to call remove_vote and unlock to get them unlocked. Locked funds can still be used for staking and for transaction fees and in any case, any account can call remove_vote and unlock, so there's no chance that you'll be stuck with all your funds locked and no way to unlock them again.

  • Proposal 119 to kill the prefix for the old nicks module and purge its data has been downvoted because it was not submitted properly. It was called directly by council, but council cannot issue a killPrefix order directly - it has to go through governance. So Proposal 120 was put up instead which created the simple-majority referendum #40 and passed, effectively killing the old Nicks module.

  • Referendum #39 to add a new registrar to the system has passed. The new registrar is EK8veMNH6sVtvhSRo4q1ZRh6huCDm69gxK4eN5MFoZzo3G7 - Marvin from Phala Network.


Core Stack

( ͡✧ ͜ʖ ͡✧)

Substrate alpha 5 is now out. Almost ready for 2.0 release!

( ͡✧ ͜ʖ ͡✧)

  • B-Harvest has successfully completed their first milestone, adding Prometheus support to Substrate - learn how to use it by subscribing to the Prometheus webinar (see events)!

  • The ink! programming language is at version 2.1.0 and now allows simple transfers without calling the end destination’s code if one exists at the address. It also comes with new examples on using the high-level hashing functionality that was added, make sure to check those out.

  • It is now possible to pause Grandpa for a specific number of blocks from a given starting block number. This is useful when doing immense upgrades that might cause problems with the chain state despite testing efforts. A non-finalized mess is easier to clean than a finalized one, which would require a hard fork.

  • A slasher for validator double votes has been added to Polkadot / Kusama, moving the runtime inches closer to release!

  • As a consequence of an audit report all weight declarations are now mandatory, with no implicit defaults: https://github.com/paritytech/substrate/pull/5357 - if you’re building on Substrate you should read this PR.

  • Substrate’s console output now has emojis 🤷‍♂️

  • It is now possible to define versions of runtimes in the runtime interface. This can come in handy when you need to fix a function, but that fix would break old runtimes. If the interface stays the same, it lets those runtimes import blocks from genesis without conflict. Once the client has caught up, it will also have downloaded the new runtime which, from then on, uses the new version of the function.

  • It’s now even easier to compile Substrate nodes on ARM architecture with this update.

  • It is now possible to easily convert from common key types (sr25519, ed25519) to AccountId32 in Substrate code.

Built on Substrate


Tools

  • Polkastats has released a new back end, so now you too can run your own local blockexplorer with graphql endpoints

  • Substrate API Sidecar is a helper tool wrapping some API calls to a Substrate node to make them easier to consume.


Education


Ecosystem


Web3 Foundation Grants

The Web3 Foundation has released the fifth wave of grantees, bringing the total signed for far above 100: https://medium.com/web3foundation/web3-foundation-grants-wave-5-recipients-2205f4fde096 - some of the last to be added:

  • BUIDL Labs - YieldScan Staking Dashboard (GitHub)

  • BoBao Technologies - PolkaKey an electron app to generate Polkadot addresses + tutorials (GitHub)

Reminder - you can always see the latest grants here. Also, hot tip: the Web3 Foundation is looking for a QA person on the grants team - you get paid to test the latest cutting edge software from grantees and tell them if they did a good job 😱


Upcoming Events and Webinars


That's it for this fortnight - I hope this was as useful for you to read as it was for me to write! Special thanks to Bill and David for feeding me a lot of this content, would have been very hard without them!

The Dot Leap is put together by Bruno Škvorc. Got any links for me for the next edition? Find me on Riot at @bruno:web3.foundation, on Twitter, or via email at bruno@bitfalls.com.