Skip to content

Releases: MinaProtocol/mina

Devnet Pre-Release 1.3.0alpha1

17 Dec 22:36
98ec1bb
Compare
Choose a tag to compare
Pre-release

The O(1) Labs team is proud to announce that the compatible branch is ready for alpha testing on Devnet in the form of this 1.3.0alpha1 release. The scale of the changes since 1.2.2 is massive after months of work across most of our tooling and many different parts of the application. The 1,424 Commits and 1,589 changed files is a testament to the amount of hard work the team at O(1) Labs, along with contractors and community contributors have put in since even before Mainnet launch. Our internal testing has been very positive, and a large amount of that work was to improve our ability to ship quality, well-tested, maintainable code. Obviously with that much change there are bound to be new bugs that we have yet to discover but we invite you to try this new alpha out on our Devnet network.

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

Highlighted New Features:

  • This version supports both MINA_ environment variables and the old CODA_ prefix, but the 1.3.X will be the last releases to support CODA_. We recommend you take this opportunity to use MINA_ everywhere going forward (example: MINA_PRIVKEY_PASS, MINA_CLIENT_TRUSTLIST, etc.)
  • Support for Debian Buster in addition to Ubuntu18.04/ Debian Stretch. Official support for 20.04 is coming soon, hopefully before 1.3.0 stable. To use the new buster-based package or images, replace stretch with buster in either the docker image tag or the debian repository setup command.

Archive Node:

Some important archive node changes, including a new database schema, are not yet included in this release, so we advise anyone that is waiting for the 1.3.0+ archive node to wait for a future alpha with the final database schema and more complete migration instructions.

Complete Changelog since 1.2.2:

The change set is far too large for github to display, but the github comparison still shows the immense scale of 1.3.0 and why we are so excited to get it out into your hands to test.
1.2.2...1.3.0alpha1
For more information about the changes included in 1.2.2, see the previous release notes

Upgrading & Connecting

Debian Packages:

Debian Repository:
First, Set up and update the alpha Debian Repository for your platform (stretch or buster, ubuntu 20.04 coming soon)

echo "deb [trusted=yes] http://packages.o1test.net stretch 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 -y mina-devnet=1.3.0alpha1-98ec1bb
Mina Archive: NOT READY YET - see the note above for more details

Docker Images:

Mina Daemon: minaprotocol/mina-daemon:1.3.0alpha1-98ec1bb-stretch-devnet
or for a Debian Buster image: minaprotocol/mina-daemon:1.3.0alpha1-98ec1bb-buster-devnet
Mina Archive: NOT READY YET - see the note above for more details

Sandbox Node: For testing in an isolated, single-node network without snarks

As of 1.2.0, the demo functionality is built into the standard daemon container, via the environment variable RUN_DEMO=true.
Just docker run -it --name mina-demo -e RUN_DEMO=true minaprotocol/mina-daemon:1.3.0alpha1-98ec1bb-devnet and go!

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Devnet. Docker only Make sure to run with --peer-list-url https://storage.googleapis.com/seed-lists/devnet_seeds.txt.

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

Chain id:     b6ee40d336f4cc3f33c1cc04dee7618eb8e556664c2b2d82ad4676b512a82418
Git SHA-1:    98ec1bb9f01856d79171d4b7f2689ad17b1b751d

Mainnet Stable Release 1.2.2

19 Nov 08:11
feee67c
Compare
Choose a tag to compare

The O(1) Labs team is proud to announce that we're graduating the 1.2.1 Beta to Stable (as 1.2.2 with a new commit hash just to make sure apt consistently selects the correct package). This release includes the async VRF and responsiveness fixes, as well as some additional UX improvements and some retry logic for the uptime service. 1.2.2 includes the more comprehensive changes to improve graphQL/networking responsiveness as promised, as well as a new async VRF computation process to keep VRF evaluations off of the main thread (especially for block producers with many delegates). These changes have been very effective on Devnet and Mainnet and we feel confident urging all users to upgrade from 1.2.0.

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

Stability Improvements and Bug Fixes:

  • Async scheduler changes to improve responsiveness #9416 and related metrics #9545
  • Stop restarting the Verifier every 15 minutes #9565 #9568

New Features:

  • Asynchronous VRF evaluation process #9409
  • Change the docker entrypoint script so that the last few lines of log output are less likely to get cut off #9568
  • Properly tag releases in CI and push them directly to minaprotocol/ #9566
  • Deprecate the setStaking graphql endpoint and mina client set-staking command #9717
  • 5 minutes of retries for sending snark work to the foundation delegation backend #9764

Archive Node:

  • Update mina-extract-blocks to properly set the block_winner instead of always using creator_id #9567 (Thanks @kobigurk for making the change and @jrwashburn for bringing attention to this bug)

Complete Changelog since 1.2.0:

1.2.0...1.2.2
For more information about the changes included in 1.2.0, see the previous release notes

Upgrading & Connecting

Debian Repository:
First, Set up and update the stable Debian Repository

echo "deb [trusted=yes] http://packages.o1test.net stretch stable" | sudo tee /etc/apt/sources.list.d/mina.list
sudo apt-get update

Then, install the package(s) that you need:
Daemon Package: sudo apt-get install -y mina-mainnet=1.2.2-feee67c
Archive Node Package: sudo apt-get install -y mina-archive=1.2.2-feee67c

Docker Images:

Daemon Image: minaprotocol/mina-daemon:1.2.2-feee67c-mainnet
Archive Image: minaprotocol/mina-archive:1.2.2-feee67c

Devnet:

This release does also improve the experience for nodes on devnet, simply replace mainnet with devnet in the package or docker image name above to use this release on devnet.

Sandbox Node: For testing in an isolated, single-node network without snarks

As of 1.2.0, the demo functionality is built into the standard daemon container, via the environment variable RUN_DEMO=true.
Just docker run -it --name mina-demo -e RUN_DEMO=true minaprotocol/mina-daemon:1.2.2-feee67c-devnet and go!

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Docker only Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    feee67cc2836bf12e792510a2440f28a0275740e

Mainnet Beta Release 1.2.1beta1

10 Nov 10:37
45440dc
Compare
Choose a tag to compare
Pre-release

The O(1) Labs team is proud to announce that we're graduating the 1.2.1 alpha to Beta, with some additional UX improvements and some retry logic for the uptime service. 1.2.1beta1 includes the more comprehensive changes to improve graphQL/networking responsiveness as promised, as well as a new async VRF computation process to keep VRF evaluations off of the main thread (especially for block producers with many delegates). These changes have been very effective on Devnet thusfar and initial Mainnet testing looks equally positive.

If you run into any issues, please include Release: 1.2.1beta1 in the name of any issues you create. Please report any issues you encounter here or join the Discussion!

Stability Improvements and Bug Fixes:

  • Async scheduler changes to improve responsiveness #9416 and related metrics #9545
  • Stop restarting the Verifier every 15 minutes #9565 #9568

New Features:

  • Asynchronous VRF evaluation process #9409 with improved ux #9792
  • Change the docker entrypoint script so that the last few lines of log output are less likely to get cut off #9568
  • Properly tag releases in CI and push them directly to minaprotocol/ #9566
  • Deprecate the setStaking graphql endpoint and mina client set-staking command #9717
  • 5 minutes of retries for sending snark work to the foundation delegation backend #9764

Archive Node:

  • Update mina-extract-blocks to properly set the block_winner instead of always using creator_id #9567 (Thanks @kobigurk for making the change and @jrwashburn for bringing attention to this bug)

Complete Changelog since 1.2.0:

1.2.0...1.2.1beta1
For more information about the changes included in 1.2.0, see the previous release notes

Upgrading & Connecting

Debian Packages:

Debian Repository:
First, Set up and update the beta Debian Repository

echo "deb [trusted=yes] http://packages.o1test.net stretch beta" | sudo tee /etc/apt/sources.list.d/mina-beta.list
sudo apt-get update

Then, install the package(s) that you need:
Mina Daemon: sudo apt-get install -y mina-mainnet=1.2.1beta1-45440dc
Mina Archive: sudo apt-get install -y mina-archive=1.2.1beta1-45440dc

Docker Images:

Mina Daemon: minaprotocol/mina-daemon:1.2.1beta1-45440dc-mainnet
Mina Archive: minaprotocol/mina-archive:1.2.1beta1-45440dc

Devnet:

This release does also improve the experience for nodes on devnet, simply replace mainnet with devnet in the package or docker image name above to use this beta on devnet.

Sandbox Node: For testing in an isolated, single-node network without snarks

As of 1.2.0, the demo functionality is built into the standard daemon container, via the environment variable RUN_DEMO=true.
Just docker run -it --name mina-demo -e RUN_DEMO=true minaprotocol/mina-daemon:1.2.1beta1-45440dc-devnet and go!

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Docker only Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    45440dc7e4c5dac480dd075357c1d369b893fbe1

Mainnet Stable Release 1.2.0

25 Oct 23:45
fe51f1e
Compare
Choose a tag to compare

As many of you are already aware, we have been working to stablize version 1.2.0 for quite some time. The O(1) Labs Team is proud to announce that 1.2.0 Stable is ready for use in production on Mainnet! 1.2.0 contains a variety of Quality of Life Improvements for node operators, including some new tools, graphql queries, cli commands, metrics, not to mention the countless efforts that went on behind the scenes to keep Mainnet and our team at O(1) Labs running smoothly.

In addition, 1.2.0 includes the client for the proposed update to the Mina Foundation Delegation Program (some further server work is required before the updated program launches, stay tuned for more announcements from the Mina Foundation on this topic). You can test the client implementation and configuration yourself as described below in the New Features section.

New Features:

GraphQL:

  • Match GraphQL sync status with the daemonStatus #8255
  • Allows the pooledUserCommands query to select transactions by hash or ID, to make it more consistent with transactionStatus #8293
  • Adds new GraphQL endpoint stagedLedgerProofEmitted to indicate that a new staged ledger proof was formed #8658

CLI Commands:

  • Improved handling of locally-generated transactions to allow re-sending transactions and give the user more control over rebroadcasting transactions. No more already saw this errors! #8973
  • mina advanced vrf is a set of new advanced commands for generating and evaluating VRF witnesses to prove that your key has won a slot #8814
  • mina advanced hash-transaction is a new command for hashing transactions #8294
  • mina ledger export snarked-ledger is a new command for exporting snarked ledgers with proven balances #8844
  • Show the coinbase-receiver in mina client status if it is set, and adds a new command mina advanced set-coinbase-reciever to change the coinbase receiver at runtime #8127
  • mina advanced chain-id-inputs is a new command for displaying the inputs to the ChainID #8264
  • mina advanced send-rosetta-transaction now immediately sends the transaction instead of waiting for the command to exit #8186
  • mina accounts commands now support retrieving/uploading keys and account information over a remote graphQL interface instead of just local files #7282
  • Return exit code 1 when mina ledger export commands fail #8720
  • New flag --minimum-block-reward to mina daemon that allows a block producer to set the minimum net reward from producing a block. #8605
    • Addresses concerns from #8576 and block producers who have overpaid for snark work. If paying the fees for a given snark would drop the resulting profit below the given value, an empty block with no transactions is produced instead.

Other:

  • More coda->mina changes #8238
  • Allow passing peers-list-url parameter as part of the daemon.json or other config file #8295
  • Quieter logging and improved messaging during daemon startup #8261 #8203 #8146 #8260 #8488 #8503
  • Improved Mina Foundation Uptime Tracking! #9499
    • This feature no longer requires importing your keypair, now supports a new flag --uptime-submitter-key which takes the path to your private key, just like --block-producer-key.
    • To test the new system, pass in the following information to the daemon:
      • The path to the private key with the flag --uptime-submitter-key </path/to/private/key>
      • The URL of our testing backend server with the flag --uptime-url http://34.134.227.208/v1/submit
      • The password for the keypair associated to the given public key with the environment variable UPTIME_PRIVKEY_PASS=My_V3ry_S3cure_Password. If you are using a .mina-env file on Debian then this value should be on its own line, not included in EXTRA_FLAGS=.
  • New environment variables in .mina-env for use with the mina systemd service #9375 #9533
    • Passes in the --peer-list-url automatically to correspond to the mina package (mina-mainnet for mainnet peers list, and mina-devnet for devnet peers).
    • This value can still be overridden with PEERS_LIST_URL variable in .mina-env
    • Block production is disabled by default, use EXTRA_FLAGS as shown below to configure your block producer keys
    • LOG_LEVEL variable to set the daemon log level, with the default value Info
    • FILE_LOG_LEVEL variable to set the daemong file log level, with the default value Debug
    • Remove --generate-genesis-proof true as it no longer does anything in this mina version
    • Changed WantedBy to default.target instead of multi-user.target as the latter does not work in user services (as many users have reported)
EXTRA_FLAGS="--block-producer-key /home/mina/my-wallet --uptime-submitter-key /home/mina/my-wallet --uptime-url http://34.134.227.208/v1/submit"
UPTIME_PRIVKEY_PASS=My_V3ry_S3cure_Password
MINA_PRIVKEY_PASS=My_V3ry_S3cure_Password
CODA_PRIVKEY_PASS=My_V3ry_S3cure_Password
LOG_LEVEL=Info
FILE_LOG_LEVEL=Debug

Note: MINA_PRIVKEY_PASS will not be supported until the 1.3.0+ Mina Daemon releases but it won't hurt to start providing it now.

Stability Improvements and Bug Fixes:

  • Guard against underflow when calculating balances via GraphQL #8096
  • More thorough fix for nodes getting stuck at old block heights #8352 #8358 #8419 #8506
  • Don't add "extra" snark work even if there is space and budget #8098
  • Check that keys are valid before adding transaction to the pool #8442
  • Fix edge case where transactions were dropped from the mempool #8473
  • Check the validity of keys when they are provided as arguments to the CLI #8447
  • Catch errors when the chain runs out of available accounts in the ledger #7258
  • More verbose logging around long async cycles to help debug their source #8809
  • Rebroadcast snark work until it is included in a block #8793
  • Prevent crashes caused by short forks off of the root of the transition frontier #8952
  • Rebroadcast transactions in chunks to better support reliable transaction broadcasts #8965
  • Make calls to the verifier async to avoid lockups and bottlenecks in verifying transactions #8961
  • Improves logic for communicating between rust and ocaml processes to prevent some memory corruption and segfaults #8998
  • Limit snark work broadcasts to a safe rate below the libp2p rate limit to avoid getting throttled by peers #9011
  • Revert the changes to staged ledger diff application #9068
  • Fix super-catchup cache invalidation to allow re-downloading failed state hashes #9132
  • Fix remaining WNOHANG crashes caused by child process management #9171
  • Prevent mina ledger export-ledger staged-ledger from blocking RPC heartbeats from being processed #9168
  • Fix file descriptor leak by ensuring stdin is closed for all child processes after they have exited #9178
  • Mitigation for the offline issue (crash when node has been running for >34 hours) #9301 #9387 add --stop-time flag to configure this behavior #9506
  • Hardening for the transaction mempool and mitigations to prevent broadcasting bad transactions. See our Retrospective for more information about our approach with these fixes and why they were important.

Improved Packaging and CI:

  • Use the mina-mainnet package in docker #8239
  • Terraform for mainnet and devnet2 #8225 #8179 #8250 #8248
  • Attempted fix of clientSDK publish CI job #8325
  • Optional Genesis Proof, Prover/Verifier Keys, and other network-specific artifacts at build-time and at startup #8497 #8584 #8672 #8764 #8947
  • New tool for managing generated/downloaded keys, snark_keys/gen_keys.exe, which takes in a config-file and downloads or generates the appropriate artifacts #8554
  • Refactor docker entrypoint script to be more flexible and allow for arbitrary scripts to execute in /entrypoints.d/ #8263
  • Enable Alpha Builds #8876
    • coda->mina across CI/CD, scripts, and docker/debian tags
    • consolidate mainnet, devnet, and archive-node builds into a single job
    • migrate Ubuntu 18.04 containers to debian:stretch-slim for lightness
    • lay groundwork for Ubuntu 20.04 and Debian Buster support
    • remove legacy code including circle-ci
    • adds dockerfiles/Dockerfile-deb-builder which can build complete .deb packages for all mina packages
    • remove debugging symbols from dune builds
    • remove unused dependencies from debian packages
  • Dockerfile now uses UserID 50000 instead of 192920 #9435 #9326
  • Debian stretch archive image no longer requires man to use postgres package #9410
  • Fix $KEY_NAME quoting #9446

Improvements to ancillary tools (rosetta, archive-node, sidecar, etc.)

Rosetta:

  • Add minimum transaction fee to Rosetta #8170
  • New functions in the ClientSDK for supporting Rosetta-formatted keypairs #8324
  • Add locked_ and total_ balance metadata to Rosetta account and balance responses #8141
  • Add support for network=mainnet to Rosetta #8877

Libraries:

  • New version of ppx_version #8435 #8734
  • New version of snarky #8908
  • Additional utility library for managing Pickles_types #8075

Archive-node and related tools:

  • Canonical representation for "extensional blocks" for backing up and restoring archive node data #8312
  • mina-extract-blocks tool for restoring archive node data from an existing archive node #8343
  • mina-replayer improvements #8329 #8717 #8739 #8751
  • Tools for patching bad balances from before the 1.1.5 archive node release #8583 #8611 #8732 #8815 See complete instructions for a walkthrough on how to patch your archive.

Delegation Compliance App:

Documentation:

  • #8374 Blockchain proof verification
  • #8486 Child Processes
  • #8428 bin_io Serialization Fo...
Read more

Devnet Pre-Release 1.2.1alpha1

15 Oct 23:01
1f98b8b
Compare
Choose a tag to compare
Pre-release

The O(1) Labs team is proud to announce that we're moving onto the 1.2.1 range of releases in the anticipation of 1.2.0beta8 soon graduating to stable. This first 1.2.1 Alpha release 1.2.1alpha1 includes the more comprehensive changes to improve graphQL/networking responsiveness as promised, as well as a new async VRF computation process to keep VRF evaluations off of the main thread (especially for block producers with many delegates).

This alpha release includes all of the changes from 1.2.0beta8, including the new uptime tracking system, but it is not recommended to use this feature on devnet unless its for testing against your own backend. Otherwise you can expect the same workflow as using 1.2.0beta8 with no new breaking changes.

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

Stability Improvements and Bug Fixes:

  • Async scheduler changes to improve responsiveness #9416 and related metrics #9545
  • Stop restarting the Verifier every 15 minutes #9565 #9568

New Features:

  • Asynchronous VRF evaluation process #9409
  • Change the docker entrypoint script so that the last few lines of log output are less likely to get cut off #9568
  • Properly tag releases in CI and push them directly to minaprotocol/ #9566

Archive Node:

  • Update mina-extract-blocks to properly set the block_winner instead of always using creator_id #9567 (Thanks @kobigurk for making the change and @jrwashburn for bringing attention to this bug)

Complete Changelog since 1.2.0beta8:

1.2.0beta8...1.2.1alpha1
For more information about the changes included in 1.2.0beta8, see the previous release notes

Upgrading & Connecting

Debian Repository:
First, Set up and update the alpha Debian Repository

echo "deb [trusted=yes] http://packages.o1test.net stretch alpha" | sudo tee /etc/apt/sources.list.d/mina-alpha.list
echo -e "Package: mina-mainnet\nPin: release c=alpha\nPin-priority: 1" | sudo tee /etc/apt/preferences.d/99-mina-alpha
sudo apt-get update

Then, install the package(s) that you need:
Daemon Package: sudo apt-get install -y mina-devnet=1.2.1alpha1-1f98b8b
Archive Node Package: sudo apt-get install -y mina-archive=1.2.1alpha1-1f98b8b

Docker Images:

Daemon Image: minaprotocol/mina-daemon:1.2.1alpha1-1f98b8b-devnet
Archive Image: minaprotocol/mina-archive:1.2.1alpha1-1f98b8b

Sandbox Node: For testing in an isolated, single-node network without snarks

As of 1.2.0, the demo functionality is built into the standard daemon container, via the environment variable RUN_DEMO=true.
Just docker run -it --name mina-demo -e RUN_DEMO=true minaprotocol/mina-daemon:1.2.1alpha1-1f98b8b-devnet and go!

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Docker only Make sure to run with --peer-list-url https://storage.googleapis.com/seed-lists/devnet_seeds.txt.

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

Chain id:     b6ee40d336f4cc3f33c1cc04dee7618eb8e556664c2b2d82ad4676b512a82418
Git SHA-1:    1f98b8be743e78993670e7b148be72c894b212e3

Mainnet Beta Release 1.2.0beta8

05 Oct 18:00
5b35b27
Compare
Choose a tag to compare
Pre-release

The O(1) Labs team is making progress on the networking issues reported since 1.2.0beta2/3 but so far, we are struggling to solve the issue beyond about 40 hours of uptime. So to mitigate this, and to still provide an overall better experience than 1.1.X, we have improved the automated shutdown behavior to be configurable. The default stop time is after 24 hours of uptime, use the new --stop-time flag to reconfigure this value. The next release, 1.2.1alpha1, will include more comprehensive changes to improve responsiveness.

Now for the good news! 1.2.0beta8 also includes improvements to the new features from 1.2.0beta5. This beta release allows you to connect to our uptime tracking endpoint or run your own, but the data you submit now WILL NOT COUNT towards your uptime until this feature is released in a stable version. At that point the Mina Foundation will make an announcement, wipe the google cloud bucket, and reset everything for production use. In the meantime, you can try out the new daemon flags ( --uptime-submitter-key </path/to/private/key>, --uptime-url http://34.134.227.208/v1/submit) and the new environment variable UPTIME_PRIVKEY_PASS for providing the password to the keypair you registered with on the leaderboard. You no longer need to import your key to use it in this way, --uptime-submitter-key works identically to --block-producer-key. See #9499 for more details on how to use this new feature. Additionally, if you want to test out the backend side or experiment with creating your own leaderboard UI, check out the backend README.

If you run into any issues, please include Release: 1.2.0beta8 in the name of any issues you create. Please report any issues you encounter here: https://github.com/MinaProtocol/mina/issues/new/choose

Stability Improvements and Bug Fixes:

  • Add --stop-time flag to configure the automatic restart behavior. Defaults to 24 hours. #9506

New Features:

  • Improved Mina Foundation Uptime Tracking! #9499
    • This feature no longer requires importing your keypair, now supports a new flag --uptime-submitter-key which takes the path to your private key, just like --block-producer-key.
    • To test the new system, pass in the following information to the daemon:
      • The path to the private key with the flag --uptime-submitter-key </path/to/private/key>
      • The URL of our testing backend server with the flag --uptime-url http://34.134.227.208/v1/submit
      • The password for the keypair associated to the given public key with the environment variable UPTIME_PRIVKEY_PASS=<YOUR PASSWORD HERE>. If you are using a .mina-env file on Debian then this value should be on its own line, not included in EXTRA_FLAGS=.
  • New environment variables in .mina-env for use with the mina systemd service #9375 #9533
    • Passes in the --peer-list-url automatically to correspond to the mina package (mina-mainnet for mainnet peers list, and mina-devnet for devnet peers).
      • This value can still be overridden with PEERS_LIST_URL variable in .mina-env
    • KEY_NAME variable is no longer supported, use EXTRA_FLAGS to configure block producer keys
    • LOG_LEVEL variable to set the daemon log level, with the default value Info
    • FILE_LOG_LEVEL variable to set the daemong file log level, with the default value Debug
    • Remove --generate-genesis-proof true as its a no-op in this mina version anyway
    • Changed WantedBy to default.target instead of multi-user.target as the latter does not work in user services (as many users have reported)

Complete .mina-env example to take advantage of both of the above features:

EXTRA_FLAGS="--block-producer-key /home/mina/my-wallet --uptime-submitter-key /home/mina/my-wallet --uptime-url http://34.134.227.208/v1/submit"
UPTIME_PRIVKEY_PASS=My_V3ry_S3cure_Password
MINA_PRIVKEY_PASS=My_V3ry_S3cure_Password
LOG_LEVEL=Info
FILE_LOG_LEVEL=Debug

Archive Node:

We put together a new tool to process archive node data all the way back to the genesis block, locate any "swapped" balances (caused by a pre-1.1.5 bug in the archive node logic), and fix them. See https://gist.github.com/lk86/22b07d3b3f91c765f34e4e4398a84701 for complete instructions.

Complete Changelog since 1.2.0beta2:

1.2.0beta5...1.2.0beta8
For more information about the changes included in 1.2.0beta5, see the previous release notes
The beta6 and beta7 releases contain improvements to the transaction inclusion logic for block producers, and it is highly recommended that you upgrade to , 1.1.8, 1.2.0beta7, or this release. See our Retrospective for more information about our approach with these fixes and why they're important.

Upgrading & Connecting

Daemon Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-daemon:1.2.0beta8-5b35b27-mainnet
Debian Package:
NOTE: --peers-list-url flag is no long required when running with systemctl --user ...
To allow for installation of mina beta builds:

echo "deb [trusted=yes] http://packages.o1test.net stretch beta" | sudo tee /etc/apt/sources.list.d/mina-beta.list
sudo apt-get update
sudo apt-get install -y mina-mainnet=1.2.0beta8-5b35b27

Archive Node Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-archive:1.2.0beta8-5b35b27
Debian Package:
sudo apt-get install -y mina-archive-mainnet=1.2.0beta8-5b35b27
Schema for initializing postgres:
create_schema.sql

Sandbox Node: For testing in an isolated, single-node network without snarks

As of 1.2.0, the demo functionality is built into the standard daemon container, via the environment variable RUN_DEMO=true.
Just docker run -it --name mina-demo -e RUN_DEMO=true gcr.io/o1labs-192920/mina-daemon:1.2.0beta8-5b35b27-devnet and go!

NEW Devnet:

This release is the first to support the newly relaunched Devnet #9523. To use any of the above packages or docker images with devnet instead of mainnet, you can simply replace mainnet with devnet in either the name of the package or the docker image tag.

Block Producer Stats Sidecar:

The block producer sidecar will be replaced with the foundation delegation uptime tracker described above, once it is graduated to stable. In the meantime any version of the sidecar since ~1.1.6 should work the same way, and the data produced by the sidecar still counts towards foundation delegation elegibility.

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Docker only Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    5b35b27df8e137ddbe88874b4efdcf4bb2cb4ae9

Mainnet Beta Release 1.2.0beta7

23 Sep 18:24
Compare
Choose a tag to compare
Pre-release

After discovering the issue with transaction inclusion logic, which we addressed with the 1.2.0beta6 release, our team took a closer look at the remaining transaction logic and added some more aggressive tests to that area of the code in order to ensure there were no remaining bugs. In that process, the team found additional transaction inclusion logic issues, covering other edge cases that were not triggered on our dev network yet. In an abundance of caution, we have provided this 1.2.0beta7 update to prevent larger issues, and the new logic has been thoroughly tested. To instead run this same change on the latest 1.1.7 stable version, see Release 1.1.8.

Complete Changelog since 1.2.0beta6:

1.2.0beta6...1.2.0beta7
For more information about the changes included in other 1.2.0 beta releases, see the previous release notes

Upgrading & Connecting

Daemon Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-daemon-baked:1.2.0beta7-9b5bbaa-mainnet
Debian Package:
NOTE: --peers-list-url flag is no long required when running with systemctl --user ...
To allow for installation of mina beta builds:

echo "deb [trusted=yes] http://packages.o1test.net stretch beta" | sudo tee /etc/apt/sources.list.d/mina-beta.list
sudo apt-get update
sudo apt-get install -y mina-mainnet=1.2.0beta7-9b5bbaa

Archive Node Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-archive:1.2.0beta7-9b5bbaa
Debian Package:
sudo apt-get install -y mina-archive-mainnet=1.2.0beta7-9b5bbaa
Schema for initializing postgres:
create_schema.sql

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    9b5bbaa17a77a15b559400dec578236f782655bc

Mainnet Stable Release 1.1.8

23 Sep 18:24
Compare
Choose a tag to compare

After discovering the issue with transaction inclusion logic, which we addressed with the 1.1.7 release, our team took a closer look at the remaining transaction logic and added some more aggressive tests to that area of the code in order to ensure there were no remaining bugs. In that process, the team found additional transaction inclusion logic issues, covering other edge cases that were not triggered on our dev network yet. In an abundance of caution, we have provided a stable fix on top of the existing 1.1.7 codebase, tagged as 1.1.8. The changes have been thoroughly tested, and are limited to the minimal change to prevent future issues. To run this same change on the 1.2.0 beta release version, see 1.2.0beta7.

Complete Changelog since 1.1.7:

1.1.7...1.1.8

Upgrading & Connecting

Daemon Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-daemon-baked:1.1.8-b10c0e3-mainnet
Debian Package:
sudo apt-get install -y mina-mainnet=1.1.8-b10c0e3

Archive Node Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-archive:1.1.8-b10c0e3
Debian Package:
sudo apt-get install -y mina-archive=1.1.8-b10c0e3
Schema for initializing postgres:
create_schema.sql

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    b10c0e3db9112a2a8aebc3eec7c6d2570fcc4044

Mainnet Beta Release 1.2.0beta6

16 Sep 18:56
Compare
Choose a tag to compare
Pre-release

While working on stabilizing 1.2.0, the O(1) Labs team discovered an issue with the transaction inclusion logic. In an abundance of caution, we have provided this 1.2.0beta6 update to prevent larger issues, and the new logic has been thoroughly tested. To instead run this same change on the latest 1.1.5 stable version, see Release 1.1.7.

Complete Changelog since 1.2.0beta5:

1.2.0beta5...1.2.0beta6
For more information about the changes included in other 1.2.0 beta releases, see the previous release notes

Upgrading & Connecting

Daemon Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-daemon:1.2.0beta6-bee023a-mainnet
Debian Package:
NOTE: --peers-list-url flag is no long required when running with systemctl --user ...
To allow for installation of mina beta builds:

echo "deb [trusted=yes] http://packages.o1test.net stretch beta" | sudo tee /etc/apt/sources.list.d/mina-beta.list
sudo apt-get update
sudo apt-get install -y mina-mainnet=1.2.0beta6-bee023a

Archive Node Release Artifacts:

Docker Image:
gcr.io/o1labs-192920/mina-archive:1.2.0beta6-bee023a
Debian Package:
sudo apt-get install -y mina-archive-mainnet=1.2.0beta6-bee023a
Schema for initializing postgres:
create_schema.sql

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    bee023a25b8884813dc14a843c569dc297878c0a

Mainnet Stable Release 1.1.7

16 Sep 18:56
Compare
Choose a tag to compare

While hard at work on the 1.2.0+ releases, the O(1) Labs team discovered an issue with the transaction inclusion logic. In an abundance of caution, we have provided a stable fix on top of the existing 1.1.5 codebase, tagged as 1.1.7 to avoid any confusion with the previous 1.1.6alpha naming convention. The changes have been thoroughly tested, and are limited to the minimal change to prevent future issues. To run this same change on the 1.2.0 beta release version, see 1.2.0beta6.

Complete Changelog since 1.1.5:

1.1.5...1.1.7

Upgrading & Connecting

Daemon Release Artifacts:

Docker Image:
minaprotocol/mina-daemon-baked:1.1.7-d5ff5aa-mainnet
Debian Package:
sudo apt-get install -y mina-mainnet=1.1.7-d5ff5aa

Archive Node Release Artifacts:

Docker Image:
minaprotocol/mina-archive:1.1.7-d5ff5aa
Debian Package:
sudo apt-get install -y mina-archive=1.1.7-d5ff5aa
Schema for initializing postgres:
create_schema.sql

Step by Step Guide:

Check out our documentation for complete instructions on using this version to connect to Mainnet. Make sure to run with --peer-list-url https://storage.googleapis.com/mina-seed-lists/mainnet_seeds.txt.

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

Chain id:     5f704cc0c82e0ed70e873f0893d7e06f148524e3f0bdae2afb02e7819a0c24d1
Git SHA-1:    d5ff5aa207e64bcd6862e1ae9a3b83910c1c7b1d