datomic

Leonard Kuehlke 2025-07-08T14:40:56.054969Z

What is the proper way to find and deal with datomic cloud dependencies? I deployed a pedestal project to AWS and ran into multiple dependency conflicts. Where can I see the current versions running in the cloud and is there any way to use libs requiring newer versions? More Context in the Thread.

Leonard Kuehlke 2025-07-08T14:41:28.855009Z

So this is what happened: I tried out datomic cloud for the first time. Got Jetty related error messages. Had no clue since I did not run into any dependency conflicts before (lucky me I guess). After long time I got on the right track and found this: https://docs.datomic.com/operation/troubleshooting.html#dependency-conflict Turns out pedestal uses newer version of jetty than datomic cloud and the conflict can somehow be avoided by excluding the jetty deps from com.datomic/client-cloud But then I got some jackson-core dependency issues (at least now I knew it was a dependency issue again) Just like with jetty it seemed that the problem was with pedestal again whos newest version requires a cheshire/cheshire 6.0.0 which in return uses com.fasterxml.jackson.core/jackson-core 2.18.3. I tried to exclude the jackson dependency from client-cloud again but without success. I tried to declare 2.18.3 at top level but without success. AI suggested that anything above 2.15.* breaks so I lowered pedestal all the way to 0.6.1 to get a version of cheshire -> jackson.core below 2.15. Now it works. But this really seems like a suboptimal solution. Also along the way I saw first the message from push: "The :push operation overrode these dependencies to match versions already running in Datomic Cloud. To test locally, add these explicit deps to your deps.edn."} And then this: https://ask.datomic.com/index.php/702/mismatch-between-expected-dependencies-dependency-conflicts Which then goes and tell me that the overridden deps returned by push are not correct and can be ignored? So I am a bit confused right now looking for some clarification and tips. The project itself was just to play around so I am just happy it works but for future projects I would like to understand things a bit better: Does the push hard override some deps or not? Are the deps-clonflicts returned by ion-dev/push correct or not? Where do I see the current version of the things running in the cloud? Does this make me unable to use libs that require newer versions e.g. pedestal 8.0 requiring jackson 2.18. ? If no how could I resolve the dependecy issues properly? Or even better: How do I avoid running into these conflicts in the first place? Any insight or RTFM links would be much appreciated.

2025-07-08T17:47:50.456289Z

Is it possible to deploy Ions instances using Graviton type processors in AWS?

Joe Lane 2025-07-08T18:14:22.170679Z

It currently isn't but could be, can you say more about your interest in Graviton?

2025-07-08T18:15:43.382239Z

just to reduce some prices at all.

2025-07-08T18:15:57.701479Z

for some small ions that I have

2025-07-08T18:16:24.709239Z

i don't think should be that complex the change for the JVM that supports Arm processors (?)

souenzzo 2025-07-08T18:23:29.302109Z

I'm using datomic on-prem on graviton instances for years now

👍 1
Joe Lane 2025-07-08T20:12:37.503599Z

Got it, cost concerns, not something else. 👍

👍 1