April 20, 2023

By swvheerden

This week in Tari

Versioning

This week we released new versions of StageNet, NextNet, and Development aka Esmeralda. All of the versions are available at Tari. The detailed versioning guide can be found here: detailed guide. Current recommended running versions for the Tari Network will always be available here

StageNet

StageNet has been upgraded to v0.48.0 this week. This means all, code changes that were in development at v0.48.0 is now running live in StageNet. The latest version will be v0.48.x.

NextNet

NextNet has been upgraded to v0.49.0-rc.3 this week. Same as with above, all changes that were in development in v0.49.0-pre.x will be in NextNet. The latest version will be v0.49.0-rc.x

Esmeralda

Esmeralda has been upgraded to v0.50.0-pre.0 this week. The latest version will be v0.50.0-pre.x

Aurora

The newest release of Aurora, 0.20.x, has also moved over to NextNet away from Esmeralda. This means that if you want to send funds over between the desktop version and mobile version, make sure you are running NextNet or v0.49.0-rc.x.

Feature gating

Curious users might have noticed that running a pre-build binary on a version that it is not built for will result in the binary displaying an error and not running. An example of such an error is:

ExitError { exit_code: NetworkError, details: Some("The network nextnet is invalid for this binary built for TestNet") }
ERROR Exiting with code (110): ExitError { exit_code: NetworkError, details: Some("The network nextnet is invalid for this binary built for TestNet") }

This is a safety feature that is now built into each binary to ensure it can only run the intended correct version as we now have multiple different versions each running a different version of the code. These code changes can be anything from differences in how the network communicates to changes in how the signatures of transactions are constructed. This has necessitated the need for these to be safely warded off.

The feature gating has also allowed us to make sure the miner now knows by default which network it was built for and knows the correct default ports to connect to so that you as the user don’t have to dig into the config to get the miner to work.

Data directory

Eagle-eyed users might have noticed that the data directory of all binaries has also somewhat changed to now include the running network name. This will allow users to easily run multiple different versions of the network at the same time without having to manually specify different locations to run at.