Introducing Witnet-Rust 1.5 — Miners, it is time to upgrade!

Witnet-Rust 1.5 hugely expands the capabilities of the Witnet protocol, bringing new use cases to the Witnet oracle and its 10+ supported EVM chains. All miners are encouraged to upgrade their nodes by April 5.

Adán Sánchez de Pedro
The Witnet Oracle Blog
4 min readMar 31, 2022

--

Since the Witnet mainnet was released on October 2020, the network has seen a continuous and astonishing growth:

  • 280,000 different addresses have mined at least 1 block and 426,000 different addresses have solved at least 1 data request.
  • The address that mined the most blocks got 133, and the address that participated in the most data requests got 2,680.
  • The Witnet mainnet chain is now formed by almost 1 million blocks, containing 465,000 data requests sent to the oracle and 735,000 value transfer transactions.
  • The Witnet oracle is bridged to 10+ EVM compatible mainnet networks and as many testnets, where it timely updates 70+ price feeds and provides randomness generation and HTTP adapters.

The number of new features, integrations and ecosystem initiatives in the pipeline is huge, and everyone in the community are doing their best to make those efforts crystalize as soon as possible. As an appetizer, the Witnet development community is today announcing Witnet-Rust 1.5.

What’s new on 1.5 🗞️

Witnet-rust 1.5 is the consolidation of all the research and development that the witnet-rust developers have been working on since 1.4 came out in September 2021.

Namely, 1.5 introduces and activates two different Witnet Improvement Proposals:

  • WIP-0020, which expands the capabilities of the oracle by adding support to HTTP POST data requests. This type of query is specially interesting for connecting GraphQL data sources such as TheGraph. Once this capability is activated, we will have price feeds that can read from DEXes and CEXes at the same time, getting the best of both worlds.
  • WIP-0021, which give more flexibility to data requests by introducing a new XML parser operator. This does not only expand the number of data sources that can be directly consumed (specially corporate APIs and specialized data sets), but also opens the door to reading XML-based formats like the SVGs that are so popular in NFTs, right from your smart contracts.

As usual, these protocol improvements were the result of the cooperation of multiple developers, miners and stakeholders in the ecosystem, and gathered positive feedback from the community all through the weeks that it took from initial discussion to final implementation.

This is a clear example of the decentralized ethos that characterizes Witnet: different parties with varying — and sometimes conflicting — interests working together for the advancement of the ecosystem as a whole.

Beyond these two main improvements, many other optimizations, bugfixes and UX enhancements have made their way to the 1.5.x branch. The most noteworthy of these is a new mechanism for keeping the UTXO set in storage, which translates to a much more reduced memory footprint for the Witnet node. Our experiments show that peak RAM usage is now 700MB, down from the 3GB that the 1.4.0 branch used to take up while synchronizing*.

When are these changes becoming active? ⌛

Some of the changes that come with 1.5 are consensus-critical changes. That is, a majority of mining nodes in the network need to adopt those breaking changes for them to be effectively enforced.

The Witnet protocol incorporates a mechanism for drama-less network upgrades known as Threshold Activated Protocol Improvements, or TAPI for short. This mechanism delays activation of protocol changes until more than 80% of the blocks in a 2-weeks period are signaling support for the new consensus rules.

The first signaling period for this upgrade (TAPI bit 2) begins at protocol epoch #1032960 (April 5 2022 at 9am UTC). If this first signaling period is successful, the new protocol rules will enter into force on April 19 2022.

Upgrading before the beginning of the signaling period is highly encouraged. As always, if the 80% threshold is not met, the upgrade will remain inactive and the 2-weeks period will be reset

How do I upgrade my nodes? 🤔

The upgrade procedure is the same as usual. You will simply have to follow these steps as described in the documentation.

This time around, do not be surprised if your nodes take a few minutes to start right after applying the new upgrade as the new RAM optimization requires a little one-time database migration and housekeeping.

Sheikah Has Also Upgraded ✨

The Sheikah Witnet Wallet just received an update, with version 1.11.2 fixing and improving many small parts, including:

  • Fix missing transactions, when those were subject to timelocks.
  • Allow updating when necessary to the latest witnet-rust binary (which Sheikah uses as its backend).

* The memory footprint optimization described above will only be available starting with version 1.5.1, to be released around April 7. The base 1.5.0 release will not include this optimization for the sake of backwards compatibility with some existing integrations.

About Witnet

The Witnet protocol enables smart contracts to realize their true potential by giving them access to all sorts of valuable data sets, and by attesting and delivering that information securely thanks to its strong cryptoeconomic guarantees.
Website | GitHub | Twitter | Discord | Telegram | Reddit | YouTube

--

--

Adán Sánchez de Pedro
The Witnet Oracle Blog

@Witnet_io board member, CTO at @StamperyCo, founder of @LoquiIM. Microelectronics aficionado. I write code, give talks, make music, brew beer and laugh a lot.