diff --git a/CHANGELOG.md b/CHANGELOG.md index a81831826e..656ec1f853 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,22 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.11.0] - 2024-10-31 + +### Added + +- *Webnode*: Peer discovery and p2p based signaling (so that webnodes can find each other). +- *Webnode*: Connection authentication. +- Support for specifying external IPs. + +### Fixed + +- *Ledger*: Fixed a regression introduced in v0.10.0 that caused the ZKApp precondition checks ordering to not match the OCaml implementation's exactly, which resulted in block application failures. +- *Ledger*: Corrected handling of custom tokens in the block application logic. +- *P2P*: Reduced excessive outgoing traffic. +- *P2P*: Yamux fixes and improvements (backpressure). +- *Webnode*: Staging ledger sync timeout. + ## [0.10.3] - 2024-10-16 ### Added @@ -289,7 +305,8 @@ First public release. - Alpha version of the node which can connect and syncup to the berkeleynet network, and keep applying new blocks to maintain consensus state and ledger up to date. - Web-based frontend for the node. -[Unreleased]: https://github.com/openmina/openmina/compare/v0.10.3...develop +[Unreleased]: https://github.com/openmina/openmina/compare/v0.11.0...develop +[0.11.0]: https://github.com/openmina/openmina/releases/tag/v0.10.3...v0.11.0 [0.10.3]: https://github.com/openmina/openmina/releases/tag/v0.10.0...v0.10.3 [0.10.0]: https://github.com/openmina/openmina/releases/tag/v0.9.0...v0.10.0 [0.9.0]: https://github.com/openmina/openmina/releases/tag/v0.8.14...v0.9.0 diff --git a/Cargo.lock b/Cargo.lock index ccfe9faf58..7350cf9a1f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1036,7 +1036,7 @@ checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" [[package]] name = "cli" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "bytes", @@ -2415,7 +2415,7 @@ dependencies = [ [[package]] name = "hash-tool" -version = "0.10.3" +version = "0.11.0" dependencies = [ "bs58 0.5.0", "hex", @@ -3041,7 +3041,7 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "ledger-tool" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "mina-curves", @@ -3367,7 +3367,7 @@ dependencies = [ [[package]] name = "libp2p-rpc-behaviour" -version = "0.10.3" +version = "0.11.0" dependencies = [ "libp2p", "log", @@ -3752,7 +3752,7 @@ dependencies = [ [[package]] name = "mina-transport" -version = "0.10.3" +version = "0.11.0" dependencies = [ "blake2", "hex", @@ -3763,7 +3763,7 @@ dependencies = [ [[package]] name = "mina-tree" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "ark-ec", @@ -4103,7 +4103,7 @@ dependencies = [ [[package]] name = "node" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "ark-ff", @@ -4461,7 +4461,7 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openmina-bootstrap-sandbox" -version = "0.10.3" +version = "0.11.0" dependencies = [ "base64 0.21.7", "binprot", @@ -4486,7 +4486,7 @@ dependencies = [ [[package]] name = "openmina-core" -version = "0.10.3" +version = "0.11.0" dependencies = [ "ark-ff", "binprot", @@ -4515,7 +4515,7 @@ dependencies = [ [[package]] name = "openmina-fuzzer" -version = "0.10.3" +version = "0.11.0" dependencies = [ "lazy_static", "rand", @@ -4526,7 +4526,7 @@ dependencies = [ [[package]] name = "openmina-gossipsub-sandbox" -version = "0.10.3" +version = "0.11.0" dependencies = [ "bs58 0.5.0", "env_logger", @@ -4540,7 +4540,7 @@ dependencies = [ [[package]] name = "openmina-macros" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "openmina-core", @@ -4553,7 +4553,7 @@ dependencies = [ [[package]] name = "openmina-node-account" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "argon2", @@ -4574,7 +4574,7 @@ dependencies = [ [[package]] name = "openmina-node-common" -version = "0.10.3" +version = "0.11.0" dependencies = [ "ark-ff", "gloo-timers", @@ -4605,7 +4605,7 @@ dependencies = [ [[package]] name = "openmina-node-invariants" -version = "0.10.3" +version = "0.11.0" dependencies = [ "documented", "lazy_static", @@ -4619,7 +4619,7 @@ dependencies = [ [[package]] name = "openmina-node-native" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "bs58 0.4.0", @@ -4656,7 +4656,7 @@ dependencies = [ [[package]] name = "openmina-node-testing" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "axum", @@ -4700,7 +4700,7 @@ dependencies = [ [[package]] name = "openmina-node-web" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "bytes", @@ -4726,7 +4726,7 @@ dependencies = [ [[package]] name = "openmina-producer-dashboard" -version = "0.10.3" +version = "0.11.0" dependencies = [ "bincode", "clap 4.5.20", @@ -4818,7 +4818,7 @@ dependencies = [ [[package]] name = "p2p" -version = "0.10.3" +version = "0.11.0" dependencies = [ "aes-gcm 0.10.3", "anyhow", @@ -4883,7 +4883,7 @@ dependencies = [ [[package]] name = "p2p-testing" -version = "0.10.3" +version = "0.11.0" dependencies = [ "derive_more", "futures", @@ -5741,7 +5741,7 @@ checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f" [[package]] name = "replay_dynamic_effects" -version = "0.10.3" +version = "0.11.0" dependencies = [ "node", "openmina-node-invariants", @@ -6124,7 +6124,7 @@ checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "salsa-simple" -version = "0.10.3" +version = "0.11.0" dependencies = [ "generic-array", "hex", @@ -6532,7 +6532,7 @@ dependencies = [ [[package]] name = "snark" -version = "0.10.3" +version = "0.11.0" dependencies = [ "ark-ec", "ark-ff", @@ -7418,7 +7418,7 @@ dependencies = [ [[package]] name = "transaction_fuzzer" -version = "0.1.0" +version = "0.11.0" dependencies = [ "ark-ec", "ark-ff", @@ -7785,7 +7785,7 @@ checksum = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d" [[package]] name = "vrf" -version = "0.10.3" +version = "0.11.0" dependencies = [ "anyhow", "ark-ec", diff --git a/cli/Cargo.toml b/cli/Cargo.toml index 8b02c3ef8b..4583f8783e 100644 --- a/cli/Cargo.toml +++ b/cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "cli" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/cli/replay_dynamic_effects/Cargo.toml b/cli/replay_dynamic_effects/Cargo.toml index 13566b9dbd..99df2ad7df 100644 --- a/cli/replay_dynamic_effects/Cargo.toml +++ b/cli/replay_dynamic_effects/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "replay_dynamic_effects" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/core/Cargo.toml b/core/Cargo.toml index db9dfc798e..acc29c0767 100644 --- a/core/Cargo.toml +++ b/core/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-core" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/docker-compose.local.producers.yml b/docker-compose.local.producers.yml index 756661f5fc..588aee6825 100644 --- a/docker-compose.local.producers.yml +++ b/docker-compose.local.producers.yml @@ -1,7 +1,7 @@ services: local-producer-cluster: container_name: local-producer-cluster - image: openmina/openmina:0.10.3 + image: openmina/openmina:0.11.0 environment: - RUST_BACKTRACE=1 entrypoint: ["openmina-node-testing", "scenarios-generate", "--name", "simulation-small-forever-real-time"] @@ -12,7 +12,7 @@ services: frontend: container_name: frontend - image: openmina/frontend:0.10.3 + image: openmina/frontend:0.11.0 environment: OPENMINA_FRONTEND_ENVIRONMENT: block-producers ports: diff --git a/fuzzer/Cargo.toml b/fuzzer/Cargo.toml index 5efffc3863..c7affb9310 100644 --- a/fuzzer/Cargo.toml +++ b/fuzzer/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-fuzzer" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/ledger/Cargo.toml b/ledger/Cargo.toml index 87da5a99dd..98d1468f79 100644 --- a/ledger/Cargo.toml +++ b/ledger/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mina-tree" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/macros/Cargo.toml b/macros/Cargo.toml index d12689c862..d6120d8ccc 100644 --- a/macros/Cargo.toml +++ b/macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-macros" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" authors = [ "Alexander Koptelov " ] diff --git a/node/Cargo.toml b/node/Cargo.toml index 19937f67ec..e969552580 100644 --- a/node/Cargo.toml +++ b/node/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "node" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/account/Cargo.toml b/node/account/Cargo.toml index 93209b1421..f25eb4a1cf 100644 --- a/node/account/Cargo.toml +++ b/node/account/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-account" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/common/Cargo.toml b/node/common/Cargo.toml index ffe0ba3262..a88ff63eca 100644 --- a/node/common/Cargo.toml +++ b/node/common/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-common" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/invariants/Cargo.toml b/node/invariants/Cargo.toml index 599225b0bb..5f2dd853bd 100644 --- a/node/invariants/Cargo.toml +++ b/node/invariants/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-invariants" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/native/Cargo.toml b/node/native/Cargo.toml index a52a5ccfc5..e43aaf442c 100644 --- a/node/native/Cargo.toml +++ b/node/native/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-native" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/testing/Cargo.toml b/node/testing/Cargo.toml index 9d18e50017..c96457c74c 100644 --- a/node/testing/Cargo.toml +++ b/node/testing/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-testing" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/node/web/Cargo.toml b/node/web/Cargo.toml index 270c634aa5..cfe6643e87 100644 --- a/node/web/Cargo.toml +++ b/node/web/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-node-web" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/p2p/Cargo.toml b/p2p/Cargo.toml index db3d6960b3..cf4ad92f10 100644 --- a/p2p/Cargo.toml +++ b/p2p/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "p2p" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/p2p/libp2p-rpc-behaviour/Cargo.toml b/p2p/libp2p-rpc-behaviour/Cargo.toml index a0da01f587..ae94d31ed5 100644 --- a/p2p/libp2p-rpc-behaviour/Cargo.toml +++ b/p2p/libp2p-rpc-behaviour/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "libp2p-rpc-behaviour" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/p2p/testing/Cargo.toml b/p2p/testing/Cargo.toml index 2889b171dd..222b2fde67 100644 --- a/p2p/testing/Cargo.toml +++ b/p2p/testing/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "p2p-testing" -version = "0.10.3" +version = "0.11.0" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/producer-dashboard/Cargo.toml b/producer-dashboard/Cargo.toml index 5ebd51a772..8870214126 100644 --- a/producer-dashboard/Cargo.toml +++ b/producer-dashboard/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-producer-dashboard" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/snark/Cargo.toml b/snark/Cargo.toml index eb930bede0..240ba97771 100644 --- a/snark/Cargo.toml +++ b/snark/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "snark" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0" diff --git a/tools/bootstrap-sandbox/Cargo.toml b/tools/bootstrap-sandbox/Cargo.toml index 922779d113..f94115a70e 100644 --- a/tools/bootstrap-sandbox/Cargo.toml +++ b/tools/bootstrap-sandbox/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-bootstrap-sandbox" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dependencies] diff --git a/tools/fuzzing/Cargo.toml b/tools/fuzzing/Cargo.toml index 17aa8b6022..e2f3abe3f5 100644 --- a/tools/fuzzing/Cargo.toml +++ b/tools/fuzzing/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "transaction_fuzzer" -version = "0.1.0" +version = "0.11.0" edition = "2021" diff --git a/tools/gossipsub-sandbox/Cargo.toml b/tools/gossipsub-sandbox/Cargo.toml index 99c29f9037..92878eed19 100644 --- a/tools/gossipsub-sandbox/Cargo.toml +++ b/tools/gossipsub-sandbox/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "openmina-gossipsub-sandbox" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dependencies] diff --git a/tools/hash-tool/Cargo.toml b/tools/hash-tool/Cargo.toml index 5fdf78b37e..41145275b3 100644 --- a/tools/hash-tool/Cargo.toml +++ b/tools/hash-tool/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "hash-tool" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dependencies] diff --git a/tools/ledger-tool/Cargo.toml b/tools/ledger-tool/Cargo.toml index 6b8fb37fb8..ad5f8376cb 100644 --- a/tools/ledger-tool/Cargo.toml +++ b/tools/ledger-tool/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ledger-tool" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dependencies] diff --git a/tools/salsa-simple/Cargo.toml b/tools/salsa-simple/Cargo.toml index 88168e5e4d..be6f76562a 100644 --- a/tools/salsa-simple/Cargo.toml +++ b/tools/salsa-simple/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "salsa-simple" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dev-dependencies] diff --git a/tools/transport/Cargo.toml b/tools/transport/Cargo.toml index 56e61929cf..357cbde214 100644 --- a/tools/transport/Cargo.toml +++ b/tools/transport/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mina-transport" -version = "0.10.3" +version = "0.11.0" edition = "2021" [dependencies] diff --git a/vrf/Cargo.toml b/vrf/Cargo.toml index 38421f3359..cf4f4c9d6f 100644 --- a/vrf/Cargo.toml +++ b/vrf/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "vrf" -version = "0.10.3" +version = "0.11.0" edition = "2021" license = "Apache-2.0"