Skip to content

Troubles compiling pulp #13

Description

@catalin-hritcu

I'm having troubles compiling pulp on my Arch Linux machine:

[pulp]$ cabal install .
cabal: Could not resolve dependencies:
[__0] trying: pulp-0.0 (user goal)
[__1] next goal: regex-posix (dependency of pulp)
[__1] rejecting: regex-posix-0.96.0.0 (conflict: pulp => regex-posix>=0.95 &&
<0.96)
[__1] trying: regex-posix-0.95.2
[__2] next goal: base (dependency of pulp)
[__2] rejecting: base-4.13.0.0/installed-4.13.0.0 (conflict: regex-posix
+/-newbase +/-splitbase => base<4.13)
[__2] rejecting: base-4.12.0.0, base-4.11.1.0, base-4.11.0.0, base-4.10.1.0,
base-4.10.0.0, base-4.9.1.0, base-4.9.0.0, base-4.8.2.0, base-4.8.1.0,
base-4.8.0.0, base-4.7.0.2, base-4.7.0.1, base-4.7.0.0, base-4.6.0.1,
base-4.6.0.0, base-4.5.1.0, base-4.5.0.0, base-4.4.1.0, base-4.4.0.0,
base-4.3.1.0, base-4.3.0.0, base-4.2.0.2, base-4.2.0.1, base-4.2.0.0,
base-4.1.0.0, base-4.0.0.0, base-3.0.3.2, base-3.0.3.1 (constraint from
non-upgradeable package requires installed instance)
[__2] fail (backjumping, conflict set: base, pulp, regex-posix)
After searching the rest of the dependency tree exhaustively, these were the
goals I've had most trouble fulfilling: base, pulp, regex-posix

Versions of regex-posix <0.96 have a bound on base <4.13, but the GHC I got in both cases is version 8.8.3 and base-4.13.0.0.

Tried removing the regex-posix <0.96 bound, but then things fail:

bin/Config.hs:318:9: error:
    • No instance for (MonadFail (Either [String]))
        arising from a do statement
        with the failable pattern ‘Regex r’
    • In a stmt of a 'do' block: Regex r <- satisfy "a regex" isRegex
      In the expression:
        do Regex r <- satisfy "a regex" isRegex
           return . Atom . f $ r
      In an equation for ‘regex’:
          regex f
            = do Regex r <- satisfy "a regex" isRegex
                 return . Atom . f $ r
    |
318 |         Regex r <- satisfy "a regex" isRegex
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

So I tried downgrading GHC to 8.6.1 (from Sept 2018), thus base 4.12.

ghcup install 8.6.1
ghcup set 8.6.1

However, even this doesn't seem enough. This installs regex-posix-0.95.2, which causes the build of pulp to fail in the same way as 0.96.0.0:

[pulp]$ cabal install .
[...]
Completed    regex-posix-0.95.2 (all, legacy fallback)
[...]
bin/Config.hs:318:9: error:
    • No instance for (Control.Monad.Fail.MonadFail (Either [String]))
        arising from a do statement
        with the failable pattern ‘Regex r’
    • In a stmt of a 'do' block: Regex r <- satisfy "a regex" isRegex
      In the expression:
        do Regex r <- satisfy "a regex" isRegex
           return . Atom . f $ r
      In an equation for ‘regex’:
          regex f
            = do Regex r <- satisfy "a regex" isRegex
                 return . Atom . f $ r
    |
318 |         Regex r <- satisfy "a regex" isRegex
    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Unfortunately regex-posix-0.95.1 would require base<4.6, so GHC 7.4.2 (Jun 2012). There's no way I can still go back so much back in time, sorry.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions