Multichain
Since its release, the Multichain has seen a great deal of contributions from the open-source, and this month has been no different. Although the chains coming in the next release of RenVM have now been finalised, the Ren team will begin going through these new chains before the next release to assess which ones are the most viable.
The Ren core development team has also been working on the Multichain, and this month we successfully demonstrated cross-chain interoperability with the Acala Testnet. Although Acala Mainnet is not yet live, this work brings us a step closer to supporting it once it does go live, bringing BTC and other non-native assets to the Polkadot ecosystem. We also demonstrated a proof-of-concept with Solana. There is still lots more work to do, given its unique design, but we have now been able to develop a concrete execution model that supports every RenVM needs.
Multiwallet
What is a chain without a wallet? Not much. This month, we began developing a new front-end library — the Multiwallet — that complements the Multichain. It allows developers to use one single unified library to interact with multiple wallets across multiple chains, while still being able to fine-tune their dependencies, keeping their UIs slim and fast.
Airwave
Underneath all of the consensus and execution done by RenVM is its peer-to-peer network, Airwave. This month, we continued work on the next version, bringing support for several new features that improve the reliability, stability, and performance of the network.
- Channels that persist across connection failures. This makes for a more stable connection between nodes, even when network conditions are poor, and connections are constantly being dropped/re-connected.
- Slim message formats that reduce overhead. Message duplication in gossiping is unavoidable (and part of what makes it work), but the new sync on-demand semantics reduce resource wastage.
- Parallel handshakes for faster authentication/encryption, allowing nodes to handle many more simultaneous connection attempts, and reject bad ones sooner.
- Composable connection policies for simpler, but more powerful, rate-limiting and DoS protection.
We have also undergone a larger documentation effort to begin making Airwave more approachable to new developers. Once these features are stable and tested, we will begin auditing the implementation to ensure its correctness.
Lotan
Lotan is the name of our internal testing framework. The next version of RenVM comes with some breaking changes, but also new features, and of course, new chains. This month, we worked on upgrading Lotan to (a) use the Multichain for all of its blockchain interactions, and (b) continuously test all of the new chains that RenVM will be supporting. This allows us to perform continuous random testing against RenVM, over the course of weeks and months, to gain confidence in its stability and correctness.
RenJS
RenJS is the JavaScript library that developers use to interact with RenVM. We have been working on the next version for a few months now, but this month it became available as a release candidate, and should be ready for wide-spread use soon. This includes support for multiple deposits, transaction replacements, and easy to debug transaction state machines (with automatically generated state diagrams).
Once the next version of RenVM is available, we strongly encourage all developers to upgrade to the next version of RenJS in order to get access to all of the new features and chains supported.