Skip to content

Releases: input-output-hk/mithril

Unstable Development Builds

22 Jul 09:35
b76f911
Compare
Choose a tag to compare
Pre-release

Crates Versions

Crate Version
mithril-aggregator 0.7.75
mithril-client 0.12.23
mithril-client-cli 0.12.23
mithril-client-wasm 0.9.4
mithril-common 0.6.10
mithril-signer 0.2.261
mithril-stm 0.4.10

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

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 arm64 builds are not guaranteed, use at your own risk.

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 unstable -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 unstable -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 unstable -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:main-b76f911 ghcr.io/input-output-hk/mithril-aggregator:main-b76f911
mithril-signer mithril-signer:main-b76f911 ghcr.io/input-output-hk/mithril-signer:main-b76f911
mithril-client mithril-client:main-b76f911 ghcr.io/input-output-hk/mithril-client:main-b76f911

What's Changed

  • Organize STM - Module Parameters by @curiecrypt in #2553
  • fix: rename artifact on wasm test failure in Mithril Client multi-platform test workflow. by @dlachaume in #2566
  • fix: bytes codec in STM library by @jpraynaud in #2556
  • feat(mithril-client lib): stabilize cardano-database-v2 by @Alenar in #2563
  • Split mithril-common phase 2: extract Mithril ticker by @Alenar in #2565
  • Split mithril-common phase 2: extract Mithril era by @Alenar in #2569
  • Split mithril-common phase 2: extract Mithril cardano node chain by @Alenar in #2570
  • ci: add --locked to clippy in check step by @Alenar in #2573
  • feat: revise OpenAPI compatibility enforcement by @dlachaume in #2572
  • docs: rotate documentation for 2524 distribution by @jpraynaud in #2564
  • docs: final CHANGELOG for '2524.0' distribution by @jpraynaud in #2575
  • docs: add dev blog post for distribution 2524 by @jpraynaud in #2576
  • Docs: add blog post for UTxO-HD ledger state snapshot conversion by @dlachaume in #2560
  • chore: bump mithril-stm dependency version constraint in mithril-common by @jpraynaud in #2584
  • fix: add missing .md file extension by @dlachaume in #2587
  • Docs: dev blog post for Cardano database backend switch by @jpraynaud in #2583
  • fix(ci): publish of wasm packages to npm when Cargo.toml version dont match package.json by @Alenar in #2588
  • docs: update post for UTxO-HD ledger state snapshot converter by @jpraynaud in #2591
  • feat: support bytes codec in ProtocolKey by @jpraynaud in #2557
  • feat: enhance tools utxo-hd snapshot-converter Mithril client CLI command by @dlachaume in #2589
  • ci: split Cardano DB download and ledger state snapshot conversion in test-docker job by @dlachaume in #2592
  • Adding command to verify cardano database by @turmelclem in #2574
  • Split mithril-common phase 2: extract Mithril cardano node internal database by @Alenar in #2586
  • Split mithril-common phase 2: extract Mithril api spec by @Alenar in #2593
  • Split mithril-common phase 2: extract Mithril test http server by @Alenar in #2594
  • Remove cardano-db-v2 and make cardano-db --backend v2 stable by @turmelclem in #2595
  • prettier 3.6 by @Alenar in #2601
  • filip(feat): docs site redesign by @fstoqnov-iohk in #2597
  • aggregator: add /certificate/genesis endpoint by @Alenar in #2600
  • ci: reactivate action-gh-release v2 in CI and pre-release workflows by @dlachaume in #2603
  • chore: anticipate rust 1.88 by @Alenar in #2604
  • remove batch verify aggr and rename gen to generate by @curiecrypt in #2598
  • filip(fix): add client side wrapper to homepage by @fstoqnov-iohk in #2605
  • filip(fix): force re-render to initialise scrollY framer motion hooks by @fstoqnov-iohk in #2607
  • feat: abstract KES signature process by @jpraynaud in #2606
  • docsite & explorer: add serve_static makefile target by @Alenar in #2611
  • Prepare project upgrade to Rust 2024 edition by @dlachaume in https://github.com...
Read more

Mithril v2524.0

16 Jun 13:06
2524.0
7bf7033
Compare
Choose a tag to compare

Highlights

  • Support for Cardano node 10.4.1 in the signer and the aggregator
  • Support for recording client types origin (library, CLI and WASM) in the aggregator metrics.
  • Unstable support for UTxO-HD snapshot converter tools utxo-hd snapshot-converter command in client CLI.
  • Unstable support for partial cardano database restoration in cardano-database command with --backend v2 parameter.
  • Bug fixes and performance improvements.

What's Changed

  • Fix: websites vulnerabilities by @jpraynaud in #2453
  • test(ci): add ancillary verification key and include ancillary option in Mithril Client multi-platform test workflow by @dlachaume in #2457
  • Chore: cleanup snapshot_store_type by @dlachaume in #2456
  • Optimize signer and aggregator state machines run interval by @Alenar in #2454
  • Fix: better error handling for era reader adapter parameters in infra by @jpraynaud in #2452
  • Docs: rotate documentation for 2517 distribution by @jpraynaud in #2445
  • Docs: final CHANGELOG for 2517.0 distribution by @jpraynaud in #2462
  • Docs: add dev blog post for distribution 2517 by @jpraynaud in #2463
  • Update examples with separate ancillary download & fix post cdbv2 immutables restored statistic by @Alenar in #2449
  • Feat: extend documentation tool for subcommand configurations by @dlachaume in #2455
  • Fix: Apply hot fix for client restoration by @dlachaume in #2466
  • Set correct package name for mithril-client-cli by @noonio in #2465
  • Docs: add dev blog post for client breaking changes in 2517 by @jpraynaud in #2467
  • Docs: add dev blog post for client security advisory by @jpraynaud in #2469
  • Feat: implement signature publisher decorators in signer by @dlachaume in #2468
  • Aggregator: Re-implement the CloudBackendUploader with gcloud-storage crate by @Alenar in #2475
  • Add warning in client about ancillary files by @turmelclem in #2473
  • Chore: update testing ssh keys by @jpraynaud in #2479
  • aggregator: fix setting public access to files uploaded to GCP storage by @Alenar in #2480
  • Docs: update dev blog post for Cardano DB v2 activation by @jpraynaud in #2482
  • Test: add Cardano node startup check to Mithril Client multi-platform test workflow by @dlachaume in #2476
  • Fix: improve error handling in mithril-install script by @dlachaume in #2481
  • chore: anticipate rust 1.87 by @Alenar in #2483
  • Feat: implement a signature processor for DMQ by @jpraynaud in #2477
  • Fix: include the two latest ledger state snapshots in the ancillary archive by @dlachaume in #2484
  • Organize STM - Module participant by @curiecrypt in #2412
  • Test: execute full workspace tests on macOS/Windows excluding unsupported packages by @dlachaume in #2485
  • Docs: clarify networks supported Cardano node versions by @jpraynaud in #2496
  • Record signatures origin in the signature processor by @turmelclem in #2489
  • Fix: Simplify TestHttpServer Drop logic to prevent test flakiness by @dlachaume in #2495
  • Fix: chain reader client cache drop on error by @jpraynaud in #2501
  • feat: read ancillary verification key from both clap arguments and configuration files by @turmelclem in #2499
  • feat: add ancillary verification key in client-cli configuration files by @turmelclem in #2512
  • feat: cleanup unexpected files in immutable folder after download by @Alenar in #2502
  • Fix: display missing logs in Mithril Client multi-platform test by @dlachaume in #2513
  • fix(client-cli): improve message format about fast boostrap by @turmelclem in #2514
  • fix: check of unexpected file too eager on all network except devnet by @Alenar in #2517
  • fix: missing 00000 immutable files with Cardano DB v2 by @jpraynaud in #2520
  • feat: support in memory UTxO-HD ledger state snapshots by @Alenar in #2521
  • Feat: support Cardano node 10.4 by @jpraynaud in #2498
  • fix(ci): reactivate Darwin x86_64 build in Hydra CI by @jpraynaud in #2538
  • Chore: update dependencies for distribution 2524 by @jpraynaud in #2544
  • Organize STM - Module Single Signature by @curiecrypt in #2545
  • Organize STM - Module Aggregate Signature by @curiecrypt in #2548
  • Feat: add mithril-client CLI command for UTxO-HD ledger state snapshot conversion by @dlachaume in #2518
  • Record usage of client type in metrics by @turmelclem in #2546
  • chore(infra): update ssh key for 'testing' by @turmelclem in #2555
  • client-cli: merge cardano-database-v2 command into 'v1' command by @Alenar in #2547
  • fix(ci): temporary enforce softprops/action-gh-release v2.2.2 by @Alenar in #2559
  • Allow new header client type by @turmelclem in #2558
  • Feat: documentation and CI tests for UTxO-HD ledger state snapshot conversion mithril-client CLI command by @dlachaume in #2554
  • client-lib/client-cli: calibrate max parallel dl by @Alenar in #2561
  • docs: update CHANGELOG for 2524.0 distribution release by @jpraynaud in #2562

New Contributors

Full Changelog: 2517.1...2524.0

Crates Versions

Crate Version
mithril-aggregator 0.7.58
mithril-client 0.12.11
mithril-client-cli 0.12.11
mithril-client-wasm 0.9.1
mithril-common 0.5.35
mithril-signer 0.2.249
mithril-stm 0.4.2

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2517.1 ✔️ ✔️
2517.0 ✔️ ✔️
2513.0 ✔️
2506.0 ✔️
2450.0 ✔️

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)).

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 t...
Read more

Mithril v2524.0-pre

11 Jun 08:27
2524.0-pre
7bf7033
Compare
Choose a tag to compare
Mithril v2524.0-pre Pre-release
Pre-release

Highlights

  • Support for Cardano node 10.4.1 in the signer and the aggregator
  • Support for recording client types origin (library, CLI and WASM) in the aggregator metrics.
  • Unstable support for UTxO-HD snapshot converter tools utxo-hd snapshot-converter command in client CLI.
  • Unstable support for partial cardano database restoration in cardano-database command with --backend v2 parameter.
  • Bug fixes and performance improvements.

What's Changed

  • Fix: websites vulnerabilities by @jpraynaud in #2453
  • test(ci): add ancillary verification key and include ancillary option in Mithril Client multi-platform test workflow by @dlachaume in #2457
  • Chore: cleanup snapshot_store_type by @dlachaume in #2456
  • Optimize signer and aggregator state machines run interval by @Alenar in #2454
  • Fix: better error handling for era reader adapter parameters in infra by @jpraynaud in #2452
  • Docs: rotate documentation for 2517 distribution by @jpraynaud in #2445
  • Docs: final CHANGELOG for 2517.0 distribution by @jpraynaud in #2462
  • Docs: add dev blog post for distribution 2517 by @jpraynaud in #2463
  • Update examples with separate ancillary download & fix post cdbv2 immutables restored statistic by @Alenar in #2449
  • Feat: extend documentation tool for subcommand configurations by @dlachaume in #2455
  • Fix: Apply hot fix for client restoration by @dlachaume in #2466
  • Set correct package name for mithril-client-cli by @noonio in #2465
  • Docs: add dev blog post for client breaking changes in 2517 by @jpraynaud in #2467
  • Docs: add dev blog post for client security advisory by @jpraynaud in #2469
  • Feat: implement signature publisher decorators in signer by @dlachaume in #2468
  • Aggregator: Re-implement the CloudBackendUploader with gcloud-storage crate by @Alenar in #2475
  • Add warning in client about ancillary files by @turmelclem in #2473
  • Chore: update testing ssh keys by @jpraynaud in #2479
  • aggregator: fix setting public access to files uploaded to GCP storage by @Alenar in #2480
  • Docs: update dev blog post for Cardano DB v2 activation by @jpraynaud in #2482
  • Test: add Cardano node startup check to Mithril Client multi-platform test workflow by @dlachaume in #2476
  • Fix: improve error handling in mithril-install script by @dlachaume in #2481
  • chore: anticipate rust 1.87 by @Alenar in #2483
  • Feat: implement a signature processor for DMQ by @jpraynaud in #2477
  • Fix: include the two latest ledger state snapshots in the ancillary archive by @dlachaume in #2484
  • Organize STM - Module participant by @curiecrypt in #2412
  • Test: execute full workspace tests on macOS/Windows excluding unsupported packages by @dlachaume in #2485
  • Docs: clarify networks supported Cardano node versions by @jpraynaud in #2496
  • Record signatures origin in the signature processor by @turmelclem in #2489
  • Fix: Simplify TestHttpServer Drop logic to prevent test flakiness by @dlachaume in #2495
  • Fix: chain reader client cache drop on error by @jpraynaud in #2501
  • feat: read ancillary verification key from both clap arguments and configuration files by @turmelclem in #2499
  • feat: add ancillary verification key in client-cli configuration files by @turmelclem in #2512
  • feat: cleanup unexpected files in immutable folder after download by @Alenar in #2502
  • Fix: display missing logs in Mithril Client multi-platform test by @dlachaume in #2513
  • fix(client-cli): improve message format about fast boostrap by @turmelclem in #2514
  • fix: check of unexpected file too eager on all network except devnet by @Alenar in #2517
  • fix: missing 00000 immutable files with Cardano DB v2 by @jpraynaud in #2520
  • feat: support in memory UTxO-HD ledger state snapshots by @Alenar in #2521
  • Feat: support Cardano node 10.4 by @jpraynaud in #2498
  • fix(ci): reactivate Darwin x86_64 build in Hydra CI by @jpraynaud in #2538
  • Chore: update dependencies for distribution 2524 by @jpraynaud in #2544
  • Organize STM - Module Single Signature by @curiecrypt in #2545
  • Organize STM - Module Aggregate Signature by @curiecrypt in #2548
  • Feat: add mithril-client CLI command for UTxO-HD ledger state snapshot conversion by @dlachaume in #2518
  • Record usage of client type in metrics by @turmelclem in #2546
  • chore(infra): update ssh key for 'testing' by @turmelclem in #2555
  • client-cli: merge cardano-database-v2 command into 'v1' command by @Alenar in #2547
  • fix(ci): temporary enforce softprops/action-gh-release v2.2.2 by @Alenar in #2559
  • Allow new header client type by @turmelclem in #2558
  • Feat: documentation and CI tests for UTxO-HD ledger state snapshot conversion mithril-client CLI command by @dlachaume in #2554
  • client-lib/client-cli: calibrate max parallel dl by @Alenar in #2561
  • docs: update CHANGELOG for 2524.0 distribution release by @jpraynaud in #2562

New Contributors

Full Changelog: 2517.1...2524.0-pre

Crates Versions

Crate Version
mithril-aggregator 0.7.58
mithril-client 0.12.11
mithril-client-cli 0.12.11
mithril-client-wasm 0.9.1
mithril-common 0.5.35
mithril-signer 0.2.249
mithril-stm 0.4.2

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2517.1 ✔️ ✔️
2517.0 ✔️ ✔️
2513.0 ✔️
2506.0 ✔️
2450.0 ✔️

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)).

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 si...
Read more

Mithril v2517.1

06 May 11:20
2517.1
b1a2faa
Compare
Choose a tag to compare

Highlights

Warning

🔥 This version fixes a bug in the 2517.0 distribution which caused the Cardano node to fail during startup when using a snapshot downloaded with the Mithril client.

Make sure you are using the Mithril client CLI with version 0.12.1.

  • ⚠️ Breaking changes in Mithril client CLI and library as detailed in this blog post:
    • To fast bootstrap a Cardano node, the new --include-ancillary option has been added to the Cardano node database command in the Mithril client CLI.
    • Without this option, only final immutable files are downloaded, and the ledger state must be computed from the genesis block when the Cardano node starts.
    • The --include-ancillary option requires the usage of an ancillary verification key (--ancillary-verification-key or ANCILLARY_VERIFICATION_KEY) which is specified in the Networks configuration page.
    • Clients from distribution [2513] and earlier are not compatible with this change and must be updated.
  • Support for Cardano node 10.3.1 in the signer and the aggregator
  • Support for origin tags in Mithril client library, CLI and WASM to record the origin of client requests.
  • Bug fixes and performance improvements.

What's Changed

  • feat: Separate location for ancillary for cardano database v1 by @Alenar in #2380
  • refactor: prepare ancillary signing by @Alenar in #2393
  • Chore: bump glibc requirement to 2.35+ in one-line installer by @jpraynaud in #2387
  • Docs: rotate documentation for 2513 distribution by @jpraynaud in #2390
  • docs: final CHANGELOG for 2513.0 distribution by @jpraynaud in #2395
  • Docs: add dev blog post for distribution 2513 by @jpraynaud in #2396
  • Feat(e2e): support multiple aggregators in the e2e tests by @jpraynaud in #2378
  • Docs: fix website documentation by @dlachaume in #2397
  • feat: Sign ancillary files in aggregator by @Alenar in #2394
  • Fix(infra): fix aggregator crash at startup in testing-preview network by @jpraynaud in #2399
  • chore: anticipate rust 1.86 by @Alenar in #2398
  • Refactor: rename master/slave signer registration by @jpraynaud in #2400
  • Feat(infra): split ssh keys for testing/production by @jpraynaud in #2401
  • chore(infra): add ssh key for 'testing' and 'production' by @turmelclem in #2404
  • Organize STM - Blst multi_sig module by @curiecrypt in #2405
  • Feat: record origin of client requests in metrics by @sfauvel in #2411
  • CI: include CardanoDatabase in the backward compatibility test by @dlachaume in #2413
  • Feat: include origin tag header for aggregator prover benchmark by @dlachaume in #2416
  • explorer: support latest ancillary & cardano database v2 developments by @Alenar in #2418
  • fix(aggregator): incorrect immutable files average and total size in cardano database v2 by @Alenar in #2419
  • Docs: blog post for the Cardano node database v2 certification by @dlachaume in #2417
  • Feat(infra): support follower aggregator in infra by @jpraynaud in #2407
  • Fix: signer infra volumes configuration by @jpraynaud in #2420
  • feat: Verify ancillary artifacts in client by @Alenar in #2414
  • Fix aggregator path in stress test by @sfauvel in #2421
  • Refactor: Simplify the configuration of commands in aggregator by @dlachaume in #2423
  • Refactor: Simplify the configuration of tools/era commands in aggregator by @dlachaume in #2434
  • fix(aggregator): ancillary signing on evolving files by @Alenar in #2425
  • feat(aggregator): Sign ancillary with GCP Kms by @Alenar in #2431
  • Simplify injection container in aggregator by @sfauvel in #2435
  • Refactor: Simplify the configuration of genesis command in aggregator by @dlachaume in #2432
  • Doc: update Cardano node database v2 dev blog post by @jpraynaud in #2439
  • Refactor: renaming and update aggregator node documentation by @dlachaume in #2438
  • refactor: shared workspace dependencies by @Alenar in #2440
  • Feat: support GCP KMS ancillary signature in infrastructure by @jpraynaud in #2433
  • doc(website): update cardano node boostrap page with ancillary verification by @Alenar in #2441
  • Chore: update dependencies for distribution 2517 by @jpraynaud in #2443
  • refactor: move SignaturePublisher to a dedicated module by @turmelclem in #2437
  • Feat: Support Cardano node 10.3.1 by @jpraynaud in #2447
  • test: use a in memory logger for tests that needs to check logs by @Alenar in #2442
  • Docs: update CHANGELOG for 2517.0 distribution release by @jpraynaud in #2444
  • Feat: support custom origin tags in infra by @jpraynaud in #2448

New Contributors

Full Changelog: 2513.0...2517.1

Crates Versions

Crate Version
mithril-aggregator 0.7.44
mithril-client 0.12.2
mithril-client-cli 0.12.1
mithril-client-wasm 0.9.0
mithril-common 0.5.27
mithril-signer 0.2.243
mithril-stm 0.3.45

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2513.0 ✔️
2506.0 ✔️
2450.0 ✔️

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)).

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 3...
Read more

Mithril v2517.0

05 May 13:10
2517.0
47178ad
Compare
Choose a tag to compare

Highlights:

  • ⚠️ Breaking changes in Mithril client CLI and library:
    • To fast bootstrap a Cardano node, the new --include-ancillary option has been added to the Cardano node database command in the Mithril client CLI.
    • Without this option, only final immutable files are downloaded, and the ledger state must be computed from the genesis block when the Cardano node starts.
    • The --include-ancillary option requires the usage of an ancillary verification key (--ancillary-verification-key or ANCILLARY_VERIFICATION_KEY) which is specified in the Networks configuration page.
    • Clients from distribution [2513] and earlier are not compatible with this change and must be updated.
  • Support for Cardano node 10.3.1 in the signer and the aggregator
  • Support for origin tags in Mithril client library, CLI and WASM to record the origin of client requests.
  • Bug fixes and performance improvements.

What's Changed

  • feat: Separate location for ancillary for cardano database v1 by @Alenar in #2380
  • refactor: prepare ancillary signing by @Alenar in #2393
  • Chore: bump glibc requirement to 2.35+ in one-line installer by @jpraynaud in #2387
  • Docs: rotate documentation for 2513 distribution by @jpraynaud in #2390
  • docs: final CHANGELOG for 2513.0 distribution by @jpraynaud in #2395
  • Docs: add dev blog post for distribution 2513 by @jpraynaud in #2396
  • Feat(e2e): support multiple aggregators in the e2e tests by @jpraynaud in #2378
  • Docs: fix website documentation by @dlachaume in #2397
  • feat: Sign ancillary files in aggregator by @Alenar in #2394
  • Fix(infra): fix aggregator crash at startup in testing-preview network by @jpraynaud in #2399
  • chore: anticipate rust 1.86 by @Alenar in #2398
  • Refactor: rename master/slave signer registration by @jpraynaud in #2400
  • Feat(infra): split ssh keys for testing/production by @jpraynaud in #2401
  • chore(infra): add ssh key for 'testing' and 'production' by @turmelclem in #2404
  • Organize STM - Blst multi_sig module by @curiecrypt in #2405
  • Feat: record origin of client requests in metrics by @sfauvel in #2411
  • CI: include CardanoDatabase in the backward compatibility test by @dlachaume in #2413
  • Feat: include origin tag header for aggregator prover benchmark by @dlachaume in #2416
  • explorer: support latest ancillary & cardano database v2 developments by @Alenar in #2418
  • fix(aggregator): incorrect immutable files average and total size in cardano database v2 by @Alenar in #2419
  • Docs: blog post for the Cardano node database v2 certification by @dlachaume in #2417
  • Feat(infra): support follower aggregator in infra by @jpraynaud in #2407
  • Fix: signer infra volumes configuration by @jpraynaud in #2420
  • feat: Verify ancillary artifacts in client by @Alenar in #2414
  • Fix aggregator path in stress test by @sfauvel in #2421
  • Refactor: Simplify the configuration of commands in aggregator by @dlachaume in #2423
  • Refactor: Simplify the configuration of tools/era commands in aggregator by @dlachaume in #2434
  • fix(aggregator): ancillary signing on evolving files by @Alenar in #2425
  • feat(aggregator): Sign ancillary with GCP Kms by @Alenar in #2431
  • Simplify injection container in aggregator by @sfauvel in #2435
  • Refactor: Simplify the configuration of genesis command in aggregator by @dlachaume in #2432
  • Doc: update Cardano node database v2 dev blog post by @jpraynaud in #2439
  • Refactor: renaming and update aggregator node documentation by @dlachaume in #2438
  • refactor: shared workspace dependencies by @Alenar in #2440
  • Feat: support GCP KMS ancillary signature in infrastructure by @jpraynaud in #2433
  • doc(website): update cardano node boostrap page with ancillary verification by @Alenar in #2441
  • Chore: update dependencies for distribution 2517 by @jpraynaud in #2443
  • refactor: move SignaturePublisher to a dedicated module by @turmelclem in #2437
  • Feat: Support Cardano node 10.3.1 by @jpraynaud in #2447
  • test: use a in memory logger for tests that needs to check logs by @Alenar in #2442
  • Docs: update CHANGELOG for 2517.0 distribution release by @jpraynaud in #2444
  • Feat: support custom origin tags in infra by @jpraynaud in #2448

New Contributors

Full Changelog: 2513.0...2517.0

Crates Versions

Crate Version
mithril-aggregator 0.7.44
mithril-client 0.12.0
mithril-client-cli 0.12.0
mithril-client-wasm 0.9.0
mithril-common 0.5.27
mithril-signer 0.2.243
mithril-stm 0.3.45

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2513.0 ✔️
2506.0 ✔️
2450.0 ✔️

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)).

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 ⚠️

Mithril v2517.0-pre

29 Apr 15:19
2517.0-pre
47178ad
Compare
Choose a tag to compare
Mithril v2517.0-pre Pre-release
Pre-release

Highlights:

  • ⚠️ Breaking changes in Mithril client CLI and library:
    • To fast bootstrap a Cardano node, the new --include-ancillary option has been added to the Cardano node database command in the Mithril client CLI.
    • Without this option, only final immutable files are downloaded, and the ledger state must be computed from the genesis block when the Cardano node starts.
    • The --include-ancillary option requires the usage of an ancillary verification key (--ancillary-verification-key or ANCILLARY_VERIFICATION_KEY) which is specified in the Networks configuration page.
    • Clients from distribution [2513] and earlier are not compatible with this change and must be updated.
  • Support for Cardano node 10.3.1 in the signer and the aggregator
  • Support for origin tags in Mithril client library, CLI and WASM to record the origin of client requests.
  • Bug fixes and performance improvements.

What's Changed

  • feat: Separate location for ancillary for cardano database v1 by @Alenar in #2380
  • refactor: prepare ancillary signing by @Alenar in #2393
  • Chore: bump glibc requirement to 2.35+ in one-line installer by @jpraynaud in #2387
  • Docs: rotate documentation for 2513 distribution by @jpraynaud in #2390
  • docs: final CHANGELOG for 2513.0 distribution by @jpraynaud in #2395
  • Docs: add dev blog post for distribution 2513 by @jpraynaud in #2396
  • Feat(e2e): support multiple aggregators in the e2e tests by @jpraynaud in #2378
  • Docs: fix website documentation by @dlachaume in #2397
  • feat: Sign ancillary files in aggregator by @Alenar in #2394
  • Fix(infra): fix aggregator crash at startup in testing-preview network by @jpraynaud in #2399
  • chore: anticipate rust 1.86 by @Alenar in #2398
  • Refactor: rename master/slave signer registration by @jpraynaud in #2400
  • Feat(infra): split ssh keys for testing/production by @jpraynaud in #2401
  • chore(infra): add ssh key for 'testing' and 'production' by @turmelclem in #2404
  • Organize STM - Blst multi_sig module by @curiecrypt in #2405
  • Feat: record origin of client requests in metrics by @sfauvel in #2411
  • CI: include CardanoDatabase in the backward compatibility test by @dlachaume in #2413
  • Feat: include origin tag header for aggregator prover benchmark by @dlachaume in #2416
  • explorer: support latest ancillary & cardano database v2 developments by @Alenar in #2418
  • fix(aggregator): incorrect immutable files average and total size in cardano database v2 by @Alenar in #2419
  • Docs: blog post for the Cardano node database v2 certification by @dlachaume in #2417
  • Feat(infra): support follower aggregator in infra by @jpraynaud in #2407
  • Fix: signer infra volumes configuration by @jpraynaud in #2420
  • feat: Verify ancillary artifacts in client by @Alenar in #2414
  • Fix aggregator path in stress test by @sfauvel in #2421
  • Refactor: Simplify the configuration of commands in aggregator by @dlachaume in #2423
  • Refactor: Simplify the configuration of tools/era commands in aggregator by @dlachaume in #2434
  • fix(aggregator): ancillary signing on evolving files by @Alenar in #2425
  • feat(aggregator): Sign ancillary with GCP Kms by @Alenar in #2431
  • Simplify injection container in aggregator by @sfauvel in #2435
  • Refactor: Simplify the configuration of genesis command in aggregator by @dlachaume in #2432
  • Doc: update Cardano node database v2 dev blog post by @jpraynaud in #2439
  • Refactor: renaming and update aggregator node documentation by @dlachaume in #2438
  • refactor: shared workspace dependencies by @Alenar in #2440
  • Feat: support GCP KMS ancillary signature in infrastructure by @jpraynaud in #2433
  • doc(website): update cardano node boostrap page with ancillary verification by @Alenar in #2441
  • Chore: update dependencies for distribution 2517 by @jpraynaud in #2443
  • refactor: move SignaturePublisher to a dedicated module by @turmelclem in #2437
  • Feat: Support Cardano node 10.3.1 by @jpraynaud in #2447
  • test: use a in memory logger for tests that needs to check logs by @Alenar in #2442
  • Docs: update CHANGELOG for 2517.0 distribution release by @jpraynaud in #2444
  • Feat: support custom origin tags in infra by @jpraynaud in #2448

New Contributors

Full Changelog: 2513.0...2517.0-pre

Crates Versions

Crate Version
mithril-aggregator 0.7.44
mithril-client 0.12.0
mithril-client-cli 0.12.0
mithril-client-wasm 0.9.0
mithril-common 0.5.27
mithril-signer 0.2.243
mithril-stm 0.3.45

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2513.0 ✔️
2506.0 ✔️
2450.0 ✔️

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)).

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 ⚠️

Mithril v2513.0

28 Mar 09:00
2513.0
1fb85a7
Compare
Choose a tag to compare

Highlights:

  • ⚠️ Breaking changes in Mithril nodes:
    • Upgraded the minimum required glibc version from 2.31 to 2.35 for the pre-built Linux binaries
    • Mithril signer with versions <=0.2.200 must be updated following the cleanup of Thales era legacy code
    • Mithril client library with_snapshot_uploader function has been renamed to with_file_uploader.
  • Support for Cardano node 10.2.1 in the signer and the aggregator
  • End support for macOS x64 pre-built binaries for the client CLI
  • Bug fixes and performance improvements.

What's Changed

  • refactor(aggregator): simplify dependency builder by @Alenar in #2288
  • Reduce e2e flakiness by changing protocol parameters by @sfauvel in #2301
  • Fix mithril-aggregator genesis bootstrap flakiness in e2e tests by @Alenar in #2303
  • Chore: update SSH keys in infra by @dlachaume in #2305
  • fix: stm tests run time regression by @Alenar in #2307
  • Docs: rotate documentation for 2506 distribution by @jpraynaud in #2283
  • Docs: final CHANGELOG for '2506.0' distribution by @jpraynaud in #2311
  • chore(ci): reactivate publish test for mithril-client by @Alenar in #2310
  • explorer: use main mithril-client-wasm package by @Alenar in #2309
  • Mithril dev blog review by @oduameh in #2302
  • Docs: add dev blog post for distribution 2506 by @jpraynaud in #2312
  • Docs: add dev blog post for certificate chain security advisory by @jpraynaud in #2313
  • Use a unique name for the cloud location of digests artifacts Cardano database by @sfauvel in #2314
  • Cleanup unused dependencies and auto CI check by @Alenar in #2315
  • Split mithril-common crate by extracting some modules by @sfauvel in #2304
  • Replace the TODO by a explanation of the limits by @sfauvel in #2308
  • ci: Bump build runner to ubuntu 22.04 by @Alenar in #2317
  • chore: upgrade dockerfiles base image version to Debian 12 by @Alenar in #2319
  • testing-sanchonet network decommission by @dlachaume in #2300
  • End support for MacOS x64 pre-built binaries by @dlachaume in #2277
  • feat: client library for incremental Cardano database by @jpraynaud in #2289
  • refactor(ci): use cache-version instead of 'v0-' in rust cache key prefix by @Alenar in #2323
  • Fix wasm build in rust 1.85 by @Alenar in #2326
  • feat: Implement an Unknown variant in the artifact locations by @sfauvel in #2320
  • Docs: add new Mithril certification section in website by @jpraynaud in #2324
  • Feat: Support Cardano node 10.2.1 pre-release by @jpraynaud in #2336
  • feat: incremental cardano database restoration with client CLI by @dlachaume in #2318
  • Minor editing/formatting improvements by @olgahryniuk in #2338
  • Docs: add page for Cardano node database v2 certification by @jpraynaud in #2339
  • Feat: add example crate for incremental Cardano database by @jpraynaud in #2337
  • Cleanup legacy code from thales era by @Alenar in #2340
  • Enhance artifact structure for incremental cardano db by @sfauvel in #2341
  • Feat: improve disk space calculation for Incremental DB Restoration by @dlachaume in #2345
  • fix: not blocking when computing size by @sfauvel in #2346
  • Test: add integration test for incremental Cardano database in mithril-client by @dlachaume in #2344
  • Fix: Hydra CI fails with OpenSSL error (Linux x86_64) by @dlachaume in #2348
  • Fix: notify-on-failure job succeeds despite email sending failure by @dlachaume in #2349
  • Code ADR for mithril-common by @Alenar in #2343
  • Use consistent naming in the client cardano database api by @sfauvel in #2347
  • Docs: update clients documentation for incremental Cardano DB by @dlachaume in #2350
  • Chore: enhance versions bump script by @dlachaume in #2355
  • Feat: implement aggregator slave signer registration mode by @jpraynaud in #2351
  • Remove flakiness on should delay between retries tests by @sfauvel in #2352
  • Docs: add features documentation for mithril-client library by @dlachaume in #2358
  • refactor(mithril-client): Optimize cardano db artifacts download by @Alenar in #2359
  • Fix BLST bindings: Error handling for infinite values of sigs and vks by @curiecrypt in #2322
  • Compress the digests file uploaded on gcp by @sfauvel in #2367
  • Feat: verify minimum node version with squash database migration by @dlachaume in #2368
  • Reduce flakiness in the ci by @sfauvel in #2370
  • Refactor(aggregator): groundwork for ancillary signature by @Alenar in #2372
  • Feat: move database vacuum to aggregator startup to avoid API interruptions during epoch transitions by @dlachaume in #2375
  • Organize STM code by @curiecrypt in #2373
  • Macro to implement the source trait by @sfauvel in #2377
  • Reduce flakiness in tests by @sfauvel in #2379
  • Organize STM code - Merkle Tree Module by @curiecrypt in #2374
  • Error messages as warning in signer by @sfauvel in #2381
  • Feat: Support Cardano node 10.2.1 by @jpraynaud in #2386
  • refactor(aggregator): remove deprecated configuration field from DependencyContainer by @Alenar in #2385
  • Chore: update dependencies for distribution 2513 by @jpraynaud in #2388
  • Docs: update CHANGELOG for 2513.0 distribution release by @jpraynaud in #2389

Full Changelog: 2506.0...2513.0

Crates Versions

Crate Version
mithril-aggregator 0.7.23
mithril-client 0.11.17
mithril-client-cli 0.11.11
mithril-client-wasm 0.8.6
mithril-common 0.5.14
mithril-signer 0.2.237
mithril-stm 0.3.42

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2506.0 ✔️ ✔️
2450.0 ✔️ ✔️
2445.0 ✔️

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)).

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
Read more

Mithril v2513.0-pre

25 Mar 14:10
2513.0-pre
1fb85a7
Compare
Choose a tag to compare
Mithril v2513.0-pre Pre-release
Pre-release

Highlights:

  • ⚠️ Breaking changes in Mithril nodes:
    • Upgraded the minimum required glibc version from 2.31 to 2.35 for the pre-built Linux binaries
    • Mithril signer with versions <=0.2.200 must be updated following the cleanup of Thales era legacy code
    • Mithril client library with_snapshot_uploader function has been renamed to with_file_uploader.
  • Support for Cardano node 10.2.1 in the signer and the aggregator
  • End support for macOS x64 pre-built binaries for the client CLI
  • Bug fixes and performance improvements.

What's Changed

  • refactor(aggregator): simplify dependency builder by @Alenar in #2288
  • Reduce e2e flakiness by changing protocol parameters by @sfauvel in #2301
  • Fix mithril-aggregator genesis bootstrap flakiness in e2e tests by @Alenar in #2303
  • Chore: update SSH keys in infra by @dlachaume in #2305
  • fix: stm tests run time regression by @Alenar in #2307
  • Docs: rotate documentation for 2506 distribution by @jpraynaud in #2283
  • Docs: final CHANGELOG for '2506.0' distribution by @jpraynaud in #2311
  • chore(ci): reactivate publish test for mithril-client by @Alenar in #2310
  • explorer: use main mithril-client-wasm package by @Alenar in #2309
  • Mithril dev blog review by @oduameh in #2302
  • Docs: add dev blog post for distribution 2506 by @jpraynaud in #2312
  • Docs: add dev blog post for certificate chain security advisory by @jpraynaud in #2313
  • Use a unique name for the cloud location of digests artifacts Cardano database by @sfauvel in #2314
  • Cleanup unused dependencies and auto CI check by @Alenar in #2315
  • Split mithril-common crate by extracting some modules by @sfauvel in #2304
  • Replace the TODO by a explanation of the limits by @sfauvel in #2308
  • ci: Bump build runner to ubuntu 22.04 by @Alenar in #2317
  • chore: upgrade dockerfiles base image version to Debian 12 by @Alenar in #2319
  • testing-sanchonet network decommission by @dlachaume in #2300
  • End support for MacOS x64 pre-built binaries by @dlachaume in #2277
  • feat: client library for incremental Cardano database by @jpraynaud in #2289
  • refactor(ci): use cache-version instead of 'v0-' in rust cache key prefix by @Alenar in #2323
  • Fix wasm build in rust 1.85 by @Alenar in #2326
  • feat: Implement an Unknown variant in the artifact locations by @sfauvel in #2320
  • Docs: add new Mithril certification section in website by @jpraynaud in #2324
  • Feat: Support Cardano node 10.2.1 pre-release by @jpraynaud in #2336
  • feat: incremental cardano database restoration with client CLI by @dlachaume in #2318
  • Minor editing/formatting improvements by @olgahryniuk in #2338
  • Docs: add page for Cardano node database v2 certification by @jpraynaud in #2339
  • Feat: add example crate for incremental Cardano database by @jpraynaud in #2337
  • Cleanup legacy code from thales era by @Alenar in #2340
  • Enhance artifact structure for incremental cardano db by @sfauvel in #2341
  • Feat: improve disk space calculation for Incremental DB Restoration by @dlachaume in #2345
  • fix: not blocking when computing size by @sfauvel in #2346
  • Test: add integration test for incremental Cardano database in mithril-client by @dlachaume in #2344
  • Fix: Hydra CI fails with OpenSSL error (Linux x86_64) by @dlachaume in #2348
  • Fix: notify-on-failure job succeeds despite email sending failure by @dlachaume in #2349
  • Code ADR for mithril-common by @Alenar in #2343
  • Use consistent naming in the client cardano database api by @sfauvel in #2347
  • Docs: update clients documentation for incremental Cardano DB by @dlachaume in #2350
  • Chore: enhance versions bump script by @dlachaume in #2355
  • Feat: implement aggregator slave signer registration mode by @jpraynaud in #2351
  • Remove flakiness on should delay between retries tests by @sfauvel in #2352
  • Docs: add features documentation for mithril-client library by @dlachaume in #2358
  • refactor(mithril-client): Optimize cardano db artifacts download by @Alenar in #2359
  • Fix BLST bindings: Error handling for infinite values of sigs and vks by @curiecrypt in #2322
  • Compress the digests file uploaded on gcp by @sfauvel in #2367
  • Feat: verify minimum node version with squash database migration by @dlachaume in #2368
  • Reduce flakiness in the ci by @sfauvel in #2370
  • Refactor(aggregator): groundwork for ancillary signature by @Alenar in #2372
  • Feat: move database vacuum to aggregator startup to avoid API interruptions during epoch transitions by @dlachaume in #2375
  • Organize STM code by @curiecrypt in #2373
  • Macro to implement the source trait by @sfauvel in #2377
  • Reduce flakiness in tests by @sfauvel in #2379
  • Organize STM code - Merkle Tree Module by @curiecrypt in #2374
  • Error messages as warning in signer by @sfauvel in #2381
  • Feat: Support Cardano node 10.2.1 by @jpraynaud in #2386
  • refactor(aggregator): remove deprecated configuration field from DependencyContainer by @Alenar in #2385
  • Chore: update dependencies for distribution 2513 by @jpraynaud in #2388
  • Docs: update CHANGELOG for 2513.0 distribution release by @jpraynaud in #2389

Full Changelog: 2506.0...2513.0-pre

Crates Versions

Crate Version
mithril-aggregator 0.7.23
mithril-client 0.11.17
mithril-client-cli 0.11.11
mithril-client-wasm 0.8.6
mithril-common 0.5.14
mithril-signer 0.2.237
mithril-stm 0.3.42

Networks Compatibility ⚠️

Network Compatible
release-mainnet
release-preprod
pre-release-preview
testing-preview

Distributions Compatibility ⚠️

Compatibility mithril-signer mithril-client
2506.0 ✔️ ✔️
2450.0 ✔️ ✔️
2445.0 ✔️

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)).

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
Read more

Mithril v2506.0

14 Feb 09:18
2506.0
2627f17
Compare
Choose a tag to compare

Highlights:

  • ⚠️ Security:
    • This distribution embeds a fix for the Mithril certificate chain could be manipulated by an adversarial signer security advisory GHSA-724h-fpm5-4qvr
    • All users running a client library, client CLI or client WASM are strongly encouraged to update them to the latest version.
  • Stable support for Cardano node 10.1.4 in the signer and the aggregator
  • Dropped support for Thales era in the signer and the aggregator
  • Stable support for traffic compression in signer, aggregator and client
  • Bug fixes and performance improvements.

What's Changed

  • feat(ci): include explorer in packaged releases by @Alenar in #2167
  • Fix: recompute certificate chain hash by @jpraynaud in #2168
  • Refactor: rework snapshot_uploaders module to improve genericity by @dlachaume in #2165
  • Fix explorer packaging in releases by @Alenar in #2170
  • Docs: enhance recompute certificates hash runbook by @jpraynaud in #2171
  • Feat: retryable devnet bootstrap errors in e2e tests by @jpraynaud in #2179
  • Docs: rotate documentation for 2450 distribution by @jpraynaud in #2162
  • Docs: final CHANGELOG for '2450.0' distribution by @jpraynaud in #2182
  • Dev blog copy review main branch by @oduameh in #2169
  • Docs: add dev blog post for distribution 2450 by @jpraynaud in #2183
  • Build and publish an unstable explorer version by @Alenar in #2181
  • Feat: implement the Ancillary sub builder for Incremental Cardano DB by @dlachaume in #2180
  • Docs: add dev blog post for era switch to Pythagoras by @jpraynaud in #2184
  • ci: publish packaged explorer in latest release by @Alenar in #2185
  • ci: fix downloading of stable explorer when publishing to pages by @Alenar in #2186
  • Experimental: Cache in client certificate verification (lib and wasm) by @Alenar in #2166
  • Feat: implement CardanoDatabase artifact routes by @jpraynaud in #2187
  • feat: extend Snapshotter to archive only specific files and directories by @dlachaume in #2189
  • Fix: CardanoDatabase artifacts verification in e2e test by @jpraynaud in #2194
  • Feat: add workflows to Nightly Dispatcher by @jpraynaud in #2188
  • Chore: upgrade dependencies by @jpraynaud in #2195
  • Fix: CardanoDatabase artifact identifier collisions by @jpraynaud in #2198
  • Refactor: enhance inputs for nightly workflows by @jpraynaud in #2200
  • Feat: ancillary archive creation by @dlachaume in #2191
  • Fix: nightly dispatcher workflow by @jpraynaud in #2201
  • Chore: update SSH keys in infra by @jpraynaud in #2203
  • Threat model analysis and blog post review PR by @oduameh in #2202
  • Feat: immutable file digests route for CardanoDatabase artifacts aggregator by @jpraynaud in #2204
  • Fix: execute Wasm tests on node in CI by @dlachaume in #2205
  • Chore: clean TODOs in repository by @jpraynaud in #2206
  • Feat: Support Cardano node 10.1.4 by @jpraynaud in #2210
  • Docs: dev blog post for activation of the Cardano stake distribution certification by @jpraynaud in #2219
  • Chore: clean TODOs in repository (second round) by @jpraynaud in #2220
  • Align messages golden master tests by @Alenar in #2221
  • doc: add windows powershell commands in client cli documentation by @Alenar in #2228
  • Fix: missing DEBUG logs release builds by @jpraynaud in #2231
  • Feat: Create immutable builder for incremental Cardano DB by @sfauvel in #2223
  • Fix: Signer node properly handles /register-signatures responses when the message has expired by @dlachaume in #2232
  • Feat: GcpUploader implements synchronization for Cardano database artifacts by @jpraynaud in #2233
  • Fix: support trailing whitespace in protocol key files by @jpraynaud in #2236
  • Chore: upgrade release-preprod VM by @jpraynaud in #2224
  • Feat(tests): integration testing for CardanoDatabase certification by @jpraynaud in #2237
  • Incremental Cardano DB artifact production enhancements by @Alenar in #2239
  • aggregator: fix flakiness of tests that uses the snapshotter and simplify http server tests by @Alenar in #2243
  • Openapi examples check by @sfauvel in #2240
  • refactor(aggregator): better url sanitization process by using a value object by @Alenar in #2241
  • Feat: compress aggregator HTTP responses by @jpraynaud in #2226
  • split snapshotter by @Alenar in #2245
  • Feat: implement client for CardanoDatabase in client library (list and get) by @jpraynaud in #2255
  • Implement a retry mechanism for the FileUploader by @sfauvel in #2244
  • Permanent storage of immutables trio archives by @Alenar in #2256
  • Feat: implement CardanoDatabase in mithril-client WASM by @dlachaume in #2258
  • Use tls vendored from reqwest by @Alenar in #2260
  • Do not delete an already existing archive on error by @sfauvel in #2257
  • Refactor: improve variable and function names in fake aggregator by @dlachaume in #2261
  • chore(ci): upgrade workflows running on ubuntu 22.04 to 24.04 by @Alenar in #2259
  • CI: move notify-on-failure to a dedicated workflow by @dlachaume in #2262
  • Fix: add missing workflow_call trigger on Test Notify on Failure workflow by @dlachaume in #2267
  • docs: update Pythagoras era switch dev blog post by @jpraynaud in #2268
  • Monitoring for incremental cardano db by @sfauvel in #2265
  • Feat: Implement cardano-db-v2 command in client CLI (list and show) by @dlachaume in #2266
  • explorer: Add cardano db v2 support & rework tabs layout by @Alenar in #2270
  • Fix: use unstable Docker image ID in test-client workflow instead… by @dlachaume in #2272
  • Chore: add Mithril client CLI version in debug logs by @dlachaume in #2273
  • Remove mithril common circular dependencies and random feature by @sfauvel in #2269
  • Add warning for linux requirements upgrade by @Alenar in #2275
  • Add an era subcommand to create keypair by @sfauvel in #2274
  • Feat: certify protocol parameters and epoch in certificate chain by @jpraynaud in #2276
  • Restore release option for build in Makefile for aggregator … by @sfauvel in #2278
  • Chore: upgrade dependencies by @Alenar in #2279
  • Fix: prevent aggregator test conflicts by using unique temporary directories by @dlachaume in #2280
  • Docs: bump minor versions of crates for 2506.0 distribution by @jpraynaud in #2285
  • Feat: support compression in HTTP clients by @dlachaume in #2282
  • docs: update era switch dev blog post by @jpraynaud in #2290
  • Fix aggregator stress test by @dl...
Read more

Mithril v2506.0-pre

10 Feb 14:31
2506.0-pre
2627f17
Compare
Choose a tag to compare
Mithril v2506.0-pre Pre-release
Pre-release

Highlights:

  • Stable support for Cardano node 10.1.4 in the signer and the aggregator
  • Dropped support for Thales era in the signer and the aggregator
  • Stable support for traffic compression in signer, aggregator and client
  • Bug fixes and performance improvements.

What's Changed

  • feat(ci): include explorer in packaged releases by @Alenar in #2167
  • Fix: recompute certificate chain hash by @jpraynaud in #2168
  • Refactor: rework snapshot_uploaders module to improve genericity by @dlachaume in #2165
  • Fix explorer packaging in releases by @Alenar in #2170
  • Docs: enhance recompute certificates hash runbook by @jpraynaud in #2171
  • Feat: retryable devnet bootstrap errors in e2e tests by @jpraynaud in #2179
  • Docs: rotate documentation for 2450 distribution by @jpraynaud in #2162
  • Docs: final CHANGELOG for '2450.0' distribution by @jpraynaud in #2182
  • Dev blog copy review main branch by @oduameh in #2169
  • Docs: add dev blog post for distribution 2450 by @jpraynaud in #2183
  • Build and publish an unstable explorer version by @Alenar in #2181
  • Feat: implement the Ancillary sub builder for Incremental Cardano DB by @dlachaume in #2180
  • Docs: add dev blog post for era switch to Pythagoras by @jpraynaud in #2184
  • ci: publish packaged explorer in latest release by @Alenar in #2185
  • ci: fix downloading of stable explorer when publishing to pages by @Alenar in #2186
  • Experimental: Cache in client certificate verification (lib and wasm) by @Alenar in #2166
  • Feat: implement CardanoDatabase artifact routes by @jpraynaud in #2187
  • feat: extend Snapshotter to archive only specific files and directories by @dlachaume in #2189
  • Fix: CardanoDatabase artifacts verification in e2e test by @jpraynaud in #2194
  • Feat: add workflows to Nightly Dispatcher by @jpraynaud in #2188
  • Chore: upgrade dependencies by @jpraynaud in #2195
  • Fix: CardanoDatabase artifact identifier collisions by @jpraynaud in #2198
  • Refactor: enhance inputs for nightly workflows by @jpraynaud in #2200
  • Feat: ancillary archive creation by @dlachaume in #2191
  • Fix: nightly dispatcher workflow by @jpraynaud in #2201
  • Chore: update SSH keys in infra by @jpraynaud in #2203
  • Threat model analysis and blog post review PR by @oduameh in #2202
  • Feat: immutable file digests route for CardanoDatabase artifacts aggregator by @jpraynaud in #2204
  • Fix: execute Wasm tests on node in CI by @dlachaume in #2205
  • Chore: clean TODOs in repository by @jpraynaud in #2206
  • Feat: Support Cardano node 10.1.4 by @jpraynaud in #2210
  • Docs: dev blog post for activation of the Cardano stake distribution certification by @jpraynaud in #2219
  • Chore: clean TODOs in repository (second round) by @jpraynaud in #2220
  • Align messages golden master tests by @Alenar in #2221
  • doc: add windows powershell commands in client cli documentation by @Alenar in #2228
  • Fix: missing DEBUG logs release builds by @jpraynaud in #2231
  • Feat: Create immutable builder for incremental Cardano DB by @sfauvel in #2223
  • Fix: Signer node properly handles /register-signatures responses when the message has expired by @dlachaume in #2232
  • Feat: GcpUploader implements synchronization for Cardano database artifacts by @jpraynaud in #2233
  • Fix: support trailing whitespace in protocol key files by @jpraynaud in #2236
  • Chore: upgrade release-preprod VM by @jpraynaud in #2224
  • Feat(tests): integration testing for CardanoDatabase certification by @jpraynaud in #2237
  • Incremental Cardano DB artifact production enhancements by @Alenar in #2239
  • aggregator: fix flakiness of tests that uses the snapshotter and simplify http server tests by @Alenar in #2243
  • Openapi examples check by @sfauvel in #2240
  • refactor(aggregator): better url sanitization process by using a value object by @Alenar in #2241
  • Feat: compress aggregator HTTP responses by @jpraynaud in #2226
  • split snapshotter by @Alenar in #2245
  • Feat: implement client for CardanoDatabase in client library (list and get) by @jpraynaud in #2255
  • Implement a retry mechanism for the FileUploader by @sfauvel in #2244
  • Permanent storage of immutables trio archives by @Alenar in #2256
  • Feat: implement CardanoDatabase in mithril-client WASM by @dlachaume in #2258
  • Use tls vendored from reqwest by @Alenar in #2260
  • Do not delete an already existing archive on error by @sfauvel in #2257
  • Refactor: improve variable and function names in fake aggregator by @dlachaume in #2261
  • chore(ci): upgrade workflows running on ubuntu 22.04 to 24.04 by @Alenar in #2259
  • CI: move notify-on-failure to a dedicated workflow by @dlachaume in #2262
  • Fix: add missing workflow_call trigger on Test Notify on Failure workflow by @dlachaume in #2267
  • docs: update Pythagoras era switch dev blog post by @jpraynaud in #2268
  • Monitoring for incremental cardano db by @sfauvel in #2265
  • Feat: Implement cardano-db-v2 command in client CLI (list and show) by @dlachaume in #2266
  • explorer: Add cardano db v2 support & rework tabs layout by @Alenar in #2270
  • Fix: use unstable Docker image ID in test-client workflow instead… by @dlachaume in #2272
  • Chore: add Mithril client CLI version in debug logs by @dlachaume in #2273
  • Remove mithril common circular dependencies and random feature by @sfauvel in #2269
  • Add warning for linux requirements upgrade by @Alenar in #2275
  • Add an era subcommand to create keypair by @sfauvel in #2274
  • Feat: certify protocol parameters and epoch in certificate chain by @jpraynaud in #2276
  • Restore release option for build in Makefile for aggregator … by @sfauvel in #2278
  • Chore: upgrade dependencies by @Alenar in #2279
  • Fix: prevent aggregator test conflicts by using unique temporary directories by @dlachaume in #2280
  • Docs: bump minor versions of crates for 2506.0 distribution by @jpraynaud in #2285
  • Feat: support compression in HTTP clients by @dlachaume in #2282
  • docs: update era switch dev blog post by @jpraynaud in #2290
  • Fix aggregator stress test by @dlachaume in #2287
  • Docs: update CHANGELOG for 2506.0 distribution release by @jpraynaud in #2284

New Contributors

Full Changelog: 2450.0...250...

Read more