ucsd-progsys / liquidhaskell

Liquid Types For Haskell
BSD 3-Clause "New" or "Revised" License
1.2k stars 139 forks source link

Could not resolve dependencies #2437

Open Archaversine opened 1 week ago

Archaversine commented 1 week ago

I'm trying to add liquidhaskell to my cabal project, but I keep encountering this error.

I am on Windows 10, using GHC 9.10.1 with liquidhaskell-0.9.10.1. This is the error:

Resolving dependencies...
Error: cabal-3.10.3.0.exe: Could not resolve dependencies:
[__0] trying: testing-0.1.0.0 (user goal)
[__1] trying: liquidhaskell-0.9.10.1 (dependency of testing)
[__2] trying: liquidhaskell-boot-0.9.10.1 (dependency of liquidhaskell)
[__3] trying: vector-0.13.2.0 (dependency of liquidhaskell-boot)
[__4] trying: time-1.12.2/installed-3ed5 (dependency of liquidhaskell-boot)
[__5] trying: Win32-2.14.0.0/installed-c36f (dependency of time)
[__6] trying: os-string-2.0.2/installed-2d4c (dependency of Win32)
[__7] trying: liquid-fixpoint-0.9.6.3.1 (dependency of liquidhaskell-boot)
[__8] next goal: store (dependency of liquid-fixpoint)
[__8] rejecting: store-0.7.18 (conflict: vector==0.13.2.0, store =>
vector>=0.10.12.3 && <0.13.2.0)
[__8] skipping: store-0.7.17, store-0.7.16, store-0.7.15, store-0.7.14,
store-0.7.13, store-0.7.12 (has the same characteristics that caused the
previous version to fail: excludes 'vector' version 0.13.2.0)
[__8] rejecting: store-0.7.11, store-0.7.10, store-0.7.9, store-0.7.8,
store-0.7.7, store-0.7.6, store-0.7.5, store-0.7.4, store-0.7.2, store-0.7.1,
store-0.7.0, store-0.6.1, store-0.6.0.1, store-0.6.0 (conflict: time =>
base==4.20.0.0/installed-30dc, store => base>=4.7 && <4.15)
[__8] rejecting: store-0.5.1.2, store-0.5.1.1 (conflict: os-string =>
template-haskell==2.22.0.0/installed-06d3, store => template-haskell>=2.9.0.0
&& <2.15)
[__8] rejecting: store-0.5.1.0 (conflict: os-string =>
template-haskell==2.22.0.0/installed-06d3, store => template-haskell>=2.11.0.0
&& <2.15)
[__8] rejecting: store-0.5.0.1, store-0.5.0, store-0.4.3.2 (conflict:
os-string => template-haskell==2.22.0.0/installed-06d3, store =>
template-haskell>=2.9.0.0 && <2.15)
[__8] rejecting: store-0.4.3.1 (conflict: time =>
base==4.20.0.0/installed-30dc, store => base>=4.7 && <4.10)
[__8] rejecting: store-0.4.3 (conflict: time => base==4.20.0.0/installed-30dc,
store => base>=4.8 && <4.10)
[__8] rejecting: store-0.4.2, store-0.4.1, store-0.3.1, store-0.3,
store-0.2.1.2, store-0.2.1.1, store-0.2.1.0, store-0.2.0.0, store-0.1.0.1
(conflict: time => base==4.20.0.0/installed-30dc, store => base>=4.7 && <4.10)
[__8] rejecting: store-0.1.0.0 (conflict: time =>
base==4.20.0.0/installed-30dc, store => base>=4.8 && <4.9)
[__8] rejecting: store-0.7.3 (conflict: time => base==4.20.0.0/installed-30dc,
store => base>=4.7 && <4.15)
[__8] rejecting: store-0.4.0 (conflict: time => base==4.20.0.0/installed-30dc,
store => base>=4.7 && <4.10)
[__8] fail (backjumping, conflict set: liquid-fixpoint, os-string, store,
time, vector)
Backjump limit reached (currently 4000, change with --max-backjumps or try to
run with --reorder-goals).

I have tried --allow-newer=*:vector, --allow-newer=store, and --allow-newer, but none of these seem to fix the problem. I'm not sure what else to try.

facundominguez commented 1 week ago

Hello @Archaversine. What's the error like with --constraint="vector<0.13.2.0"?

Archaversine commented 1 week ago

This is the error with --constraint="vector<0.13.2.0":

Resolving dependencies...
Error: cabal-3.10.3.0.exe: Could not resolve dependencies:
[__0] trying: testing-0.1.0.0 (user goal)
[__1] trying: liquidhaskell-0.9.10.1 (dependency of testing)
[__2] trying: liquidhaskell:setup.liquidhaskell-boot-0.9.10.1 (dependency of
liquidhaskell)
[__3] next goal: liquidhaskell:setup.Cabal (dependency of liquidhaskell)    
[__3] rejecting: liquidhaskell:setup.Cabal-3.12.0.0/installed-bab6,
liquidhaskell:setup.Cabal-3.14.0.0, liquidhaskell:setup.Cabal-3.12.1.0,     
liquidhaskell:setup.Cabal-3.12.0.0 (constraint from maximum version of Cabal
used by Setup.hs requires <3.12)
[__3] trying: liquidhaskell:setup.Cabal-3.10.3.0
[__4] trying:
liquidhaskell-boot~>liquidhaskell:setup.liquidhaskell-boot-0.9.10.1
(dependency of liquidhaskell)
[__5] trying: Cabal~>liquidhaskell:setup.Cabal-3.10.3.0 (dependency of
liquidhaskell-boot)
[__6] trying: process-1.6.19.0/installed-a68a (dependency of Cabal)
[__7] trying: parsec-3.1.17.0/installed-9e44 (dependency of Cabal)
[__8] trying: array-0.5.7.0/installed-9340 (dependency of Cabal)
[__9] trying: Win32-2.14.0.0/installed-c36f (dependency of Cabal)
[_10] trying: os-string-2.0.2/installed-2d4c (dependency of Win32)
[_11] next goal: Cabal-syntax (dependency of Cabal)
[_11] rejecting: Cabal-syntax-3.12.0.0/installed-cfbf (conflict: Cabal =>
Cabal-syntax^>=3.10)
[_11] skipping: Cabal-syntax-3.14.0.0, Cabal-syntax-3.12.1.0,
Cabal-syntax-3.12.0.0 (has the same characteristics that caused the previous
version to fail: excluded by constraint '^>=3.10' from 'Cabal')
[_11] rejecting: Cabal-syntax-3.10.3.0, Cabal-syntax-3.10.2.0,
Cabal-syntax-3.10.1.0 (conflict: process => Win32==2.14.0.0/installed-c36f,
Cabal-syntax => Win32>=2.3.0.0 && <2.14)
[_11] rejecting: Cabal-syntax-3.8.1.0 (conflict: Cabal => Cabal-syntax^>=3.10)
[_11] skipping: Cabal-syntax-3.6.0.0 (has the same characteristics that caused
the previous version to fail: excluded by constraint '^>=3.10' from 'Cabal')
[_11] fail (backjumping, conflict set: Cabal, Cabal-syntax, process)
Backjump limit reached (currently 4000, change with --max-backjumps or try to
run with --reorder-goals).
facundominguez commented 1 week ago
[__3] rejecting: liquidhaskell:setup.Cabal-3.12.0.0/installed-bab6,
liquidhaskell:setup.Cabal-3.14.0.0, liquidhaskell:setup.Cabal-3.12.1.0,     
liquidhaskell:setup.Cabal-3.12.0.0 (constraint from maximum version of Cabal
used by Setup.hs requires <3.12)
...
[_11] rejecting: Cabal-syntax-3.10.3.0, Cabal-syntax-3.10.2.0,
Cabal-syntax-3.10.1.0 (conflict: process => Win32==2.14.0.0/installed-c36f,
Cabal-syntax => Win32>=2.3.0.0 && <2.14)

These lines makes it seem like an incompatibility between the installed version of Win32 and the version of cabal-install. Perhaps using cabal-install-3.12.1.0 doesn't have this problem.