digestive-functors icon indicating copy to clipboard operation
digestive-functors copied to clipboard

Happstack 7.3.0

Open Matthiasvanderhallen opened this issue 10 years ago • 4 comments

Tutorial.lhs shows this to be incompatible with the newest Happstack version. (7.3.0)

Matthiasvanderhallen avatar Nov 30 '13 19:11 Matthiasvanderhallen

The latest Happstack version on Hackage seems to be 7.0.1. Is this an unstable or preview release of some sorts?

jaspervdj avatar Dec 05 '13 10:12 jaspervdj

No, I'm sorry. :) It was simply the installation documentation on http://happstack.com/page/view-page-slug/2/download which suggested cabal install happstack-server which would install happstack-server-7.3.0 (Which comes included in the Haskell Platform anyway)

Matthiasvanderhallen avatar Dec 05 '13 10:12 Matthiasvanderhallen

Still, examples/tutorial.lhs seems to compile fine with the latest happstack-server. Could you give some more details on the failure?

jaspervdj avatar Dec 05 '13 11:12 jaspervdj

Yes, of course, my bad, I should have included it in the initial issue message. This is the error as long as I don't explicitly specify -package happstack-server-7.1.7.1. And I get the same error in a fresh install of the ghc platform, without happstack and happstack-server-7.1.7.1, and only happstack-server-7.3.1.

tutorial.lhs:208:12:
    No instance for (happstack-server-7.1.7.1:Happstack.Server.RqData.HasRqData
                       (Happstack.ServerPartT IO))
      arising from a use of `runForm'
    Possible fix:
      add an instance declaration for
      (happstack-server-7.1.7.1:Happstack.Server.RqData.HasRqData
         (Happstack.ServerPartT IO))
    In a stmt of a 'do' block: r <- runForm "test" releaseForm
    In the expression:
      do { Happstack.decodeBody
           $ Happstack.defaultBodyPolicy "/tmp" 4096 4096 4096;
           r <- runForm "test" releaseForm;
           case r of {
             (view, Nothing) -> do { ... }
             (_, Just release)
               -> Happstack.ok $ Happstack.toResponse $ template $ do { ... } } }
    In an equation for `site':
        site
          = do { Happstack.decodeBody
                 $ Happstack.defaultBodyPolicy "/tmp" 4096 4096 4096;
                 r <- runForm "test" releaseForm;
                 case r of {
                   (view, Nothing) -> ...
                   (_, Just release)
                     -> Happstack.ok $ Happstack.toResponse $ template $ ... } }

Matthiasvanderhallen avatar Dec 05 '13 13:12 Matthiasvanderhallen