Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
6cff1d6
chore: scaffold 'internal/mithril-dmq-node' crate
jpraynaud Jun 18, 2025
dff43f5
feat(dmq): add 'DmqMessageBuilder'
jpraynaud Jun 18, 2025
90991b9
feat(dmq): add 'test' module and test payload
jpraynaud Jun 18, 2025
32ee7fe
feat(dmq): add 'DmqPublisherPallas' implementation
jpraynaud Jun 18, 2025
0ca120f
feat(dmq): add 'DmqConsumerPallas' implementation
jpraynaud Jun 18, 2025
e0d6f3e
feat(common): add 'RegisterSignatureMessageDmq' for DMQ single signat…
jpraynaud Jun 19, 2025
108134e
feat(signer): add Pallas based 'SignaturePublisher' implementation
jpraynaud Jun 19, 2025
64f1ad2
feat(aggregator): add Pallas based 'SignatureConsumer' implementation
jpraynaud Jun 19, 2025
e428259
feat(dmq): add a 'DmqConsumer' trait
jpraynaud Jun 19, 2025
bb21118
feat(aggregator): update 'SignatureConsumer' implementation
jpraynaud Jun 19, 2025
e88d9dc
feat(dmq): add a 'DmqPublisher' trait
jpraynaud Jun 19, 2025
2e33bbc
feat(signer): update 'SignaturePublisher' implementation
jpraynaud Jun 19, 2025
ee72e2f
feat(common): add 'KesSignerFake' implementation in 'kes' module
jpraynaud Jun 24, 2025
c729db0
test(dmq): add 'DmqConsumerFake' test double
jpraynaud Jun 20, 2025
e50c77a
test(dmq): add 'DmqPublisherFake' test double
jpraynaud Jun 20, 2025
113cf94
refactor(signer): 'SignaturePublisherDmq' uses a 'DmqPublisher'
jpraynaud Jun 20, 2025
dbdfe61
refactor(aggregator): 'SignatureConsumerDmq' uses a 'DmqConsumer'
jpraynaud Jun 20, 2025
036f134
feat(dmq): cache 'DmqClient' in 'DmqConsumer'
jpraynaud Jun 20, 2025
ea6d7d6
feat(dmq): sign DMQ messages with 'KesSigner'
jpraynaud Jun 24, 2025
4c8581e
refactor(common): rename fake KES signer module
jpraynaud Jun 24, 2025
54a819e
refactor(common): 'test_setups' sub-module in 'kes' module
jpraynaud Jun 24, 2025
55827c1
feat(signer): wire 'SignaturePublisherDmq' in DI
jpraynaud Jun 26, 2025
c7d529c
feat(aggregator): wire 'SignatureConsumerDmq' in DI
jpraynaud Jun 26, 2025
dae0a7f
docs: better socket file path examples
jpraynaud Jun 26, 2025
d44f5dc
chore: apply review comments
jpraynaud Jun 27, 2025
1e1789f
refactor(aggregator): gate DMQ consumer behind 'future_dmq' feature
jpraynaud Jun 30, 2025
93593d0
refactor(signer): gate DMQ publisher behind 'future_dmq' feature
jpraynaud Jun 30, 2025
61a586a
chore(ci): add 'future_dqm' feature to Ubuntu tests
jpraynaud Jun 30, 2025
a70a0d9
refactor(dmq): better anyhow usage
jpraynaud Jun 30, 2025
cd38598
refactor(common): remove unnecessary 'map_err' with 'bincode' deseria…
jpraynaud Jun 30, 2025
60c58c3
chore(common): enhance readability of 'RegisterSignatureMessageDmq' b…
jpraynaud Jun 30, 2025
1d251ed
refactor(dmq): better TTL support in 'DmqMessageBuilder'
jpraynaud Jun 30, 2025
11a9726
refactor(common): 'tests_setup' behind 'test_tools' feature
jpraynaud Jun 30, 2025
0fd9ca9
fix(dmq): remove unneeded 'Debug' in 'DmqPublisher' trait
jpraynaud Jun 30, 2025
5b8874b
chore(dmq): rename 'mithril-dmq-node' crate to 'mithril-dmq'
jpraynaud Jun 30, 2025
bbd4888
fix(doc): linting of README
jpraynaud Jun 30, 2025
52077da
docs: update CHANGELOG
jpraynaud Jun 30, 2025
36f6e67
chore: upgrade crate versions
jpraynaud Jul 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ jobs:

include:
- os: ubuntu-24.04
test-args: --features full,unstable --workspace
test-args: --features full,unstable,future_dmq --workspace
# Exclude nodes not officially supported on Windows and macOS (only mithril-client is supported)
- os: macos-14
test-args: >
Expand Down Expand Up @@ -805,6 +805,7 @@ jobs:
# the same name (we only want to document those anyway)
cargo doc --no-deps --lib -p mithril-stm -p mithril-common \
-p mithril-cardano-node-chain -p mithril-cardano-node-internal-database \
-p mithril-dmq \
-p mithril-build-script -p mithril-cli-helper -p mithril-doc -p mithril-doc-derive \
-p mithril-era -p mithril-metric -p mithril-persistence -p mithril-resource-pool \
-p mithril-ticker -p mithril-signed-entity-lock -p mithril-signed-entity-preloader \
Expand Down
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ As a minor extension, we have adopted a slightly different versioning convention

- Abstracted the implementation of KES signature and verification to allow multiple and reusable implementations.

- **UNSTABLE** :
- Support for DMQ signature publisher in the signer and signature consumer in the aggregator.

- Crates versions:

| Crate | Version |
Expand Down
115 changes: 98 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ members = [
"internal/cardano-node/mithril-cardano-node-internal-database",
"internal/mithril-build-script",
"internal/mithril-cli-helper",
"internal/mithril-dmq",
"internal/mithril-doc",
"internal/mithril-doc-derive",
"internal/mithril-era",
Expand Down
1 change: 1 addition & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
COMPONENTS = mithril-aggregator mithril-client mithril-client-cli mithril-client-wasm \
mithril-common mithril-relay mithril-signer mithril-stm \
internal/mithril-build-script internal/mithril-cli-helper internal/mithril-doc \
internal/mithril-dmq \
internal/mithril-doc-derive internal/mithril-era internal/mithril-metric internal/mithril-persistence \
internal/mithril-resource-pool internal/mithril-ticker \
internal/cardano-node/mithril-cardano-node-chain internal/cardano-node/mithril-cardano-node-internal-database \
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,8 @@ This repository consists of the following parts:

- [**Mithril cli helper**](./internal/mithril-cli-helper): **CLI** tools for **Mithril** binaries.

- [**Mithril DMQ node**](./internal/mithril-dmq): mechanisms to publish and consume messages of a **Decentralized Message Queue network** through a DMQ node, used by Mithril network nodes.

- [**Mithril doc**](./internal/mithril-doc): an API that generates Markdown documentation for crate command line arguments.

- [**Mithril doc derive**](./internal/mithril-doc-derive): a macro implementation used by **Mithril doc**.
Expand Down
Loading
Loading