On Mon, Apr 6, 2015 at 5:22 AM, Matthias Pronk <
mas...@gmail.com> wrote:
> Hi all,
>
> After working my way through RWH, I would like to try if I'm able to use
> Haskell to build some more real world applications. So, I've decided to try
> to build a web application using Snap.
>
> However, I already get in "Cabal hell" when I try to combine some libraries,
> notably:
> Snap 0.9.5.0, snaplet-persistent, persistent-postgresql and
> digestive-functors{-snap,-heist}.
>
> Using a Cabal sandbox with Stackage, Cabal tells me that it could not
> resolve the dependencies and that the dependency tree has been exhaustively
> searched (GHC 7.10.1 and Cabal 1.22.2.0, but I've also tried GHC 7.8.3
> first). Using a Cabal sandbox without Stackage, Cabal tells me the backjump
> limit has been reached (when trying to install dependency
> digestive-functors-heist).
>
> I've tried a Cabal sandbox, Stackage, Nix (which I couldn't get to work) and
> the Haskell Docker instance all with various versions of GHC and Cabal.
>
> Either, I'm doing something wrong, or these libraries are not often used
> together.
It's not that they're not often used together. It's more about the
fact that the ecosystem is fast-moving. There are a number of what I
would call "core" libraries that will usually be updated quite
promptly. But there are a number of other "satellite" libraries that
tend to be updated lazily.
> What should I do to resolve these kind of problems?
First of all, we need more detailed information about precisely what
you did and what error you are encountering. Did you use the "snap
init" template application? Did you install snap first? Did you use
a sandbox? What OS and GHC versions are you using? Etc etc...
> How are the Snap people doing their development?
> Which kind of libraries are recommended?
> Should I ask package maintainers to up the version bounds?
Absolutely. Speaking for myself, it's difficult to keep track of all
the libraries I maintain, so issues notifying me of problems--or
better yet, pull requests--are always welcome.
> But, which package has the most restrictive boundaries? How do I find this
> out?
When I run into dependency problems that are not obvious, one of the
first things I usually do is build with "cabal install -v3". This
usually points me to the root of the problem much more quickly.
> Thank you for your time.
>
> Kind regards,
> - Matthias
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "Snap Framework" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to
snap_framewor...@googlegroups.com.
> For more options, visit
https://groups.google.com/d/optout.