Highlights
Warning
🔥 This version fixes a bug in the 2543.0 distribution which can prevent the Mithril signer to sign when (re)started.
Make sure you are using the Mithril signer with version 0.2.276.
What's Changed
- add cardano db verify step in the CI that fails on expected tampered/missing files by @turmelclem in #2685
- fix: flakiness in e2e tests in the CI by @jpraynaud in #2688
- fix: docker client command in documentation by @jpraynaud in #2695
- docs: final CHANGELOG for '2537.0' distribution by @jpraynaud in #2696
- docs: add dev blog posts for distribution
2537by @jpraynaud in #2697 - docs: rotate documentation for
2537distribution by @jpraynaud in #2682 - fix: doctests using deprecated functions in STM by @jpraynaud in #2698
- fix: Rust
1.90clippy warnings by @jpraynaud in #2699 - phase 0 : prepare decentralization parameters by @turmelclem in #2694
- refactor: update DMQ message structure by @jpraynaud in #2672
- Make cardano-db backend v2 as default by @turmelclem in #2706
- chore: fixed typos by @jeluard in #2708
- refactor: replace unmaintained
serde_ymldependency by @Alenar in #2711 - Fixing typo in bls PoP. by @damrobi in #2705
- feat: support multiple proof systems in STM by @jpraynaud in #2689
- Fix backward compatibilty issues by @turmelclem in #2731
- fix: flakiness in DMQ integration tests in CI by @jpraynaud in #2729
- Enhance STM library readability - Golden tests by @curiecrypt in #2642
- fix: do not build
rugwhen targetingmuslenv by @jpraynaud in #2735 - Decentralization of configuration parameters phase 1 by @turmelclem in #2702
- feat(client lib): add missing
Dummyre-export by @Alenar in #2737 - feat: add
/artifact/cardano-database/epoch/{epoch}route + support epoch expansion fromlatestin some routes by @Alenar in #2734 - chore(client-lib): deprecate current aggregator client and related builder functions by @Alenar in #2738
- feat: use unique
ProtocolInitializerper epoch in signer by @jpraynaud in #2739 - chore: update dependencies for distribution
2543by @jpraynaud in #2740 - feat: add Cardano compatibility in release notes by @jpraynaud in #2742
- feat: add fetching cardano database snapshots by epoch in client and cli by @Alenar in #2744
- chore(infra): double
google_storage_bucket_max_ageto 28 by @Alenar in #2747 - feat: integrate Haskell DMQ network by @jpraynaud in #2710
- docs: update CHANGELOG with '2543.0' distribution by @jpraynaud in #2749
New Contributors
Full Changelog: 2537.0...2543.1-hotfix
Crates Versions
| Crate | Version |
|---|---|
| mithril-aggregator | 0.7.90 |
| mithril-client | 0.12.34 |
| mithril-client-cli | 0.12.33 |
| mithril-client-wasm | 0.9.7 |
| mithril-common | 0.6.25 |
| mithril-signer | 0.2.276 |
| mithril-stm | 0.5.5 |
Networks Compatibility ⚠️
| Network | Compatible |
|---|---|
| release-mainnet | ✔ |
| release-preprod | ✔ |
| pre-release-preview | ✔ |
| testing-preview | ⛔ |
Cardano Node Compatibility
| Network | Mithril Aggregator | Mithril Signer |
|---|---|---|
| release-mainnet | Cardano 10.4.1+(*) |
Cardano 10.4.1+(*) |
| release-preprod | Cardano 10.4.1+(*) |
Cardano 10.4.1+(*) |
| pre-release-preview | Cardano 10.4.1+(*) |
Cardano 10.4.1+(*) |
| testing-preview | Cardano 10.4.1+(*) |
Cardano 10.4.1+(*) |
*: Up to the latest Cardano node version released at the time of this release.
Platform Support
Summary of the platforms for which pre-built binaries are provided.
| Binary | Linux x64 | Linux arm64 | macOS arm64 | Windows x64 |
|---|---|---|---|---|
| mithril-aggregator | ✔ | ✔ ⁽*⁾ | ⛔ | ⛔ |
| mithril-signer | ✔ | ✔ ⁽*⁾ | ⛔ | ⛔ |
| mithril-client | ✔ | ✔ ⁽*⁾ | ✔ | ✔ |
⁽*⁾
Linux Requirements
The Linux binaries target glibc: to run them or install the .deb packages you must have glibc version 2.35+ installed.
Compatible systems include, but are not limited to, Ubuntu 22.04+ or Debian 12+ (Bookworm)).
Download a binary asset
To simplify the installation and updating of Mithril binaries, we have created a one line installer that downloads and installs the Mithril binaries for you.
This installer is available for Linux and macOS and supports the Mithril signer, Mithril aggregator, and Mithril client CLI.
Use the following commands to install the Mithril nodes:
- Download the Mithril signer in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-signer -d 2543.1-hotfix -p $(pwd)- Download the Mithril client CLI in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-client -d 2543.1-hotfix -p $(pwd)- Download the Mithril aggregator in the current directory:
curl --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/input-output-hk/mithril/refs/heads/main/mithril-install.sh | sh -s -- -c mithril-aggregator -d 2543.1-hotfix -p $(pwd)Verify the authenticity of a downloaded asset
Detailed procedure to verify an asset
- Step 1: Identify the downloaded asset on your computer YOUR_ASSET_FILE
- Step 2: Download the signed checksum file from this link CHECKSUM.asc and save it in the same folder as the asset
- Step 3: In your terminal, go to the asset folder by running:
cd ***YOUR_ASSET_FOLDER***
- Step 4: Then verify the checksum of the asset by running:
sha256sum -c ./CHECKSUM.asc 2>/dev/null | grep ***YOUR_ASSET_FILE***
You must see:
./***YOUR_ASSET_FILE***: OK
- Step 5: Download the public key file from this link public-key.gpg and save it in the same folder as the asset
- Step 6: Then import the GPG public key:
gpg --import ./public-key.gpg
You must see something like:
gpg: key : public key "Input Output / Mithril <[email protected]>" imported
gpg: Total number processed: 1
gpg: imported: 1
- Step 7: Then verify the GPG signature of the checksum file:
gpg --verify ./CHECKSUM.asc
You must see something like:
gpg: Signature made Mon 05 Dec 2022 04:53:54 PM CET
gpg: using RSA key 35EDE9D47BBA62A2F388E655899ACD26B8BCA0D2
gpg: Good signature from "Input Output / Mithril <[email protected]>" [unknown]
gpg: WARNING: This key is not certified with a trusted signature!
gpg: There is no indication that the signature belongs to the owner.
Primary key fingerprint: 35ED E9D4 7BBA 62A2 F388 E655 899A CD26 B8BC A0D2
The signature is valid if and only if:
- there is a line with
gpg: Good signature from "Input Output / Mithril <[email protected]>" - there is a line with
Primary key fingerprint: 73FC 4C3D FD55 DBDC 428A D2B5 BE04 3B79 FDA4 C2EE
- Step 8:
If you successfully validated all the steps of this process, then you have successfully verified the authenticity of the asset ✔️
If not, contact us at [[email protected]] and let us know of the outcome of your run of this process⚠️
Download a Docker image
You can directly pull prebuilt Mithril Docker images:
| Binary | Image name | URL |
|---|---|---|
| mithril-aggregator | mithril-aggregator:2543.1-hotfix-5d5571e | ghcr.io/input-output-hk/mithril-aggregator:2543.1-hotfix-5d5571e |
| mithril-signer | mithril-signer:2543.1-hotfix-5d5571e | ghcr.io/input-output-hk/mithril-signer:2543.1-hotfix-5d5571e |
| mithril-client | mithril-client:2543.1-hotfix-5d5571e | ghcr.io/input-output-hk/mithril-client:2543.1-hotfix-5d5571e |