github MinaProtocol/mina 3.1.0-alpha1
Devnet Pre-Release 3.1.0-alpha1

latest release: 3.1.0-beta1
pre-release6 days ago

The o1Labs team is proud to announce that 3.1.0-alpha1 is ready to test on Devnet! This release includes some new features, bug fixes, hashing performance enhancements as well as additional code cleanup & general improvements. A very cool addition to this release is an optimization to the ledger synchronization protocol, specifically enhancing how nodes sync their ledger state during a fresh startup, after downtime, or restarting from stale state.

The change reduces the number of network roundtrips needed to sync a ledger and therefore makes syncing fast even as the # of accounts in the ledger grows!

We have also introduced enhancements during bootstrapping to reduce empty blocks on node restart.

We have also landed some very cool additional work such as a reduction of the max time to produce a block from >120s down to <45s and some nice items that allow for resource reductions.

This release also introduces the ability to spin up custom snark coordinator configurations! Here's a cool script that showcases the usage!

If you run into any issues, please include Release: 3.1.0-alpha1 in the name of any issues you create. Please report any issues you encounter here or join the discussion!

Some highlights of what has changed

Improvements

  • #16093: Wide merkle query
  • #16272: Improve lagrange retrieval performance & remove unsafes
  • #16201: optimize memory consumption for verifier subprocess
  • #16356: provide full runtime config to graphql
  • #16207: Update proof systems commit to include safe lagrange basis
  • #16274: LMDB storage
  • #16304: Remove redundant fields from compile config type
  • #16186: [Part 1 of 2] Constants loader and Config loader
  • #16163: Explicitly declare missing daemon runtime configuration
  • #16206: Work_selector: small cleanup
  • #16145: Refactor transition router
  • #16216: using snark work rpc in bootstrap to initialize completed snark pool
  • #16656: replace Root with Root_(hash, common) in persistent database
  • #16569: Do not compute hash for logging in RPC
  • #16568: Don't compute staged ledger hash on every RPC call
  • #16201: optimize memory consumption for verifier subprocess
  • #16055: Optimize the non-present zkapp uri hashing
  • #16367: Standalone snarkwork process to submit proofs via graphql
  • #16366: Submit snark work using graphql
  • #16244: GraphQL: add a query to fetch specific pending snark work

Bug fixes

  • #16261: Fix Lagrange basis performance regression
  • #16285: Fix generator for transaction_pool tests
  • #16055: Optimize the non-present zkapp uri hashing
  • #16375: [Rosetta] use mina missing block guardian script instead of download missing blocks
  • #16057: Small fix of zk rows for chunking

Complete Changelog since 3.0.4:

3.0.4...3.1.0-alpha1

Supported environments include macOS, Linux (Debian 11 and Ubuntu 20.04 LTS), and any host machine with Docker.


Upgrading & Connecting to Devnet

Debian Packages:

Debian Repository: First, set up and update the alpha Debian Repository for your platform with the following commands:

sudo rm /etc/apt/sources.list.d/mina*.list
echo "deb [trusted=yes] http://packages.o1test.net $(lsb_release -cs) alpha" | sudo tee /etc/apt/sources.list.d/mina-alpha.list
sudo apt-get update

Then, install the package(s) that you need:

Mina Daemon: sudo apt-get install --allow-downgrades -y mina-devnet=3.1.0-alpha1-56cdb61
Mina Archive: sudo apt-get install --allow-downgrades -y mina-archive=3.1.0-alpha1-56cdb61
Mina Archive Schema: create_schema.sql
Config File: var/lib/coda/config_56cdb612.json

Docker Images:

Every docker image is built for each of the supported platforms, replace CODENAME in the images below with your choice of focal or bullseye to select the base docker image.

Mina Daemon: gcr.io/o1labs-192920/mina-daemon:3.1.0-alpha1-56cdb61-CODENAME-devnet
Mina Archive: gcr.io/o1labs-192920/mina-archive:3.1.0-alpha1-56cdb61-CODENAME
Mina Rosetta: gcr.io/o1labs-192920/mina-rosetta:3.1.0-alpha1-56cdb61-CODENAME-devnet

Step by Step Guide:

Docker only Make sure to run with:

  • -peer-list-url https://storage.googleapis.com/o1labs-gitops-infrastructure/devnet/seed-list-devnet.txt or add PEER_LIST_URL=https://storage.googleapis.com/o1labs-gitops-infrastructure/devnet/seed-list-devnet.txt to your .mina-env.

Run mina daemon with:

mina daemon --peer-list-url https://storage.googleapis.com/o1labs-gitops-infrastructure/devnet/seed-list-devnet.txt

Check out our documentation for complete instructions on using this version to connect to Devnet.

If you are running the correct version on the correct network DEVNET, mina client status will show:

Chain id:     29936104443aaf264a7f0192ac64b1c7173198c1ed404c1bcff5e562e05eb7f6
Git SHA-1:    56cdb61260e6124c5f7937406859f410cc33772a

Don't miss a new mina release

NewReleases is sending notifications on new releases.