Skip to content

Conversation

@avnik
Copy link
Contributor

@avnik avnik commented Aug 19, 2025

This PR include:

  • bump of kupo (existing url pointed to non-exist file, so I fixed and updated it)
  • add indirection layer for cardano.providers.node (and switch oura into it to test)
  • add demeter-run module (as alternative "provider" for node)

TODO:

  • switch kupo, blockfrost and ogmios to use "providers"
  • Implement providers for kupo, blockfrost and ogmios

Copy link

@TotallyNotChase TotallyNotChase left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like the indirection here. I assume it allows some abstraction to easily switch out providers. This is how Atlas and similar Haskell frameworks work as well so it's very nice.

@avnik avnik force-pushed the avnik/indirection-layer-for-node branch 4 times, most recently from db1e4dc to 6b4f990 Compare August 21, 2025 15:11
Copy link
Member

@aciceri aciceri left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR does several different unrelated things:

  • bump kupo: approved 👍
  • add demeter package: approved 👍
  • add demeter service: seems good, if it works it's approved 👍
  • indirection layers: am I understanding it wrong or it would be useful only for demeter? You can use it choosing between different providers (including cardano-node), right? Could you please provide an example where this new layer is useful?
    Also, since you changed the oura module, it's already implicitly tested by the oura test but would it be possible to have a more specific test?
  • fix the docs generation: what caused this? Did you update the nixpkgs input? Honestly I can't understand why it was failing and why now it works but I'm happy if now works.

I don't want to slow down this so I can already merge if you think it's ready, I only ask to create issues for what we are missing if we choose to merge (different issues since they can be worked on in parallel, so PRs last less hopefully) i.e.

  • implement a test for demeter
  • implement options.cardano.demeter-run.kupo (with a test)
  • implement options.cardano.demeter-run.ogmios (with a test)
  • make kupo, blockfrost and ogmios use the new indirection layer

@avnik avnik force-pushed the avnik/indirection-layer-for-node branch 2 times, most recently from 090d110 to a28a858 Compare September 17, 2025 13:53
Signed-off-by: Alexander V. Nikolaev <avn@avnik.info>
Signed-off-by: Alexander V. Nikolaev <avn@avnik.info>
Signed-off-by: Alexander V. Nikolaev <avn@avnik.info>
Signed-off-by: Alexander V. Nikolaev <avn@avnik.info>
@avnik avnik force-pushed the avnik/indirection-layer-for-node branch from a28a858 to 68bc427 Compare September 17, 2025 14:06
@aciceri aciceri merged commit f766034 into main Sep 17, 2025
2 checks passed
@aciceri aciceri deleted the avnik/indirection-layer-for-node branch September 17, 2025 14:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants