We are excited to announce our latest product release. We have been working hard on improving our Move VM, tooling and Substrate pallets. This release will not only maintain network compatibility with the latest Diem Blockchain developments, but also add new functionality for staking, vesting and Polkadot Parachain data transfers through XCMP. We will also share some of the challenges we are facing with adopting the new Diem standard library and how we plan to solve them.
Move VM: We finished upgrading our Move VM. Given we are using our own fork of the Diem Move VM that works in a WebAssembly (WASM) runtime, we wanted to make sure that our codebase could be upgraded to the latest updates from the Diem Association without breaking backwards compatibility. In this update we also refactored native balances logic, added genesis initialization logic, allowing users to upload custom standard libraries alongside the rest of the standard library configuration like initialization of modules and accounts in the genesis block.
Move Tools: We updated our Move tooling to be compatible with the latest version of the aforementioned Move VM. This includes updates to the Dove package manager, compiler and disassembler. We also refactored the compiler, improved commands, and added more validations. For a list of all the updates, read the full version changelog.
*New* Staking Pallet: Our Substrate node now has staking functionality (Yay! 🥳). Changes are in PR, as we first need to prepare our DevOps infrastructure for staking and restart our testnet in the near future. We had initially planned to customize the staking economic model, but we decided to adopt the standard Substrate staking and inflation model since it is optimal for our use case.
*New* Vesting Pallet: We have successfully added a vesting pallet to our Substrate node. This allows us to generate a genesis block with vested balances in PONT tokens, a useful feature for current and future investors.
Move Pallet: We will soon finish updating the Move VM pallet with the latest Move VM version. We are finalizing tests and connecting native balances after refactoring.
We are making good progress on this feature, already achieving the milestone of implementing cross chain messaging between two parachains with XCMP evidenced by a successful test message delivered. Next, we are working on enabling basic asset transfers between parachains and resolving issues with implementing smart contract execution. A big thank you to the Parity team for helping us with this.
Challenges Adopting the Diem Standard Library
Given the more centralized permissioned architecture of the Diem Blockchain, we are running into issues adopting their new standard library. The latest release contains changes that ensure the code adheres to the regulatory compliance framework set by the Diem Association which requires a lot of functions to be called or executed only with signed permission from the Diem Root Account or Diem Treasury Accounts. This is breaking logic and compatibility for our permissionless system, since we had planned to allow for functionality to work without permissions from the treasury and root accounts.
Our plan to solve this challenge:
// The macro disables requirements of tc_account signature (Treasury Compliance Account).public(script) fun create_parent_vasp_account<CoinType: store>(
Looking ahead at future releases:
In conclusion, the Pontem Network core protocol and developer tooling updates we have been working on will be the backbone of the Pontem vision. The new Move language and the tech we are building is at the forefront of blockchain innovation and we are happy to be contributing our expertise to this open source ecosystem. Our commitment to continue building the novel Substrate framework is also testament to our shared vision of a multi-chain future with Parity and Polkadot, and we will continue to share more updates on this shared vision very soon 😉. Finally we are also committing to full transparency in our technical and business challenges and how we are aiming to solve them in this shared journey with you. We do this to invite you all to get involved in our shared success, because we can’t do this alone and we believe that by staying true to the core values of trust and transparency of blockchain we will go far beyond the moon.
Our vision to become the Experimentation platform for facebook-backed Diem can only be realized with your help and support. Please spin up a node on our testnet and give our products a try. Talk to us on Telegram, Discord, or anywhere else you can find us on the Metaverse. We welcome all questions, positive feedback and constructive inputs in our journey to become the metaverse bridge from permissionless crypto to the new permissioned ecosystem that Facebook is seeding in partnership with other Diem Association members including Uber, Shopify, Kiva, and Andreesen Horowitz among others.