Releases: MinaProtocol/mina
1.0.0 Final Final 2 (3) Release 1: The Final Network
As mentioned in the previous release notes and various announcements, the 1.0.0 release is here and it comes with another round of coda-> mina name changes that have been pending since our initial rebrand.
Notable Changes:
- Coda is now Mina! To invoke the daemon or any client commands, you must now use the
mina
command. Some lingering coda references are still lurking in the command line output but this command line interface matches how we expect the daemon to operate at mainnet launch. ~/.coda-config
is now~/.mina-config
and all log files are now mina-prefixed (likemina.log*
instead ofcoda.log*
). To override the default config directory, use the cli flag--config-dir
.mina version
on official builds in CI no longer shows a[DIRTY]
prefix on branch HEAD, the correct output for 1.0.0 isCommit fd3980820fb82c7355af49462ffefe6718800b77 on branch master
- Increased logging around blocks that fail to validate, as was seen in previous testnets where nodes appear to be synced but are stuck/offline. These logs should allow us to properly track down the source of the issue in time for mainnet.
- And many more! 1.0.0 is a huge leap forward for the infrastructure, automation, and helm charts as well to support the coda->mina change as well as more complex/modular deployments with support for many archive nodes and 0 block producers.
See 0.4.3...1.0.0 for the complete (massive) list of changes that brought us to 1.0.0 and beyond!
Devnet 0.4.3
The new devnet network was launched this week to ease development during the leadup to mainnet launch, and release 0.4.3 fixes some of the hiccups folks have encountered so far with manually providing a config.json to the 0.4.2 zenith daemon.
Notable Changes:
- Includes the devnet conifg.json in the debian package, so that it does not have to be manually downloaded and provided to the daemon
- Fixes a minor bug in scripts/release-docker.sh that required an additional value after the --no-upload flag
- Fixes the timeouts in our telemetry mechanism to ensure that telemetry requests are discarded if they are not performant
See #7979 for the full changeset since the launch of Devnet with 0.4.2.
WARNING: This is the final release that will use coda
as the executable filename and ~/.coda-config
as the configuration directory. The next release (1.0.0), future testnets, and all mainnet-compatible releases will only support the proper mina
name and ~/.mina-config
as the default configuration directory.
If you haven't done so already, this is also a good time to upgrade scripts and tooling to support command line flags with double dashes as opposed to the single hyphen. Both variants are supported right now (except for -help and -version) but the single-dash flags are deprecated and will be removed in a future release.
Since the last release notes in 0.4.0, we have also addressed:
- Improved edge case handling for the missing subchains tool #7914
- New tooling for generating genesis ledgers #7894
- Improved automation around integration tests #7743 #7936
- Improved automation documentation #7938
- Updated the chain quality grace period to 3 days #7937
- Fixes rosetta suggestedFee for transactions #7937
- Fixes the checks around passing in peers flags to support -peer-list-url #7937
See 0.4.0...0.4.3 for the complete change list.
Release Artifacts:
Debian Package Version: mina-testnet-postake-medium-curves=0.4.3-8dfa483
Docker Image: minaprotocol/mina-daemon-baked:0.4.3-8dfa483-devnet-ee24b4f
Zenith Network
- Realistic genesis ledger (around 80% full)
- Change transaction fee default (0.25 MINA) and snark fee default (0.1 MINA) and account creation fee (1 MINA) and block reward (720 MINA)
- Enable ability to pass peer-list-url so you don't need to manually pull the peer list file
- More efficient telemetry gathering on nodes
- Default to super-catchup
- Introduces new commands for tracking staking, delegating, and supercharging for accounts participating in consensus: see the
coda ledger
subcommand - Fixes a malformed query in archive node for blocks
- More detailed information about slots won with a
generatedFromConsensusAt
subfield ofnextBlockProduction
indaemonStatus
- Logging highest seen invalid block as well for better status understanding of being behind on the chain
Encore v0.3.3
This release includes a variety of fixes for:
- Regressions with the add-peers command and peer exchange introduced by the max-connections feature in 0.3.0 #7856 #7857 #7841
New Features:
- Introducing
--
style POSIX-compliant flags, not including -help and -version. For now both -- and - versions are supported. #7812 #7835 - Improved key validation tooling to validate .pub and privkey files #7787 #7767 #7817
- Testing and automation improvements #7810 #7831
Debian Package version: mina-testnet-postake-medium-curves=0.3.3-3ef8663
Docker Image: minaprotocol/mina-daemon-baked:0.3.3-3ef8663-encore-3b5824a
See 0.3.0...0.3.3 for the complete set of commits between releases
Encore 0.3.0
0.3.0 is the first release of Testworld after the hardfork (codename "Encore") on 2/4/2021.
The fork brings along a set of changes that are incompatible with the previous release, including but not limited to:
- Rejecting bad snark work from the pool instead of including bad transactions in blocks #7666
- A proper limit on maximum connections #7751
- A new grace period around minimum window density checks #7504
A variety of compatible bug fixes:
- Properly handle race conditions around ledger updates #7759
- Retry logic in archive node #7707
- Balance data in archive node #7735 #7766 #7680
And major improvements to the infrastructure and deployment:
- Static PeerIDs for O(1) Labs Nodes (this should mean a much more stable peers.txt file) #7789 #7608
- Helm chart changelogs are now on artifact hub (check them out for more details on how our charts have changed): https://artifacthub.io/packages/search?page=1&ts_query_web=mina
- Watchdog improvements #7752
- More Terraform modularity #7744
Known Issues:
- Refuses to exchange peers once max-connections is reached
- add-peers command and graphql are broken
- peer exchange dials invalid peers
All of the above fixed in https://github.com/MinaProtocol/mina/releases/tag/0.3.3
See 0.2.12...0.3.0 for the full list of commits between releases.
Testworld v0.2.12
This release includes some major new features requested by the community, and some more minor bug fixes.
New Features:
- Distinct signatures in "mainnet" builds vs. the testnet signatures we have been using up until now #7738
- New validate-transaction command for verifying test transactions signed via other tools (like the ledger app) #7698
- Retry logic for the archive-node #7707
- Asynchronous
best-chain
GraphQL endpoint #7717 - Terraform workspaces support #7710
- Prometheus metrics improvements #7685 #7677
Bug Fixes:
coda advanced dump-staking-ledger
now returns an error when the staking ledger is not available #7612
Testworld 0.2.11
All of the features and fixes from 0.2.10 ( https://github.com/MinaProtocol/mina/releases/tag/0.2.10 ) are included here, as well as the following:
- Fixed a crash when nodes try to process expired transactions #7705
- Fixed a segfault in
CamlPointer
library #7669 - Fixed a bug causing the snapps demo to crash #6133
New Features:
- Testnet deploy job for faster testing and iteration #7607
Testworld 0.2.10
These release adds a few features for handling keypairs and recovering archive node data, as well as improved messaging for log levels and crashes.
Features:
- ClientSDK feature for getting the Public Key for a given Private Key #7512
- Improved documentation around -log-levels #7635
- Commit SHA is now included in error and fatal logs #7693
- Improved messaging around crashes due to child process signals #7696
- Standalone tool in the archive-node package for recovering block data from alternate sources #7695
Fixed:
- Bugs in run_local_network.sh #7673
- Error/exception handling for commands in the transaction pool #7672
Known Issues:
- Prover crashes due to logic bug in #7672
Testworld 0.2.9
Since the last public release 0.2.5, we have added a variety of features and stability improvements. Many of the most common crashes should be addressed with this release, and memory use should improve. See https://minaprotocol.com/docs/connecting for complete instructions on how to get started with v0.2.9!
Features:
- New graphQL blocks endpoint #7548 #7592
- keypair validation tools #7604 #7617
- mina-generate-keypair features for increased transparency/validation #7516 #7514 #7583
- improved garbage collection for lower memory use #7551
- a new log file to help us track down issues with rejected blocks #7605
- Rosetta API additions / improvements #7588 #7535 #7129
- Infrastructure/automation improvements #7595 #7602 #7603 #7573 #7511 #7430
Bugs:
0.2.5 Testworld Release 6
- Fixes the issue with getting stuck at block height 1 #7494
- Fixes the issue causing max observed block length 1 even on healthy nodes #7500
- Fixes the logic around snark work with fees less than 0.5 #7485
- Fixes transaction replacement (for sending the same transaction with a higher fee) #7346
- Fixes
Dangling_parent_reference
crashes #7376 - Fixes crashes due to long genesis ledger filenames #7248
- Improved logging for
ivar.fill exceptions
#7483 and #7476 - Improved logging around Out of Memory errors #7356
- Improved logging around
Monitor.Error
exceptions #7277 - A variety of improvements for reliability and recoverability of archive node data #7492 #7354 #7447 #7456
See the complete commit history between releases for more information: 0.2.4...0.2.5