Dev Status Update — June, 2020
Published by the IOTA dev team every month, this update will provide you with news and updates about our key projects! Please click here if you want to see the last status update.
The research department is also releasing a monthly update that you might want to see.
Chrysalis (also known as IOTA 1.5) is the Mainnet’s intermediate stage before Coordicide. You can read more about the strategy for releasing Chrysalis here.
Both Bee and Hornet teams are currently working on implementing Chrysalis phase 1 features. Chrysalis phase 1 is on schedule to release at the end of July. You can see the specifications in the linked RFCs, as well as comment and contribute yourself:
- Weighted Uniform Random Tip Selection (Protocol RFC #8 — Merged)
- White Flag (Protocol RFC #5 — Merged)
- Milestone Merkle Validation (Protocol RFC #12)
The Bee team is getting closer to release the first alpha version of the Rust node implementation together with Chrysalis phase 1. The team recently released the first crate for alpha 0.1.0.
As mentioned previously, you can now find the merged Bee RFCs in the Bee RFC book.
The team will also be doing regular live stream coding sessions. The first coding session took place last Friday and you can watch it here. The next coding session takes place today at 3 PM UTC. You can watch the live stream here.
You can find all Bee RFCs in their respective GitHub repository.
The last version of IRI, 1.8.6 has been released. As noted in this blog post, IRI 1.8.6 was the last release of IRI that we are actively planning. We encourage everyone to switch to Hornet in the upcoming weeks, but no later than with the release of Chrysalis phase 1, in the second half of July.
If you want to migrate your old IRI DB to Hornet so that you can retain history, you can use the following migration tool.
The Hornet team has released the 0.4.0 version of the node software. You can read more about the release in our summary. Or in the Hornet team post.
We have also released an Open Source Series Hornet installation video by Luca Moser that you can watch here. You can also watch the Hornet installation party video by Antonio Nardella as part of the IOTA Experience Team.
The GoShimmer team is finalizing the next release of the prototype software (Coordicide alphanet). The release will mainly include a new ledger state, specifically an initial implementation of Fast probabilistic consensus (FPC). This will allow the software to support and resolve conflicts in value transactions. The outcomes of all FPC rounds will be stored on our analysis server so that all conflict resolutions can be viewed in real-time as well as later analyzed. You can read more about the development in the last research update.
We currently plan on releasing the new version of GoShimmer Alphanet at the end of this month.
The team has been focusing on bringing together the core features of Wasp — our node for IOTA Smart contracts. Integration test cases on in-memory database, event publishing, smart contract request APIs, as well as rewriting portions of state synchronization and consensus. The state access and VM modules are also in progress.
Next up the team will be largely focusing on implementing expanding state data types and database access functions, debugging of synchronization and consensus functions. Todo list includes wrapper for the VM with reward collection logic, access authorization, and VM sandbox interface, as well as VM module itself with all interfaces and tools
The team has been moving full steam ahead with the architectural design of our new wallet — built for Chrysalis. The new wallet will be a largely Rust-based application, with a Svelte front-end. This will allow us to build an app that is secure, performant, and a pleasure to use. Initially, the app will target Capacitor on mobile and Electron on desktop, with a view to moving both to Tauri when ready (Note: two members of the Tauri team are also members of the wallet team, and another is involved with library development).
The wallet will consume two new Rust-based libraries: 1. a general-purpose wallet library for the account and transaction management and 2. a library for secure handling, storage, and backup of private keys and other sensitive data. The libraries are being designed to interoperate and will be available for the community to build their own applications.
We are approaching the end of our specification and proof of concept phase, after which we will move on to development. Naturally, building a community-facing application and associated libraries will require involvement and feedback from developers, and later on, alpha and beta testers. We look forward to involving the wider community in the project.
Trinity and Spark maintenance remain ongoing tasks but no new features are currently planned, and they will be deprecated with the launch of Chrysalis and the new wallet.
Based on the feedback we have received for the alpha version of Streams, we are currently expanding the feature set to allow for functionality like multi-publisher support and more. We are also adjusting the underlying cryptographic implementations to improve performance on existing hardware.
As we are finalizing the work on the alpha version of the new Permanode implemented in Rust, we have kicked off the Permanode Experience Team this Tuesday. We will gather feedback and improve the documentation before releasing the new Permanode.
IOTA Experience Team
The IOTA Experience Team (X-Team) comprises a series of initiatives to involve the community in our projects to collaborate on user experience. The initiatives have since taken off and we have seen kickoffs for IOTA Streams, Bee, Client libraries, GoShimmer, and Permanodes. You can see more information about all the initiatives on the IOTA Experience Team page.
In the coming week, we will be upgrading our Devnet network. The goal of this upgrade is to increase both the performance and reliability of the network. All our Devnet nodes will be Hornet nodes after the upgrade.
The planned downtime of the network will start at 7 PM UTC, June 23, and will last until later on June 24. Milestones will not be issued on the network in that period.
The existing load balancer and zmq endpoints remain unchanged but may become intermittently inoperational as we upgrade the nodes on Wednesday, June 24. We will be also upgrading the network coordinator.
If you are relying on the coordinator address in any way, the new address will be:
There will be no gap in the milestone index.
If you are operating a Devnet node, you are encouraged to switch to Hornet. IRIs will be able to participate in the network — gossip transactions, but will not be able to process new milestones once the network resumes operation. For node operators:
- We will be publishing a new local snapshot as well as full DB to spin the node from once the network resumes. Both will be uploaded to dbfiles.
- We will be publishing a new config.json file for your Hornet with the new Coordinator address.
We have made the following updates to our roadmap:
- The Universally-random tip selection component of Chrysalis has changed from ‘Request for comments’ to ‘In Development’.
- The roadmap website now displays the date of the update of any underlying item in the given section.
As always, we welcome everyone to stop by on Discord — every project mentioned here has a channel (or more) for discussion with the devs!
Follow us on Twitter to keep track of all the latest news: https://twitter.com/iotatoken