~alcinnz/rhapsode#1: 
Could not build on GHC 9.4

I cannot build Rhapsode on GHC 9.4.7 on my Alpine Linux machine. There appears to be a conflict between aeson-1.5 and newer GHC versions.

$ cabal run Resolving dependencies... Error: cabal: Could not resolve dependencies: [__0] trying: rhapsode-0.5.0.0 (user goal) [__1] trying: base-4.17.2.0/installed-4.17.2.0 (dependency of rhapsode) [__2] next goal: aeson (dependency of rhapsode) [__2] rejecting: aeson-2.2.1.0 (conflict: rhapsode => aeson>=1.5 && <1.6) [__2] skipping: aeson-2.2.0.0, aeson-2.1.2.1, aeson-2.1.2.0, aeson-2.1.1.0, aeson-2.1.0.0, aeson-2.0.3.0, aeson-2.0.2.0, aeson-2.0.1.0, aeson-2.0.0.0 (has the same characteristics that caused the previous version to fail: excluded by constraint '>=1.5 && <1.6' from 'rhapsode') [__2] rejecting: aeson-1.5.6.0, aeson-1.5.5.1 (conflict: base => ghc-prim==0.9.1/installed-0.9.1, aeson => ghc-prim>=0.2 && <0.8) [__2] rejecting: aeson-1.5.5.0 (conflict: base==4.17.2.0/installed-4.17.2.0, aeson => base(>=4.7.0.0 && <5) && <0) [__2] rejecting: aeson-1.5.4.1, aeson-1.5.4.0 (conflict: base => ghc-prim==0.9.1/installed-0.9.1, aeson => ghc-prim>=0.2 && <0.8) [__2] rejecting: aeson-1.5.3.0, aeson-1.5.2.0, aeson-1.5.1.0, aeson-1.5.0.0 (conflict: base => ghc-prim==0.9.1/installed-0.9.1, aeson => ghc-prim>=0.2 && <0.7) [__2] rejecting: aeson-1.4.7.1 (conflict: rhapsode => aeson>=1.5 && <1.6) [__2] skipping: aeson-1.4.7.0, aeson-1.4.6.0, aeson-1.4.5.0, aeson-1.4.4.0, aeson-1.4.3.0, aeson-1.4.2.0, aeson-1.4.1.0, aeson-1.4.0.0, aeson-1.3.1.1, aeson-1.3.1.0, aeson-1.3.0.0, aeson-1.2.4.0, aeson-1.2.3.0, aeson-1.2.2.0, aeson-1.2.1.0, aeson-1.2.0.0, aeson-1.1.2.0, aeson-1.1.1.0, aeson-1.1.0.0, aeson-1.0.2.1, aeson-1.0.2.0, aeson-1.0.1.0, aeson-1.0.0.0, aeson-0.11.3.0, aeson-0.11.2.1, aeson-0.11.2.0, aeson-0.11.1.4, aeson-0.11.1.3, aeson-0.11.1.2, aeson-0.11.1.1, aeson-0.11.1.0, aeson-0.11.0.0, aeson-0.9.0.1, aeson-0.9.0.0, aeson-0.8.1.1, aeson-0.8.1.0, aeson-0.8.0.2, aeson-0.7.0.6, aeson-0.7.0.4, aeson-0.6.2.1, aeson-0.6.2.0, aeson-0.6.1.0, aeson-0.6.0.2, aeson-0.6.0.1, aeson-0.6.0.0, aeson-0.5.0.0, aeson-0.4.0.1, aeson-0.4.0.0, aeson-0.3.2.14, aeson-0.3.2.13, aeson-0.3.2.12, aeson-0.3.2.11, aeson-0.3.2.10, aeson-0.3.2.9, aeson-0.3.2.8, aeson-0.3.2.7, aeson-0.3.2.6, aeson-0.3.2.5, aeson-0.3.2.4, aeson-0.3.2.3, aeson-0.3.2.2, aeson-0.3.2.1, aeson-0.3.2.0, aeson-0.3.1.1, aeson-0.3.1.0, aeson-0.3.0.0, aeson-0.2.0.0, aeson-0.1.0.0, aeson-0.10.0.0, aeson-0.8.0.1, aeson-0.8.0.0, aeson-0.7.0.5, aeson-0.7.0.3, aeson-0.7.0.2, aeson-0.7.0.1, aeson-0.7.0.0 (has the same characteristics that caused the previous version to fail: excluded by constraint '>=1.5 && <1.6' from 'rhapsode') [__2] fail (backjumping, conflict set: aeson, base, rhapsode) After searching the rest of the dependency tree exhaustively, these were the goals I've had most trouble fulfilling: aeson, rhapsode, base

Status
RESOLVED CLOSED
Submitter
Athena Martin
Assigned to
No-one
Submitted
6 months ago
Updated
6 months ago
Labels
No labels applied.

~alcinnz 6 months ago

Most recently I was testing on GHC 9.2.8, and but I'm now testing on 9.4.1. Neither of which is working with Rhapsode.

It turns out that bumping version numbers requires some minor code changes, including a change to how we look up JSON properties (Rhapsode receives JSON from Voice2JSON). I'm currently looking up the new API...

~alcinnz 6 months ago

I've updated my code to depend on Aeson >= 2.0.

Please see if building the latest code works for you now? With the minor fixes I've just published, it now works for me. It didn't before.

Athena Martin 6 months ago · edit

I've just started a build; dependencies resolved fine, so this problem seems fixed. There might be other issues but they'll probably be to do with my OS. If I do find something else in Rhapsode I'll start a separate ticket.

~alcinnz REPORTED CLOSED 6 months ago

Cool!

Register here or Log in to comment, or comment via email.