Oasis Engineering Update November 2024

Read the most recent report from the Oasis engineering team with all the newest releases and network updates from November 2024!

A significant highlight of the development efforts in November was the team-wide summit organized by the Oasis team during the last week of the month in Ljubljana, Slovenia. Over three days, the team analyzed past projects, addressed current challenges, and formulated a strategic plan for the upcoming six months.

Key insights from the summit will be shared in a dedicated blog post; however, it's worth noting that this planning session impacted the volume of code merged this month compared to October. As usual, below is a breakdown: 

  • Wallet and CLI Updates
  • Network Updates 
  • Oasis Nexus and Explorer Updates
  • Developer Platform and ParaTime Updates
  • Oasis Core Update

Wallet and CLI Updates

The ROSE Wallet team merged a series of maintenance fixes in November. To receive your account balance and history, the wallet now supports the Oasis Nexus backend (#2076, #2078, #2089).

A few months ago, Bit Cat, the maintainer of the Oasis Scan, announced the deprecation of version 1 of his indexer API at the end of November. The wallet team merged support for their version 2 API (#2075). To avoid confusion, deposits to Cipher—the Oasis WASM-compatible ParaTime—are now marked as experimental (#2082). 

In total, seven pull requests were merged this month.

As the EVM-based Sapphire chain is gaining momentum, more users need clarification to move their tokens from the consensus-operated crypto exchange to the dApps running on Sapphire and vice versa. For this reason, besides maintaining and improving the ROSE wallet, the wallet team also built a helper tool called Oasis ROSE

With ROSE, users can now perform Sapphire deposits and withdrawals from and to consensus by simply using their Metamask-compatible wallet! Please try it out and contact us via the Oasis Discord server on the #wallets channel should you have any issues.

The Oasis CLI team merged support for compiling ROFL on TDX and a handful of convenience improvements. As noted in previous engineering reports, the next-generation ROFLs run on Intel’s Trusted Domain Extension (aka TDX). Support landed in Sapphire 0.9.0-testnet already, but compilation procedures involved some manual labor. Now, a developer can compile their TDX version of ROFL by simply invoking the “oasis rofl build tdx” command (#298). 

  • In addition, ROFL targets now compile against the standard GNU C library which is most common on Linux environments in contrast to the stripped-down MUSL C library found on Alpine-based distros (#319). 
  • The new “--subtract-fee” flag was added which subtracts the gas fee from the given amount (#257). 
  • This flag is handy to drain the account or keep it rounded to some specific number. 

The “oasis network set-chain-context” now supports auto-detecting the domain chain context separator (#317, #321). This is especially useful for Localnet developers so they don’t need to remove the network and re-add it each time their docker image is restarted. On November 17, the team released Oasis CLI 0.10.3, which contains all the features described except the TDX support, which will be available in the upcoming release. 

In total, 11 pull requests were merged in November.

Network Updates

Mainnet highlights

The number of daily transactions on Sapphire Mainnet was in the 21k range, with a few spikes towards 27k and drops to 16k. The monthly average in November was 21,854 transactions per day, slightly lower than the last month (23,060 transactions). The daily maximum was 28,716 transactions on November 22 (similar to October’s high of 28,931 on October 2).

The number of daily transactions on Emerald Mainnet was in the 4k range. The monthly average in November was 4,042 transactions per day, slightly higher than the last month (3,929 transactions). The daily maximum was 5,446 transactions on November 13 (compared to 4,781 the last month on October 2).

As of November 30, 2024, the number of the Mainnet nodes are as follows (October figures in parenthesis):

  • 117 (114) validator nodes
  • 6 (6) key manager nodes
  • 42 (42) Cipher compute nodes
  • 55 (56) Emerald compute nodes
  • 37 (38) Sapphire compute nodes

A 3-hour outage of the public Oasis GRPC endpoint and the Emerald RPC occurred on November 7 due to the degraded performance of one of the nodes and late load-balancer fallback. No other major outages were reported. 

Check out the details on the Mainnet status page

Testnet highlights

The number of daily transactions on Sapphire Testnet was in the 7k-9k range. The monthly average in November was 7,838 daily transactions and was lower almost for a quarter compared to the last month (9,910 transactions). The reduced number of transactions may be a consequence of the finished P4W3 in the first half of November. This month's daily maximum was 9,159 transactions on November 14 (compared to 13,025 the last month on October 9).

The monthly average of Emerald Testnet transactions was 3,436, comparable to the last month (3,247 transactions). The daily maximum was 4,542 transactions on November 4 (compared to 3,409 the last month on October 27).

As of November 30, 2024, the Testnet figures were as follows (October figures in parenthesis):

  • 43 (45) validator nodes
  • 7 (7) key manager nodes
  • 19 (19) Cipher compute nodes
  • 29 (29) Emerald compute nodes
  • 18 (19) Sapphire compute nodes
  • 5 (6) Pontus-X compute nodes

No major outages were reported for the Oasis Foundation-provided services in November. Check the current status of the Testnet services on the Oasis Testnet status page.

Nexus and Explorer

Last month, the Nexus team merged two notable features. Blocks can now be filtered based on the provided proposer (#764, #802). This is useful for the validator page, which can now display proposed blocks. The historical Testnet network API is now supported down to version 21.1 of the Oasis Core (early 2021) (#797). On November 22, the team released version 0.4.2 of Oasis Nexus. 

In total, five pull requests were merged in November.

The Explorer also saw some additions. The last engineering report mentioned the explorer integration into the Sapphire and Emerald Localnet docker images. This month, a new “official” theme in gray tones was added for the Localnet (#1628). Another new handy feature is searching by validator name (#1633). The mobile UI for showing validator information was implemented (#1602). The account balance now correctly handles rounding in the chart tooltips (#1600). While no new releases of the Explorer were made, you can head over to explorer.dev.oasis.io and peek into the shining new features. 

In total, nine pull requests were merged in November.

Developer Platform and Paratime Updates

The Sapphire team merged two new features into the @oasisprotocol/sapphire-contracts package—the Solidity library for writing confidential smart contracts:

  1. Signer libraries for Type 1 EIP-1559 and Type 2 EIP-2930 transactions running onchain were added (#447).
  2. A new precompile for calldata encryption was added (#449). This enables the generation of Oasis-compatible encrypted end-to-end transactions completely on-chain.

Further, the example for the @oasisprotocol/sapphire-wagmi-v2 package now contains end-to-end tests, including testing the Metamask integration with dAppwright (#450). Developers are strongly encouraged to implement UI end-to-end tests, which can easily be connected to the Sapphire Localnet docker image as part of their test suite.

Oasis Web3 Gateway now supports the “eth_feeHistory” endpoint, which is needed to implement EIP-1559 efficiently (#502). To reduce storing the huge number of transaction and query logs to disk, only the number of logs are stored (#657). This will greatly reduce the disk usage for node operators.

The Sapphire and Emerald Localnet docker images brought several notable improvements this month, cleanups and polishes:

  • A separate oasis-deposit binary for funding initial accounts was deprecated and replaced with a more general Oasis CLI, which is now part of the docker image (#633).
  • A new --no-explorer flag was added, which disables running the Nexus indexer and the Explorer frontend (#653). This is useful when spinning up the docker image for the Localnet Web3 gateway as part of the CI, and no other interaction is needed.
  • The docker image generation was optimized further, resulting in a reduction of the size by another 50 MB (#653).
  • A new 0.4.1 version of Nexus and the latest Explorer were added (#641).

In total, 15 pull requests were merged into the Oasis Web3 Gateway repository.

docs.oasis.io—the home of the Oasis documentation—also saw two notable updates:

  • The Remix chapter was completely revamped and moved outside of the Emerald umbrella to the “Tools & Services” section (#1003).
  • The Stake requirements for Node operators now contains a complete matrix of stake requirements vs the type of node an operator wishes to set up (#1019, #1022).

Core Platform Updates

The Oasis Core team merged the following new features and fixes:

  • Initial support for adding runtime on-the-fly was added (#5943, #5944). This will allow the node operator to add a new RONL or ROFL without restarting their node.
  • Zeroize sensitive data after sharing secrets in CHURP (#5928).
  • Add the expected enclave identity to the .orc manifest file when building ROFL TDX (#5931).
  • go-libp2p was bumped to 0.37.2 (#5952)

On November 29, the team also cut a 24.3.1 maintenance release, which includes a fix for the go-libp2p library. In total, eight pull requests were merged in November.

What’s Ahead?

That’s a wrap for engineering updates for 2024, but big things are in store for next year. Stay connected with the Oasis team by joining the Oasis Discord or the Oasis Forum. Also, keep an eye out for the 2025 roadmap, dropping in January!

How we use cookies?

At Oasis Foundation we believe in your privacy, so you can choose to browse our site without any tracking or by clicking “Accept”, you help us to improve our site and help us grow our ecosystem. View our Privacy Policy for more information.