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 ofbaseFee + byteFee * tx.bytes + transfer/creationFee
). You can always retrieve an estimate of the tx fee ahead of time by querying thepayment_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
andunlock
to get them unlocked. Locked funds can still be used for staking and for transaction fees and in any case, any account can callremove_vote
andunlock
, 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
Multi-sig wallet implementation by Centrifuge
Phala Network has launched a testnet! Use it to issue, transfer, and destroy confidential tokens - anonymous ERC20 tokens on Substrate have arrived!
Tools
Polkassembly saw many updates over the past few weeks - reactions to posts ( 👍 / 👎 ) and addresses of proposal submitters in proposal cards are just a few.
Polkadot JS Apps UI now lists the voters on referendums, and takes into account adaptive quorum bias to indicate whether a referendum is passing or not.
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
Learn how to claim your nominator payouts manually, and how they work in the Polkadot wiki.
A major revamp of the Integration section of the Polkadot Wiki - learn about the protocol, node management, tx construction, and more. This is especially useful if you’re building wallets, interfaces, adding KSM to an exchange, and more.
Wei Tang’s document about a theoretical construct called wrapper blocks - potential Substrate functionality which lets you process blocks from other blockchains in Substrate. As an example, this would let you process Ethereum blocks in Substrate, and essentially build another Ethereum full node.
Web3 Foundation is launching Web3MOOC, a “Blockchain for Beginners” course starting April 8th, taught by Bill Laboon. The course is entirely free and teaches blockchain from the very basics all the way up to building your own blockchain. Learn more here and enroll at https://share.hsforms.com/1FLB4geCBRkeoqLQ3xUmfjA4752a
Ecosystem
The Berkeley Blockchain XCelerator program has selected four Polkadot / Substrate related projects for its latest cohort.
A Web 3.0 channel is now active on Rizzle where I’ll be recording two one-minute videos on Web 3.0 technology per day. Check it out if you only have time to learn in minute-sized chunks!
Support Polkadot tools development by contributing to Gitcoin CLR for KodaDot’s Token Claim addon! If you don’t know, Gitcoin’s CLR round is using quadratic funding to gauge fair distribution of public goods funding - in short, many smaller contributions mean MUCH more than a few big ones.
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:
imToken - a multi-chain wallet, for integrating Substrate-based chains
SelfKey - decentralized identity scheme using ink!
Chorus One - Grandpa light client in Tendermint (GitHub)
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
[Webinar] 30th of March, Intro to Substrate Part 2 (part 1 here!)
[Webinar] 2nd of April, Polkadot Virtual Meetup (Spanish language)
[Webinar] 10th of April, Visualizing your node’s metrics with Prometheus
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.