github MinaProtocol/mina 3.2.0
Mainnet Stable Release 3.2.0

6 days ago

The o1Labs team is proud to announce that 3.2.0 is ready for use on Mainnet! This release includes not only a lot of changes and refactors that will form a foundation for significant upcoming performance improvements, but also several immediate performance improvements in the daemon. We have also added support for two new operating systems (Ubuntu Noble and Debian Bookworm) based on your feedback!

If you run into any issues, please include Release: 3.2.0 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

New Features

#16853Introduce Converting Merkle Tree
Adds a flexible Merkle tree variant that supports conversion logic—useful for future ledger or tooling extensions.

#17508Rename and Improve generate_keypair App
Introduces the mina-generate-keypair CLI tool with improvements over the prior version.

#17540Support Docker Suffix Tags for Archive Nodes
Adds dynamic Docker tagging support for archive nodes, easing multi-version deployments.

Improvements

#16722WASM Memory Boosting with Lazy Cache
Reduces WASM memory usage via lazy-loading cache strategy, improving performance in browser or embedded environments.

#16809Faster Block Production via zkApp Proof Pre-Verification
Moves zkApp proof verification to before block creation, cutting out redundant work and speeding up block construction.

#16966Disk Cache Enabled in Daemon
Turns on persistent disk caching for the daemon, improving startup times and reducing recomputation.

#17120Faster zkApp Hashing
Caches account update action hashes, reducing workload during zkApp execution.

#17457Build Archive Nodes Per Network
Splits archive builds by network, simplifying configuration and deployment.

#17484Improve zkApp Transaction Regeneration
Improves reliability and determinism of zkApp regeneration, aiding test reproducibility.

#17514Optimize LMDB Cache Cleanup
Reuses IDs from garbage-collected entries, making LMDB cache maintenance faster and less CPU-intensive.

#17517Batch Deletion in LMDB Cache
Uses batch operations to remove multiple LMDB keys at once, reducing I/O overhead.

Bug Fixes

#17225Re-Delivered Transaction Pool Proxy
Restores correct behavior in the transaction pool proxy wiring, ensuring transactions are handled through the intended proxy path.

#17248Remove Legacy Ledger Catchup Logic
Eliminates outdated catchup logic that could cause inconsistencies, ensuring more reliable ledger sync.

#17461Post-Build Verification for Artifacts in CI
Adds automated validation of Docker and Debian artifacts after build, preventing corrupt or incomplete releases.

Complete Changelog since 3.1.0:

3.1.0...3.2.0

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

🚨NOTE - as Ubuntu 20.04 has now reached EOL we will phase out support for this in future releases🚨


Upgrading & Connecting to Mainnet

Debian Packages:

Debian Repository: First, set up and update the stable 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) stable" | sudo tee /etc/apt/sources.list.d/mina.list
sudo apt-get update

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

Mina Daemon: sudo apt-get install --allow-downgrades -y mina-mainnet=3.2.0-97ad487
Mina Archive: sudo apt-get install --allow-downgrades -y mina-archive=3.2.0-97ad487
Mina Archive Schema: create_schema.sql
Config File: var/lib/coda/config_97ad4878.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, noble, bullseye or bookworm to select the base docker image.

Mina Daemon: minaprotocol/mina-daemon:3.2.0-97ad487-CODENAME-mainnet
Mina Archive: minaprotocol/mina-archive:3.2.0-97ad487-CODENAME-mainnet
Mina Rosetta: minaprotocol/mina-rosetta:3.2.0-97ad487-CODENAME-mainnet

Step by Step Guide:

Docker only Make sure to run with:

--peer-list-url https://bootnodes.minaprotocol.com/networks/mainnet.txt or add PEER_LIST_URL=https://bootnodes.minaprotocol.com/networks/mainnet.txt to your .mina-env.

(note - the older https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt is still functional but we advise users to migrate to the newer one when possible).

Run mina daemon with:

mina daemon --peer-list-url https://bootnodes.minaprotocol.com/networks/mainnet.txt

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

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

Chain id:     a7351abc7ddf2ea92d1b38cc8e636c271c1dfd2c081c637f62ebc2af34eb7cc1
Git SHA-1:    97ad4878e6b43ab3ed145a5d42972ab062e5ffdd

Don't miss a new mina release

NewReleases is sending notifications on new releases.