Skip to content

Dependency Graph

Computed from the Nix flake closure + cabal.project source-repository-package entries at locked revisions. Every edge is pinned to an exact commit hash.

Repositories

Repo Owner Description Pin status
cardano-mpfs-offchain lambdasistemi Merkle Patricia Forestry offchain service root
cardano-ledger-read cardano-foundation Read Cardano block data, parametrized by era 8 behind main @ 54f91a71874c
cardano-mpfs-onchain cardano-foundation Aiken on-chain validators for Merkle Patricia Forestry on Cardano up to date
cardano-ledger-wasm lambdasistemi Cardano ledger operations compiled to wasm32-wasi up to date
cardano-node-clients lambdasistemi Haskell clients for Cardano node mini-protocols (N2C + N2N) 11 behind main @ 3312e42b708f
cardano-tx-tools lambdasistemi Cardano transaction tooling: builder, structural diff, blueprint decoding. Uses cardano-node-clients but is not a node client. 24 behind main @ 7bfe95bf5ef3
cardano-utxo-csmt lambdasistemi HTTP service maintaining a Compact Sparse Merkle Tree over Cardano's UTxO set for efficient inclusion proofs 10 behind main @ f513705a94f5
chain-follower lambdasistemi Abstract chain follower types — Follower, Intersector, ProgressOrRewind 2 behind main @ 9f5f20c22431
contra-tracer-contrib lambdasistemi Utility modules for contra-tracer: file logging, thread-safe wrappers, timestamps, throttling, and more 2 behind main @ 6e0f14e33fb5
github-release-check lambdasistemi Haskell library: check GitHub Releases API for newer versions of a CLI and print an update banner. Cache-aware, opt-out via env var, silent on failure. 2 behind main @ 075ce672d8b4
haskell-mts lambdasistemi Merkle Trees implementation in Haskell with persistent storage and Merkle proofs 13 behind main @ c848e6ddff22
rocksdb-haskell lambdasistemi RocksDB Haskell Bindings diverged
rocksdb-kv-transactions lambdasistemi RocksDB backend for key-value transactions 2 behind main @ 46ecca8845f4
aiken-codegen paolino Haskell DSL for generating Aiken source code 2 behind main @ 5ac5d6b19d34
dev-assets paolino Actions for haskell, nix and mkdocs workflows 47 behind main @ cbe1184e9b30

Flake inputs

cardano-mpfs-offchain (root)

Input Target Type Source
cardano-mpfs-onchain cardano-foundation/cardano-mpfs-onchain e37e33ed2eba flake flake.nix
cardano-ledger-wasm lambdasistemi/cardano-ledger-wasm 845877fde090 flake flake.nix
cardano-node-clients lambdasistemi/cardano-node-clients e4b01cb9efdf flake flake.nix
mkdocs paolino/dev-assets 1623f2925791 flake flake.nix
asciinema paolino/dev-assets 1623f2925791 flake flake.nix

lambdasistemi/cardano-node-clients @ e4b01cb9efdf

Input Target Type Source
mkdocs paolino/dev-assets 06b0878a5dc6 flake flake.nix

Cabal source-repository-package

lambdasistemi/cardano-mpfs-offchain @ 0f82465f5f82

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:72
cardano-foundation/cardano-mpfs-onchain 39bf3302fce7 cabal.project:102
lambdasistemi/cardano-ledger-wasm 845877fde090 cabal.project:29
lambdasistemi/cardano-node-clients e4b01cb9efdf cabal.project:84
lambdasistemi/cardano-tx-tools 631f1341fde6 cabal.project:90
lambdasistemi/cardano-utxo-csmt f4772f73dde0 cabal.project:48
lambdasistemi/chain-follower d592a5015f8d cabal.project:54
lambdasistemi/contra-tracer-contrib f0518e871391 cabal.project:78
lambdasistemi/github-release-check d90131112a4d cabal.project:96
lambdasistemi/haskell-mts ab15f7b2dea7 cabal.project:60
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:36
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:42
paolino/aiken-codegen 74f364c10e93 cabal.project:66

lambdasistemi/cardano-node-clients @ 0f44f49c6d7e

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:41
lambdasistemi/chain-follower d592a5015f8d cabal.project:23
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:35
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:29

lambdasistemi/cardano-node-clients @ ca86f11d27b3

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:41
lambdasistemi/chain-follower 371b5930976a cabal.project:23
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:35
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:29

lambdasistemi/cardano-node-clients @ e4b01cb9efdf

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:41
lambdasistemi/chain-follower d592a5015f8d cabal.project:23
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:35
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:29

lambdasistemi/cardano-tx-tools @ 56918f33ba74

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:58
lambdasistemi/cardano-node-clients ca86f11d27b3 cabal.project:30
lambdasistemi/chain-follower 371b5930976a cabal.project:40
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:52
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:46

lambdasistemi/cardano-tx-tools @ 631f1341fde6

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:69
lambdasistemi/cardano-node-clients ca86f11d27b3 cabal.project:30
lambdasistemi/chain-follower 371b5930976a cabal.project:51
lambdasistemi/github-release-check d90131112a4d cabal.project:41
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:63
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:57

lambdasistemi/cardano-utxo-csmt @ f4772f73dde0

Dependency Locked tag Source
cardano-foundation/cardano-ledger-read 34d0767bd5c3 cabal.project:49
lambdasistemi/cardano-node-clients 0f44f49c6d7e cabal.project:61
lambdasistemi/cardano-tx-tools 56918f33ba74 cabal.project:67
lambdasistemi/chain-follower d592a5015f8d cabal.project:73
lambdasistemi/contra-tracer-contrib f0518e871391 cabal.project:55
lambdasistemi/haskell-mts 9a5106790759 cabal.project:31
lambdasistemi/rocksdb-haskell 85977e8673f1 cabal.project:25
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:43
paolino/aiken-codegen 74f364c10e93 cabal.project:37

lambdasistemi/chain-follower @ 371b5930976a

Dependency Locked tag Source
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:17
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:11

lambdasistemi/chain-follower @ d592a5015f8d

Dependency Locked tag Source
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:17
lambdasistemi/rocksdb-kv-transactions e2e77579888e cabal.project:11

lambdasistemi/haskell-mts @ 9a5106790759

Dependency Locked tag Source
paolino/aiken-codegen 74f364c10e93 cabal.project:24
paolino/rocksdb-haskell a3e86b39f951 cabal.project:12
paolino/rocksdb-kv-transactions 0888387a5de8 cabal.project:18

lambdasistemi/haskell-mts @ ab15f7b2dea7

Dependency Locked tag Source
paolino/aiken-codegen 74f364c10e93 cabal.project:24
paolino/rocksdb-haskell a3e86b39f951 cabal.project:12
paolino/rocksdb-kv-transactions 0888387a5de8 cabal.project:18

lambdasistemi/rocksdb-kv-transactions @ e2e77579888e

Dependency Locked tag Source
lambdasistemi/rocksdb-haskell a3e86b39f951 cabal.project:5

paolino/rocksdb-kv-transactions @ 0888387a5de8

Dependency Locked tag Source
paolino/rocksdb-haskell a3e86b39f951 cabal.project:5

⚠️ Pin skew

The same dependency is pinned to different revisions by different declarers. Because source-repository-package entries are flattened at the root, the root's pin wins — any dependency declaring a different rev is silently built against the root's.

lambdasistemi/cardano-node-clients

Effective (root pin): e4b01cb9efdf

Declared by at its own rev Pins this dep to
lambdasistemi/cardano-mpfs-offchain 0f82465f5f82 e4b01cb9efdf
lambdasistemi/cardano-tx-tools 56918f33ba74 ca86f11d27b3
lambdasistemi/cardano-tx-tools 631f1341fde6 ca86f11d27b3
lambdasistemi/cardano-utxo-csmt f4772f73dde0 0f44f49c6d7e

lambdasistemi/cardano-tx-tools

Effective (root pin): 631f1341fde6

Declared by at its own rev Pins this dep to
lambdasistemi/cardano-mpfs-offchain 0f82465f5f82 631f1341fde6
lambdasistemi/cardano-utxo-csmt f4772f73dde0 56918f33ba74

lambdasistemi/chain-follower

Effective (root pin): d592a5015f8d

Declared by at its own rev Pins this dep to
lambdasistemi/cardano-mpfs-offchain 0f82465f5f82 d592a5015f8d
lambdasistemi/cardano-node-clients 0f44f49c6d7e d592a5015f8d
lambdasistemi/cardano-node-clients ca86f11d27b3 371b5930976a
lambdasistemi/cardano-node-clients e4b01cb9efdf d592a5015f8d
lambdasistemi/cardano-tx-tools 56918f33ba74 371b5930976a
lambdasistemi/cardano-tx-tools 631f1341fde6 371b5930976a
lambdasistemi/cardano-utxo-csmt f4772f73dde0 d592a5015f8d

lambdasistemi/haskell-mts

Effective (root pin): ab15f7b2dea7

Declared by at its own rev Pins this dep to
lambdasistemi/cardano-mpfs-offchain 0f82465f5f82 ab15f7b2dea7
lambdasistemi/cardano-utxo-csmt f4772f73dde0 9a5106790759

lambdasistemi/rocksdb-haskell

Effective (root pin): a3e86b39f951

Declared by at its own rev Pins this dep to
lambdasistemi/cardano-mpfs-offchain 0f82465f5f82 a3e86b39f951
lambdasistemi/cardano-node-clients 0f44f49c6d7e a3e86b39f951
lambdasistemi/cardano-node-clients ca86f11d27b3 a3e86b39f951
lambdasistemi/cardano-node-clients e4b01cb9efdf a3e86b39f951
lambdasistemi/cardano-tx-tools 56918f33ba74 a3e86b39f951
lambdasistemi/cardano-tx-tools 631f1341fde6 a3e86b39f951
lambdasistemi/cardano-utxo-csmt f4772f73dde0 85977e8673f1
lambdasistemi/chain-follower 371b5930976a a3e86b39f951
lambdasistemi/chain-follower d592a5015f8d a3e86b39f951
lambdasistemi/rocksdb-kv-transactions e2e77579888e a3e86b39f951

Diagram

graph TD
    classDef haskell fill:#5e5086,stroke:#3d3364,color:#fff
    classDef aiken fill:#e06c3c,stroke:#b34a24,color:#fff
    classDef purescript fill:#1d222d,stroke:#14181f,color:#fff
    classDef nix fill:#7ebae4,stroke:#5a8ab0,color:#000

    cardano_mpfs_offchain["<a href='https://github.com/lambdasistemi/cardano-mpfs-offchain/tree/0f82465f5f82'>cardano-mpfs-offchain</a><br/>Merkle Patricia Forestry offchain<br/>service<br/><a href='https://github.com/lambdasistemi/cardano-mpfs-offchain/commit/0f82465f5f82'><code>0f82465f5f82</code></a>"]:::haskell
    cardano_ledger_read["<a href='https://github.com/cardano-foundation/cardano-ledger-read/tree/34d0767bd5c3'>cardano-ledger-read</a><br/>Read Cardano block data, parametrized by<br/>era<br/><a href='https://github.com/cardano-foundation/cardano-ledger-read/commit/34d0767bd5c3'><code>34d0767bd5c3</code></a><br/><b>↑8</b>"]:::haskell
    cardano_mpfs_onchain["<a href='https://github.com/cardano-foundation/cardano-mpfs-onchain/tree/e37e33ed2eba'>cardano-mpfs-onchain</a><br/>Aiken on-chain validators for Merkle<br/>Patricia Forestry on Cardano<br/><a href='https://github.com/cardano-foundation/cardano-mpfs-onchain/commit/e37e33ed2eba'><code>e37e33ed2eba</code></a>"]:::aiken
    cardano_ledger_wasm["<a href='https://github.com/lambdasistemi/cardano-ledger-wasm/tree/845877fde090'>cardano-ledger-wasm</a><br/>Cardano ledger operations compiled to<br/>wasm32-wasi<br/><a href='https://github.com/lambdasistemi/cardano-ledger-wasm/commit/845877fde090'><code>845877fde090</code></a>"]:::haskell
    cardano_node_clients["<a href='https://github.com/lambdasistemi/cardano-node-clients/tree/e4b01cb9efdf'>cardano-node-clients</a><br/>Haskell clients for Cardano node<br/>mini-protocols (N2C + N2N)<br/><a href='https://github.com/lambdasistemi/cardano-node-clients/commit/e4b01cb9efdf'><code>e4b01cb9efdf</code></a><br/><b>↑11</b>"]:::haskell
    cardano_tx_tools["<a href='https://github.com/lambdasistemi/cardano-tx-tools/tree/631f1341fde6'>cardano-tx-tools</a><br/>Cardano transaction tooling: builder,<br/>structural diff, blueprint decoding.<br/>Uses cardano-node-clients but is not a<br/>node client.<br/><a href='https://github.com/lambdasistemi/cardano-tx-tools/commit/631f1341fde6'><code>631f1341fde6</code></a><br/><b>↑24</b>"]:::haskell
    cardano_utxo_csmt["<a href='https://github.com/lambdasistemi/cardano-utxo-csmt/tree/f4772f73dde0'>cardano-utxo-csmt</a><br/>HTTP service maintaining a Compact<br/>Sparse Merkle Tree over Cardano's UTxO<br/>set for efficient inclusion proofs<br/><a href='https://github.com/lambdasistemi/cardano-utxo-csmt/commit/f4772f73dde0'><code>f4772f73dde0</code></a><br/><b>↑10</b>"]:::haskell
    chain_follower["<a href='https://github.com/lambdasistemi/chain-follower/tree/d592a5015f8d'>chain-follower</a><br/>Abstract chain follower types —<br/>Follower, Intersector, ProgressOrRewind<br/><a href='https://github.com/lambdasistemi/chain-follower/commit/d592a5015f8d'><code>d592a5015f8d</code></a><br/><b>↑2</b>"]:::haskell
    contra_tracer_contrib["<a href='https://github.com/lambdasistemi/contra-tracer-contrib/tree/f0518e871391'>contra-tracer-contrib</a><br/>Utility modules for contra-tracer: file<br/>logging, thread-safe wrappers,<br/>timestamps, throttling, and more<br/><a href='https://github.com/lambdasistemi/contra-tracer-contrib/commit/f0518e871391'><code>f0518e871391</code></a><br/><b>↑2</b>"]:::haskell
    github_release_check["<a href='https://github.com/lambdasistemi/github-release-check/tree/d90131112a4d'>github-release-check</a><br/>Haskell library: check GitHub Releases<br/>API for newer versions of a CLI and<br/>print an update banner. Cache-aware,<br/>opt-out via env var, silent on failure.<br/><a href='https://github.com/lambdasistemi/github-release-check/commit/d90131112a4d'><code>d90131112a4d</code></a><br/><b>↑2</b>"]:::haskell
    haskell_mts["<a href='https://github.com/lambdasistemi/haskell-mts/tree/ab15f7b2dea7'>haskell-mts</a><br/>Merkle Trees implementation in Haskell<br/>with persistent storage and Merkle<br/>proofs<br/><a href='https://github.com/lambdasistemi/haskell-mts/commit/ab15f7b2dea7'><code>ab15f7b2dea7</code></a><br/><b>↑13</b>"]:::haskell
    rocksdb_haskell["<a href='https://github.com/lambdasistemi/rocksdb-haskell/tree/a3e86b39f951'>rocksdb-haskell</a><br/>RocksDB Haskell Bindings<br/><a href='https://github.com/lambdasistemi/rocksdb-haskell/commit/a3e86b39f951'><code>a3e86b39f951</code></a><br/><b>⑂ diverged</b>"]:::haskell
    rocksdb_kv_transactions["<a href='https://github.com/lambdasistemi/rocksdb-kv-transactions/tree/e2e77579888e'>rocksdb-kv-transactions</a><br/>RocksDB backend for key-value<br/>transactions<br/><a href='https://github.com/lambdasistemi/rocksdb-kv-transactions/commit/e2e77579888e'><code>e2e77579888e</code></a><br/><b>↑2</b>"]:::haskell
    aiken_codegen["<a href='https://github.com/paolino/aiken-codegen/tree/74f364c10e93'>aiken-codegen</a><br/>Haskell DSL for generating Aiken source<br/>code<br/><a href='https://github.com/paolino/aiken-codegen/commit/74f364c10e93'><code>74f364c10e93</code></a><br/><b>↑2</b>"]:::haskell
    dev_assets["<a href='https://github.com/paolino/dev-assets/tree/1623f2925791'>dev-assets</a><br/>Actions for haskell, nix and mkdocs<br/>workflows<br/><a href='https://github.com/paolino/dev-assets/commit/1623f2925791'><code>1623f2925791</code></a><br/><b>↑47</b>"]:::nix

    cardano_node_clients -->|"mkdocs"| dev_assets
    cardano_mpfs_offchain -->|"cardano-mpfs-onchain"| cardano_mpfs_onchain
    cardano_mpfs_offchain -->|"cardano-ledger-wasm"| cardano_ledger_wasm
    cardano_mpfs_offchain -->|"cardano-node-clients"| cardano_node_clients
    cardano_mpfs_offchain -->|"mkdocs"| dev_assets
    cardano_mpfs_offchain -->|"asciinema"| dev_assets
    cardano_mpfs_offchain ==> cardano_ledger_read
    cardano_mpfs_offchain ==> cardano_mpfs_onchain
    cardano_mpfs_offchain ==> cardano_ledger_wasm
    cardano_mpfs_offchain ==> cardano_node_clients
    cardano_mpfs_offchain ==> cardano_tx_tools
    cardano_mpfs_offchain ==> cardano_utxo_csmt
    cardano_mpfs_offchain ==> chain_follower
    cardano_mpfs_offchain ==> contra_tracer_contrib
    cardano_mpfs_offchain ==> github_release_check
    cardano_mpfs_offchain ==> haskell_mts
    cardano_mpfs_offchain ==> rocksdb_haskell
    cardano_mpfs_offchain ==> rocksdb_kv_transactions
    cardano_mpfs_offchain ==> aiken_codegen
    cardano_node_clients ==> cardano_ledger_read
    cardano_node_clients ==> chain_follower
    cardano_node_clients ==>|"rocksdb-haskell-jprupp"| rocksdb_haskell
    cardano_node_clients ==>|"kv-transactions, rocksdb-kv-transactions"| rocksdb_kv_transactions
    cardano_tx_tools ==> cardano_ledger_read
    cardano_tx_tools ==> cardano_node_clients
    cardano_tx_tools ==> chain_follower
    cardano_tx_tools ==> github_release_check
    cardano_tx_tools ==> rocksdb_haskell
    cardano_tx_tools ==> rocksdb_kv_transactions
    cardano_utxo_csmt ==> cardano_ledger_read
    cardano_utxo_csmt ==> cardano_node_clients
    cardano_utxo_csmt ==> cardano_tx_tools
    cardano_utxo_csmt ==> chain_follower
    cardano_utxo_csmt ==> contra_tracer_contrib
    cardano_utxo_csmt ==> haskell_mts
    cardano_utxo_csmt ==> rocksdb_haskell
    cardano_utxo_csmt ==> rocksdb_kv_transactions
    cardano_utxo_csmt ==> aiken_codegen
    chain_follower ==> rocksdb_haskell
    chain_follower ==> rocksdb_kv_transactions
    haskell_mts ==> aiken_codegen
    haskell_mts ==> rocksdb_haskell
    haskell_mts ==> rocksdb_kv_transactions
    rocksdb_kv_transactions ==> rocksdb_haskell
    cardano_tx_tools -.->|"skew ca86f11d27b3"| cardano_node_clients
    cardano_utxo_csmt -.->|"skew 0f44f49c6d7e"| cardano_node_clients
    cardano_utxo_csmt -.->|"skew 56918f33ba74"| cardano_tx_tools
    cardano_node_clients -.->|"skew 371b5930976a"| chain_follower
    cardano_tx_tools -.->|"skew 371b5930976a"| chain_follower
    cardano_utxo_csmt -.->|"skew 9a5106790759"| haskell_mts
    cardano_utxo_csmt -.->|"skew 85977e8673f1"| rocksdb_haskell

    linkStyle 0,1,2,3,4,5 stroke:#2196F3,stroke-width:2px
    linkStyle 6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43 stroke:#e53935,stroke-width:2px
    linkStyle 44,45,46,47,48,49,50 stroke:#ffb300,stroke-width:1px,stroke-dasharray:4 3

Legend

Nodes
#5e5086 Purple Haskell
#e06c3c Orange Aiken
#1d222d Dark PureScript
#7ebae4 Blue Nix
Edges
#2196F3 Blue solid ──> Flake input (declared in flake.nix)
#90CAF9 Light blue dashed --.-> Flake follows (delegated to another input)
#e53935 Red thick ==> Cabal source-repository-package
#ffb300 Amber dashed --.-> Pin skew: declarer pins a different rev than the effective (root) pin
Pin status
↑N Pinned commit is N commits behind the default branch HEAD
⑂ branch Pinned commit is on a different branch (diverged from default)
→ org Repo has migrated to a different GitHub org (pin is on stale fork)