Dot Leap

A fortnightly-ish newsletter covering the progress in Polkadot's Web3 world.

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.

This newsletter is quite comprehensive so feel free to jump ahead to the section that interests you. Note that it's still worth going through everything, just to get a feel of the ecosystem.


Polkadot 

👇👇👇 The Claims Page is live! 👇👇👇

  • Polkadot's launch approaches, so the claims page is live. Go claim your dots so you're ready for genesis! Note: this does not mean Polkadot launched! Launch is still a month or so out! This just lets you indicate your desire to validate on day 1, but nothing else! So far, 900 people have claimed their dots 🤑

  • Careful not to fall for the fake claims process! ⚠

  • Gossamer, an implementation of Polkadot Host in Go by ChainSafe, is planning for an initial release this quarter. Blog post with more information here.


Kusama

s̴̀̚ͅu̷̩̎́m̴̜̖̀m̶̢̛o̸͉̲͑n̶̫̤̂i̴̪̋t̴̫̱̃͋o̴̪̔̑r̷̤̽ĕ̵̞͐s̷̛̝̔ ̸̟͍̄́c̴̡̙̉ḣ̷̙͂å̸̖̝ǫ̴̥̏̋

February started with finality getting stuck due to a mismatch in code - native-only optimizations weren't compatible with what was in the on-chain wasm blob, so finality stalled. The issue was quickly resolved with a flag first, and a runtime upgrade next. This steamrolled people's CPUs because of all the bad forks floating around (lack of finality will do that) so a patch was issued with version 0.7.20. of Kusama.

s̶̮̦̱͐̇̐e̷̜̓̇͂͝m̷̪͊͗͗p̵̡̰̙̟̥̱͉͍͂̉̃͊̒̈́͠ë̴̛̗̲̱́͐̏ŗ̴̛̲̰̪̣̹̌̊̚ ̶̹̥̘͙̳̆ç̷̱̥̰̞͋̋̀h̸͖̠̺̲̗̪͎͆̑͗̈́̋̈́̚a̷̡̨͕̪͖̞̲̭̔̅͊́̈͌o̶͍̗̼̮͉̐̄͂͂̓͗͂̕

Some people running Kusama nodes (as validators or otherise) have experienced huge memory growth and crashes. The problem is being worked on, but a workaround is to use the --restart=always and --memory flags to auto-restart when mem limit is hit.

n̷̨̲͒̐u̵̹͉̍l̴̫̤̆͌l̴̯̀̔a̸̭̱̽ ̵̭͒̋c̷̣̜̈́̊ḣ̴̬̭a̸̹̎͊ọ̴̎̓

  • The 1000 Validators program has kicked off! This program will allow people who want to run nominators but lack the stake to get in the active validator set. They will be nominated by W3F-staked nominators, then receive points if they act competently, or lose points if they are incompetent or malicious.  The goal is to get more people ready and willing to be validators as well as give them a chance to prove their competence to the network as a whole.

  • If anyone asks you why they should care about a testnet when you tell them about Kusama, I made a short explainer.

  • 🎉 Kusama passed 1 million blocks on Feb 11th!

Kusama Governance

  • The proposal to add an application-specific registrar to Kusama’s identity subsystem has passed after being seconded by the community and is now referendum #28, up for a vote. Initial votes seem to be strongly leaning towards “Aye”.

  • Referendum #27 to kill some storage items has passed and will be enacted at block 1,224,000. To quote Gav: “two council proposals containing runtimes that somehow never got cleaned up and one democracy proposal also containing a runtime that never got cleaned up. “ These storage slots use up a lot of space, so cleaning them up keeps the chain lean. Community driven pruning! 🤘

  • Council member CLOUDWALK added a proposal to increase the validator count to 180 from the current 160. Right now it looks like it’s passing and will turn into a referendum in about 6 days.

  • Three separate treasury proposals are active - a 100 KSM grant to yours truly for the purpose of demonstrating the treasury, a 1000 KSM grant for Kusama’s Kappa Sigma Mu society - an on-chain group of eccentrics who prove membership by getting tattoos, and an 888 KSM grant to “MD” who decided they deserve the money for no apparent reason. The former two are passing with 4 out of 7 required votes, and the latter is being rejected by 4 out of 7 required council members.


Core Stack

( ͡✧ ͜ʖ ͡✧)

Substrate runs on a Raspberry Pi 🎉 - lots of experimenting by Dan Forbes bore fruit!

( ͡✧ ͜ʖ ͡✧)

  • [FEATURE] After this PR, Polkadot's Docker image now auto-opens RPC calls, optimizes for cache, and more. If you're of the Docker persuasion, give it a go.

  • [FEATURE] Substrate now has an inspect command which lets you explore an individual block or extrinsic from an existing database or separate SCALE-encoded hex string. Very practical!

  • [FEATURE] The EVM pallet got a long needed upgrade - it now outputs a contract's address after it's created, so it's easier to immediately use it.

  • [FEATURE] There is now an off-chain worker example pallet in Frame which can be used as inspiration for fully-fledged offchain worker examples.

  • [FIX] After a while, Substrate nodes could silently drop websocket connections without letting the user know through an error message. This has been fixed.

  • [FEATURE] Substrate now has benchmarking of pallets - if you're building a custom pallet, consider writing benchmarks for it. Another PR is in progress to make this even simpler through macros.

  • [FEATURE] Substrate Subkey now supports JSON output

  • [FEATURE] Substrate can now output libp2p secret key and a node's PeerID, especially useful to bootstrap nodes (originally you had to read output logs of a node to find the PeerID).

  • [FIX] The contracts pallet will now correctly distinguish out-of-gas errors in contracts, versus general runtime errors.

  • [FIX] The reputation penalty for Substrate nodes being offline has been increased 25x. Not to be mistaken for being offline as a validator - this is network reliability reputation which, when too low, disqualifies your node from being considered as a possible peer.

Substrate has feature-frozen on February 21st, and lots of dead code and deprecated features are being removed in preparation for the 2.0 release. More info in issue 4961 and issue 4935.


Tools


Education

  • [WIKI] February kicked off the wiki-blitz at Web3 Foundation - we're updating the wiki and adding new pages like an in depth explanation of Phragmen, a brand new Ethereum 2.0 vs Polkadot comparison, a primer on account types and one on transaction fees in Polkadot, an in-depth on-chain identity guide, and much more. We've also begun the process of merging the Kusama wiki with the Polkadot wiki to make it easier to maintain.

  • [WIKI] We now have an up to date guide on setting up a full node, and one for setting up secure websockets (so you can connect to your node remotely).

  • [WIKI] There is now a guide on the Kusama Treasury works, and how to create a Treasury proposal. Go and get that sweet sweet KSM money!

  • [EXTERNAL] Dan Forbes (of Substrate on Raspberry Pi fame above) put together a quick guide on using the Substrate-with-EVM node to deploy a typical ERC-20 token. Read it here - it comes with a ready-to-run node setup!

  • [EXTERNAL] An incredibly comprehensive post about a parachain block's life, by Joe Petrowski from Parity.

  • [VIDEO] KayWhySee: an in-depth explanation of Kusama's on-chain identity system. This will be a free live webinar on Crowdcast.

  • [TUTORIAL] The tutorial on how to add Web 3.0 logins to an ancient Web 2.0 PHP application is fully live now in both video and written form. Video 1 | Video 2 | Writeup 1 | Writeup 2


Ecosystem

  • Mandala, Acala's testnet, launched on Feb 17th. Acala is a project aiming to create a decentralized finance (DeFi) chain that'll connect to Kusama and Polkadot. The chain will have two different versions, following Kusama's and Polkadot's vision respectively.

  • Edgeware, the smart contract Substrate chain which made headlines with its unique distribution mechanism - the lockdrop - also launched on February 17th. A getting started guide was promptly made available, but stay tuned for a hands-on tutorial from yours truly!

  • Paradigm Fund composed a biweekly update frighteningly similar to this one, though much more verbose. They absolutely deserve a shoutout for a job well done!

  • A new address type / network prefix for Darwinia, 18, was approved. https://github.com/paritytech/substrate/pull/5026/files


Enterprise


Web3 Foundation Grants

  • The Encointer Foundation has been funded for Encointer

  • SCS has been funded for further work on SubstraTEE, which provides the ability to run custom state transition functions in an SGX enclave.

  • FlexDapps has been accepted for a grant to develop Gantree, a full-service node infrastructure toolkit for Substrate-based blockchains.

  • Matter Labs got a grant to develop the Zinc/Redshift ZK programming framework.

  • Second State got a grant for Bridging Ethereum Tools and Smart Contracts into the Substrate Ecosystem

Reminder - you can always see the latest grants here.


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.