agocorona / MFlow

(Haskell) Web application server with stateful, type safe user interactions and widget combinators
http://mflowdemo.herokuapp.com
Other
100 stars 12 forks source link

can't install with demos-blaze #27

Open juhp opened 10 years ago

juhp commented 10 years ago

I would like to try MFlow but I am having real trouble building it with either ghc 7.6.3 or 7.8.2.

Strictly this may not be MFlow's fault but I suspect adding some (minimal) version bounds on the build-depends would probably help to make the build more robust wrt dep variations in Hackage.

Can someone who has successfully built MFlow recently maybe share the package-version set of dependencies it successfully built with?

Alternatively we could try to have a MFlow-platform.cabal file with explicit/exact versions of dependencies (like yesod-platform) to help with this dependency hell issue.

Here is what I am seeing for example when trying to cabal install current git:

cabal: Could not resolve dependencies:
trying: MFlow-0.4.4
trying: monad-logger-0.3.1.1/installed-d56...
trying: fast-logger-0.3.1/installed-19d...
trying: warp-tls-2.0.4
rejecting: warp-1.3.8.2/installed-97a... (conflict: warp-tls => warp>=2.1.4 &&
<2.2)
rejecting: warp-2.1.4.1, 2.1.4 (conflict: fast-logger =>
blaze-builder==0.3.1.1/installed-71a..., warp => blaze-builder>=0.3.3 && <0.4)
rejecting: warp-2.1.3.3, 2.1.3.2, 2.1.3.1, 2.1.3, 2.1.2.1, 2.1.2, 2.1.1.2,
2.1.1.1, 2.1.1, 2.1.0, 2.0.3.4, 2.0.3.3, 2.0.3.2, 2.0.3.1, 2.0.3, 2.0.2.1,
2.0.2, 2.0.1, 2.0.0.1, 2.0.0, 1.3.10.2, 1.3.10.1, 1.3.10, 1.3.9.2, 1.3.9.1,
1.3.9, 1.3.8.4, 1.3.8.3, 1.3.8.2, 1.3.8.1, 1.3.8, 1.3.7.5, 1.3.7.4, 1.3.7.3,
1.3.7.2, 1.3.7.1, 1.3.7, 1.3.6, 1.3.5.1, 1.3.5, 1.3.4.4, 1.3.4.3, 1.3.4.2,
1.3.4.1, 1.3.4, 1.3.3.3, 1.3.3.2, 1.3.3.1, 1.3.3, 1.3.2, 1.3.1.2, 1.3.1.1,
1.3.1, 1.3.0.1, 1.3.0, 1.2.2, 1.2.1.1, 1.2.1, 1.2.0.2, 1.2.0.1, 1.2.0,
1.1.0.1, 1.1.0, 1.0.0.1, 1.0.0, 0.4.6.3, 0.4.6.2, 0.4.6.1, 0.4.6, 0.4.5,
0.4.4, 0.4.3.1, 0.4.3, 0.4.2, 0.4.1.2, 0.4.1.1, 0.4.1, 0.4.0.1, 0.4.0, 0.3.3,
0.3.2.3, 0.3.2.2, 0.3.2.1, 0.3.2, 0.3.1, 0.3.0 (conflict: warp-tls =>
warp>=2.1.4 && <2.2)
juhp commented 10 years ago

Okay, banging my head a bit harder ;) I managed finally to cabal-dev install MFlow-0.4.4 and MFlow.git. I had to patch tls-1.2.3.

The reason current git is harder to build is that demos-blaze is enabled there, which pulls in more deps. So I think I will rename this report to "can't build demos-blaze".

agocorona commented 10 years ago

Juhp Thanks. Yep. tls add a lot of new dependencies but it is necessary. The warp people are modifying their libraries too fast and this is a source of dependency problems. The transition to GHC 7.8 is also a problem.

We will try to make it as easy as possible without making people crazy.

This is the list of versions in my installed MFlow package: GHC-7.6.3 depends: RefSerialize-0.3.1.0 TCache-0.11.0.0 Workflow-0.8.0.8 base-4.6.0.1 blaze-html-0.6.1.2 blaze-markup-0.5.1.6 bytestring-0.10.0.2 case-insensitive-1.0.0.1 clientsession-0.9.0.3 conduit-1.0.9.3 containers-0.5.0.0 directory-1.2.0.1 extensible-exceptions-0.1.1.4 http-types-0.8.3 monadloc-0.7.1 mtl-2.1.2 old-time-1.1.0.1 parsec-3.1.3 random-1.0.1.1 stm-2.4.2 text-0.11.3.1 transformers-0.3.0.0 utf8-string-0.3.7 vector-0.10.0.1 wai-2.1.0 warp-2.1.1 warp-tls-2.0.3.1

juhp commented 10 years ago

Okay thanks for that

juhp commented 10 years ago

Okay changed title of the issue. :) but feel free to change/revert it as appropriate of course.

agocorona commented 10 years ago

I probably will create some alternate cabal files with fixed dependencies as you suggested.

juhp commented 10 years ago

BTW actually after I followed http://mflowdemo.herokuapp.com/noscript/wiki/howtoinstall things worked out ok for me, but it would still be nice if one could install the demo from .cabal perhaps.

agocorona commented 10 years ago

It is possible for GHC <= 7.7

But there is a severe incomparibility in the Typeable class across this frontier. The old Typeable is erased beyond 7.7.

We are trying to make it transparent, but it is not easy. Any solution demand an edition of something. either the source code, the cabal file or whatever.

2014-04-25 11:05 GMT+02:00, Jens Petersen notifications@github.com:

BTW actually after I followed http://mflowdemo.herokuapp.com/noscript/wiki/howtoinstall things worked out ok for me, but it would still be nice if one could install the demo from .cabal perhaps.


Reply to this email directly or view it on GitHub: https://github.com/agocorona/MFlow/issues/27#issuecomment-41372672

Alberto.