Build #6 for hails-0.11.1.1

[all reports]

Package hails-0.11.1.1
Install BuildFailed
Docs NotTried
Tests NotTried
Time submitted 2016-12-15 18:08:32.560584 UTC
Compiler ghc-8.0.1.20161018
OS linux
Arch x86_64
Dependencies SHA-1.6.4.2, authenticate-1.3.3.2, base-4.9.0.0, base64-bytestring-1.0.0.1, binary-0.8.3.0, blaze-builder-0.4.0.2, bson-0.3.2.3, bytestring-0.10.8.1, conduit-1.2.8, containers-0.5.7.1, cookie-0.4.2.1, exceptions-0.8.3, failure-0.2.0.3, http-conduit-2.2.3, http-types-0.9.1, lio-0.11.6.0, mongoDB-2.1.1.1, mtl-2.2.1, network-2.6.3.1, parsec-3.1.11, resourcet-1.1.8.1, text-1.2.2.1, time-1.6.0.1, transformers-0.5.2.0, wai-3.2.1.1, wai-app-static-3.1.6.1, wai-extra-3.0.19, SHA-1.6.4.2, authenticate-1.3.3.2, base-4.9.0.0, base64-bytestring-1.0.0.1, binary-0.8.3.0, blaze-builder-0.4.0.2, bson-0.3.2.3, bytestring-0.10.8.1, conduit-1.2.8, containers-0.5.7.1, cookie-0.4.2.1, directory-1.2.6.2, exceptions-0.8.3, filepath-1.4.1.0, ghc-paths-0.1.0.9, hint-0.6.0, http-conduit-2.2.3, http-types-0.9.1, lio-0.11.6.0, mongoDB-2.1.1.1, mtl-2.2.1, network-2.6.3.1, parsec-3.1.11, resourcet-1.1.8.1, text-1.2.2.1, time-1.6.0.1, transformers-0.5.2.0, unix-2.7.2.0, wai-3.2.1.1, wai-app-static-3.1.6.1, wai-extra-3.0.19, warp-3.2.9
Flags none

Code Coverage

No Code Coverage was submitted for this report.

Build log

[view raw]

Resolving dependencies...
Configuring ansi-terminal-0.6.2.3...
Configuring SHA-1.6.4.2...
Building ansi-terminal-0.6.2.3...
Building SHA-1.6.4.2...
Installed ansi-terminal-0.6.2.3
Configuring appar-0.1.4...
Building appar-0.1.4...
Installed appar-0.1.4
Configuring auto-update-0.1.4...
Building auto-update-0.1.4...
Installed auto-update-0.1.4
Configuring base-compat-0.9.1...
Building base-compat-0.9.1...
Configuring base16-bytestring-0.1.1.6...
Installed SHA-1.6.4.2
Building base16-bytestring-0.1.1.6...
Configuring byteable-0.1.1...
Installed base-compat-0.9.1
Configuring base64-bytestring-1.0.0.1...
Installed base16-bytestring-0.1.1.6
Building byteable-0.1.1...
Building base64-bytestring-1.0.0.1...
Configuring bytestring-builder-0.10.8.1.0...
Installed byteable-0.1.1
Building bytestring-builder-0.10.8.1.0...
Configuring byteorder-1.0.4...
Installed bytestring-builder-0.10.8.1.0
Configuring cereal-0.5.4.0...
Installed base64-bytestring-1.0.0.1
Building byteorder-1.0.4...
Building cereal-0.5.4.0...
Configuring data-default-class-0.1.2.0...
Installed byteorder-1.0.4
Building data-default-class-0.1.2.0...
Configuring data-binary-ieee754-0.4.4...
Installed data-default-class-0.1.2.0
Building data-binary-ieee754-0.4.4...
Configuring easy-file-0.2.1...
Installed data-binary-ieee754-0.4.4
Configuring dlist-0.8.0.2...
Installed cereal-0.5.4.0
Building easy-file-0.2.1...
Building dlist-0.8.0.2...
Configuring failure-0.2.0.3...
Installed easy-file-0.2.1
Building failure-0.2.0.3...
Configuring file-embed-0.0.10...
Installed dlist-0.8.0.2
Building file-embed-0.0.10...
Configuring ghc-paths-0.1.0.9...
Installed failure-0.2.0.3
Configuring memory-0.13...
Installed file-embed-0.0.10
Building memory-0.13...
Building ghc-paths-0.1.0.9...
Configuring hourglass-0.2.10...
Installed ghc-paths-0.1.0.9
Building hourglass-0.2.10...
Configuring network-2.6.3.1...
Installed memory-0.13
Building network-2.6.3.1...
Configuring mtl-2.2.1...
Installed hourglass-0.2.10
Building mtl-2.2.1...
Configuring old-locale-1.0.0.7...
Installed mtl-2.2.1
Building old-locale-1.0.0.7...
Configuring primitive-0.6.1.0...
Installed network-2.6.3.1
Configuring random-1.1...
Installed old-locale-1.0.0.7
Building primitive-0.6.1.0...
Building random-1.1...
Configuring stm-2.4.4.1...
Installed random-1.1
Building stm-2.4.4.1...
Configuring semigroups-0.18.2...
Installed primitive-0.6.1.0
Building semigroups-0.18.2...
Configuring stringsearch-0.3.6.6...
Installed semigroups-0.18.2
Configuring time-locale-compat-0.1.1.3...
Installed stm-2.4.4.1
Building stringsearch-0.3.6.6...
Building time-locale-compat-0.1.1.3...
Configuring text-1.2.2.1...
Installed time-locale-compat-0.1.1.3
Building text-1.2.2.1...
Configuring transformers-compat-0.5.1.4...
Installed stringsearch-0.3.6.6
Building transformers-compat-0.5.1.4...
Configuring word8-0.1.2...
Installed transformers-compat-0.5.1.4
Building word8-0.1.2...
Configuring unix-compat-0.4.3.1...
Installed word8-0.1.2
Building unix-compat-0.4.3.1...
Configuring zlib-0.6.1.2...
Installed unix-compat-0.4.3.1
Building zlib-0.6.1.2...
Configuring ansi-wl-pprint-0.6.7.3...
Installed zlib-0.6.1.2
Building ansi-wl-pprint-0.6.7.3...
Installed text-1.2.2.1
Configuring data-default-instances-containers-0.0.1...
Building data-default-instances-containers-0.0.1...
Configuring data-default-instances-dlist-0.0.1...
Installed data-default-instances-containers-0.0.1
Installed ansi-wl-pprint-0.6.7.3
Configuring securemem-0.1.9...
Building data-default-instances-dlist-0.0.1...
Building securemem-0.1.9...
Configuring cryptonite-0.20...
Installed data-default-instances-dlist-0.0.1
Building cryptonite-0.20...
Configuring pem-0.2.2...
Installed securemem-0.1.9
Building pem-0.2.2...
Configuring asn1-types-0.3.2...
Installed pem-0.2.2
Building asn1-types-0.3.2...
Configuring iproute-1.7.1...
Installed asn1-types-0.3.2
Building iproute-1.7.1...
Configuring simple-sendfile-0.2.25...
Installed iproute-1.7.1
Building simple-sendfile-0.2.25...
Configuring socks-0.5.5...
Installed simple-sendfile-0.2.25
Building socks-0.5.5...
Configuring old-time-1.1.0.3...
Installed socks-0.5.5
Building old-time-1.1.0.3...
Configuring data-default-instances-old-locale-0.0.1...
Installed old-time-1.1.0.3
Building data-default-instances-old-locale-0.0.1...
Configuring async-2.1.1...
Installed data-default-instances-old-locale-0.0.1
Building async-2.1.1...
Configuring vector-0.11.0.0...
Installed async-2.1.1
Building vector-0.11.0.0...
Configuring exceptions-0.8.3...
Installed cryptonite-0.20
Building exceptions-0.8.3...
Configuring MonadRandom-0.4.2.3...
Installed exceptions-0.8.3
Building MonadRandom-0.4.2.3...
Configuring mmorph-1.0.9...
Installed MonadRandom-0.4.2.3
Building mmorph-1.0.9...
Configuring tagged-0.8.5...
Installed mmorph-1.0.9
Building tagged-0.8.5...
Configuring transformers-base-0.4.4...
Installed tagged-0.8.5
Building transformers-base-0.4.4...
Installed transformers-base-0.4.4
Configuring blaze-builder-0.4.0.2...
Building blaze-builder-0.4.0.2...
Configuring hashable-1.2.4.0...
Installed vector-0.11.0.0
Configuring mime-types-0.1.0.7...
Installed blaze-builder-0.4.0.2
Building hashable-1.2.4.0...
Building mime-types-0.1.0.7...
Configuring parsec-3.1.11...
Installed hashable-1.2.4.0
Building parsec-3.1.11...
Configuring xml-types-0.3.6...
Installed mime-types-0.1.0.7
Building xml-types-0.3.6...
Installed parsec-3.1.11
Configuring optparse-applicative-0.13.0.0...
Building optparse-applicative-0.13.0.0...
Installed xml-types-0.3.6
Configuring asn1-encoding-0.9.4...
Building asn1-encoding-0.9.4...
Configuring crypto-cipher-types-0.0.9...
Installed asn1-encoding-0.9.4
Building crypto-cipher-types-0.0.9...
Configuring unix-time-0.3.7...
Installed optparse-applicative-0.13.0.0
Building unix-time-0.3.7...
Configuring data-default-0.7.1.1...
Installed crypto-cipher-types-0.0.9
Building data-default-0.7.1.1...
Configuring hint-0.6.0...
Installed unix-time-0.3.7
Configuring cryptohash-0.11.9...
Installed data-default-0.7.1.1
Building hint-0.6.0...
Building cryptohash-0.11.9...
Configuring random-shuffle-0.0.4...
Installed cryptohash-0.11.9
Building random-shuffle-0.0.4...
Configuring monad-control-1.0.1.0...
Installed random-shuffle-0.0.4
Building monad-control-1.0.1.0...
Configuring crypto-random-0.0.9...
Installed hint-0.6.0
Configuring blaze-markup-0.7.1.1...
Installed monad-control-1.0.1.0
Building crypto-random-0.0.9...
Building blaze-markup-0.7.1.1...
Configuring cookie-0.4.2.1...
Installed crypto-random-0.0.9
Configuring streaming-commons-0.1.16...
Installed blaze-markup-0.7.1.1
Building cookie-0.4.2.1...
Building streaming-commons-0.1.16...
Configuring case-insensitive-1.2.0.7...
Installed cookie-0.4.2.1
Building case-insensitive-1.2.0.7...
Configuring hashtables-1.2.1.0...
Installed case-insensitive-1.2.0.7
Building hashtables-1.2.1.0...
Configuring lio-0.11.6.0...
Installed streaming-commons-0.1.16
Building lio-0.11.6.0...
Configuring psqueues-0.2.2.3...
Installed hashtables-1.2.1.0
Building psqueues-0.2.2.3...
Configuring scientific-0.3.4.9...
Installed lio-0.11.6.0
Building scientific-0.3.4.9...
Configuring unordered-containers-0.2.7.1...
Installed psqueues-0.2.2.3
Configuring void-0.7.1...
Installed scientific-0.3.4.9
Building unordered-containers-0.2.7.1...
Building void-0.7.1...
Configuring network-uri-2.6.1.0...
Installed void-0.7.1
Building network-uri-2.6.1.0...
Installed network-uri-2.6.1.0
Configuring asn1-parse-0.9.4...
Building asn1-parse-0.9.4...
Configuring cipher-aes-0.2.11...
Installed unordered-containers-0.2.7.1
Configuring fast-logger-2.4.7...
Installed asn1-parse-0.9.4
Building cipher-aes-0.2.11...
Building fast-logger-2.4.7...
Configuring bson-0.3.2.3...
Installed fast-logger-2.4.7
Building bson-0.3.2.3...
Configuring lifted-base-0.2.3.8...
Installed cipher-aes-0.2.11
Building lifted-base-0.2.3.8...
Configuring http-types-0.9.1...
Installed lifted-base-0.2.3.8
Building http-types-0.9.1...
Configuring blaze-html-0.8.1.3...
Installed bson-0.3.2.3
Building blaze-html-0.8.1.3...
Configuring http2-1.6.2...
Installed http-types-0.9.1
Building http2-1.6.2...
Configuring attoparsec-0.13.1.0...
Installed http2-1.6.2
Building attoparsec-0.13.1.0...
Installed blaze-html-0.8.1.3
Configuring x509-1.6.5...
Building x509-1.6.5...
Configuring vault-0.3.0.6...
Installed x509-1.6.5
Building vault-0.3.0.6...
Configuring cprng-aes-0.6.1...
Installed attoparsec-0.13.1.0
Building cprng-aes-0.6.1...
Configuring resourcet-1.1.8.1...
Installed vault-0.3.0.6
Building resourcet-1.1.8.1...
Configuring http-client-0.5.4...
Installed cprng-aes-0.6.1
Building http-client-0.5.4...
Installed resourcet-1.1.8.1
Configuring x509-store-1.6.2...
Building x509-store-1.6.2...
Configuring http-date-0.0.6.1...
Installed x509-store-1.6.2
Building http-date-0.0.6.1...
Configuring aeson-1.0.2.1...
Installed http-client-0.5.4
Configuring nonce-1.0.2...
Installed http-date-0.0.6.1
Building aeson-1.0.2.1...
Building nonce-1.0.2...
Configuring wai-3.2.1.1...
Installed nonce-1.0.2
Building wai-3.2.1.1...
Configuring conduit-1.2.8...
Installed wai-3.2.1.1
Building conduit-1.2.8...
Installed conduit-1.2.8
Configuring x509-system-1.6.4...
Building x509-system-1.6.4...
Configuring x509-validation-1.6.5...
Installed x509-system-1.6.4
Building x509-validation-1.6.5...
Installed x509-validation-1.6.5
Configuring wai-logger-2.3.0...
Building wai-logger-2.3.0...
Configuring warp-3.2.9...
Installed aeson-1.0.2.1
Building warp-3.2.9...
Installed wai-logger-2.3.0
Configuring conduit-extra-1.1.15...
Building conduit-extra-1.1.15...
Installed conduit-extra-1.1.15
Configuring tls-1.3.8...
Building tls-1.3.8...
Configuring wai-extra-3.0.19...
Installed warp-3.2.9
Building wai-extra-3.0.19...
Configuring xml-conduit-1.4.0.2...
Installed wai-extra-3.0.19
Building xml-conduit-1.4.0.2...
Installed tls-1.3.8
Configuring connection-0.2.6...
Building connection-0.2.6...
Configuring wai-app-static-3.1.6.1...
Installed connection-0.2.6
Building wai-app-static-3.1.6.1...
Configuring mongoDB-2.1.1.1...
Installed xml-conduit-1.4.0.2
Building mongoDB-2.1.1.1...
Installed wai-app-static-3.1.6.1
Configuring http-client-tls-0.3.3...
Building http-client-tls-0.3.3...
Configuring tagstream-conduit-0.5.5.3...
Installed mongoDB-2.1.1.1
Building tagstream-conduit-0.5.5.3...
Installed http-client-tls-0.3.3
Configuring http-conduit-2.2.3...
Building http-conduit-2.2.3...
Installed tagstream-conduit-0.5.5.3
Installed http-conduit-2.2.3
Configuring authenticate-1.3.3.2...
Building authenticate-1.3.3.2...
Installed authenticate-1.3.3.2
Configuring hails-0.11.1.1...
Building hails-0.11.1.1...
Failed to install hails-0.11.1.1
Build log ( /home/builder/.cabal/logs/hails-0.11.1.1.log ):
cabal: Entering directory '/tmp/cabal-tmp-12051/hails-0.11.1.1'
Configuring hails-0.11.1.1...
Building hails-0.11.1.1...
Preprocessing library hails-0.11.1.1...

Hails/Data/Hson.hs:10:14: warning:
    -XOverlappingInstances is deprecated: instead use per-instance pragmas OVERLAPPING/OVERLAPPABLE/OVERLAPS
[ 1 of 25] Compiling Paths_hails      ( dist/build/autogen/Paths_hails.hs, dist/build/Paths_hails.o )
[ 2 of 25] Compiling Hails.Version    ( Hails/Version.hs, dist/build/Hails/Version.o )

Hails/Version.hs:1:14: warning: [-Wtrustworthy-safe]
    ‘Hails.Version’ is marked as Trustworthy but has been inferred as safe!
[ 3 of 25] Compiling Hails.HttpServer.Types ( Hails/HttpServer/Types.hs, dist/build/Hails/HttpServer/Types.o )
[ 4 of 25] Compiling Hails.HttpServer.Auth ( Hails/HttpServer/Auth.hs, dist/build/Hails/HttpServer/Auth.o )

Hails/HttpServer/Auth.hs:88:9: error:
    • Couldn't match type ‘Response’ with ‘IO ResponseReceived’
      Expected type: (Response -> IO ResponseReceived)
                     -> IO ResponseReceived
        Actual type: (Response -> IO ResponseReceived) -> Response
    • In a stmt of a 'do' block:
        assertion <- S8.concat `liftM` (requestBody req0 C.$$ C.consume)
      In the expression:
        do { assertion <- S8.concat
                          `liftM` (requestBody req0 C.$$ C.consume);
             muser <- withManager
                      $ checkAssertion audience (T.decodeUtf8 $ assertion);
             case muser of {
               Nothing -> return $ responseLBS status401 [] ""
               Just usr -> let ... in return $ responseLBS status200 ... "" } }
      In a case alternative:
          _ | doLogin
            -> do { assertion <- S8.concat
                                 `liftM` (requestBody req0 C.$$ C.consume);
                    muser <- withManager
                             $ checkAssertion audience (T.decodeUtf8 $ assertion);
                    case muser of {
                      Nothing -> return $ responseLBS status401 ... ""
                      Just usr -> ... } }

Hails/HttpServer/Auth.hs:88:41: error:
    • Couldn't match type ‘IO S8.ByteString’
                     with ‘C.ConduitM
                             () S8.ByteString ((->) (Response -> IO ResponseReceived)) ()’
      Expected type: C.Source
                       ((->) (Response -> IO ResponseReceived)) S8.ByteString
        Actual type: IO S8.ByteString
    • In the first argument of ‘(C.$$)’, namely ‘requestBody req0’
      In the second argument of ‘liftM’, namely
        ‘(requestBody req0 C.$$ C.consume)’
      In a stmt of a 'do' block:
        assertion <- S8.concat `liftM` (requestBody req0 C.$$ C.consume)

Hails/HttpServer/Auth.hs:98:21: error:
    • Couldn't match type ‘Response’ with ‘IO ResponseReceived’
      Expected type: (Response -> IO ResponseReceived)
                     -> IO ResponseReceived
        Actual type: (Response -> IO ResponseReceived) -> Response
    • In the expression:
        return
        $ responseLBS
            status200
            [("Set-Cookie", delCookie "_hails_user"),
             ("Set-Cookie", delCookie "_hails_user_hmac")]
            ""
      In a case alternative:
          _ | doLogout
            -> return
               $ responseLBS
                   status200
                   [("Set-Cookie", delCookie "_hails_user"),
                    ("Set-Cookie", delCookie "_hails_user_hmac")]
                   ""
      In a stmt of a 'do' block:
        case () of {
          _ | doLogin
            -> do { assertion <- S8.concat
                                 `liftM` (requestBody req0 C.$$ C.consume);
                    muser <- withManager
                             $ checkAssertion audience (T.decodeUtf8 $ assertion);
                    .... }
          _ | doLogout
            -> return
               $ responseLBS
                   status200
                   [("Set-Cookie", delCookie "_hails_user"),
                    ("Set-Cookie", delCookie "_hails_user_hmac")]
                   ""
          _ -> let
                 mauth = ...
                 ....
               in requireLoginMiddleware (return $ respRedir req) app0 req }

Hails/HttpServer/Auth.hs:147:7: error:
    • Couldn't match type ‘Response’ with ‘IO ResponseReceived’
      Expected type: (Response -> IO ResponseReceived)
                     -> IO ResponseReceived
        Actual type: (Response -> IO ResponseReceived) -> Response
    • In a stmt of a 'do' block:
        return
        $ responseLBS
            status302 [("Set-Cookie", cookie), ("Location", redirectTo)] ""
      In the expression:
        do { let cookie = toByteString . renderSetCookie $ ...;
             let redirectTo
                   = fromMaybe "/" $ lookup "Referer" $ requestHeaders req0;
             return
             $ responseLBS
                 status302 [("Set-Cookie", cookie), ("Location", redirectTo)] "" }
      In a case alternative:
          "_hails" : "logout" : _
            -> do { let cookie = ...;
                    let redirectTo = ...;
                    return $ responseLBS status302 [("Set-Cookie", cookie), ....] "" }

Hails/HttpServer/Auth.hs:152:7: error:
    • Couldn't match type ‘Response’ with ‘IO ResponseReceived’
      Expected type: (Response -> IO ResponseReceived)
                     -> IO ResponseReceived
        Actual type: (Response -> IO ResponseReceived) -> Response
    • In a stmt of a 'do' block:
        oidResp <- withManager $ authenticateClaimed qry
      In the expression:
        do { let qry
                   = map (\ (n, v) -> ...)
                     $ filter (isJust . snd) $ parseQueryText $ rawQueryString req0;
             oidResp <- withManager $ authenticateClaimed qry;
             liftIO $ print $ oirParams oidResp;
             let cookie = toByteString . renderSetCookie $ ...;
             .... }
      In a case alternative:
          "_hails" : "login" : _
            -> do { let qry = ...;
                    oidResp <- withManager $ authenticateClaimed qry;
                    liftIO $ print $ oirParams oidResp;
                    .... }

Hails/HttpServer/Auth.hs:152:18: error:
    • Couldn't match type ‘(->) (Response -> IO ResponseReceived)’
                     with ‘IO’
        arising from a functional dependency between:
          constraint ‘monad-control-1.0.1.0:Control.Monad.Trans.Control.MonadBaseControl
                        IO ((->) (Response -> IO ResponseReceived))’
            arising from a use of ‘withManager’
          instance ‘monad-control-1.0.1.0:Control.Monad.Trans.Control.MonadBaseControl
                      ((->) r) ((->) r)’
            at <no location info>
    • In a stmt of a 'do' block:
        oidResp <- withManager $ authenticateClaimed qry
      In the expression:
        do { let qry
                   = map (\ (n, v) -> ...)
                     $ filter (isJust . snd) $ parseQueryText $ rawQueryString req0;
             oidResp <- withManager $ authenticateClaimed qry;
             liftIO $ print $ oirParams oidResp;
             let cookie = toByteString . renderSetCookie $ ...;
             .... }
      In a case alternative:
          "_hails" : "login" : _
            -> do { let qry = ...;
                    oidResp <- withManager $ authenticateClaimed qry;
                    liftIO $ print $ oirParams oidResp;
                    .... }

Hails/HttpServer/Auth.hs:191:3: error:
    • Couldn't match expected type ‘(Response -> IO ResponseReceived)
                                    -> IO ResponseReceived’
                  with actual type ‘IO Response’
    • In a stmt of a 'do' block: appResp <- app0 req
      In the expression:
        do { appResp <- app0 req;
             if hasLogin appResp && notLoggedIn then
                 loginResp
             else
                 return appResp }
      In an equation for ‘requireLoginMiddleware’:
          requireLoginMiddleware loginResp app0 req
            = do { appResp <- app0 req;
                   if hasLogin appResp && notLoggedIn then
                       loginResp
                   else
                       return appResp }
            where
                hasLogin r = "X-Hails-Login" `isIn` responseHeaders r
                notLoggedIn = not $ "X-Hails-User" `isIn` requestHeaders req
                isIn n xs = isJust $ lookup n xs

Hails/HttpServer/Auth.hs:191:14: error:
    • Couldn't match expected type ‘IO Response’
                  with actual type ‘(Response -> IO ResponseReceived)
                                    -> IO ResponseReceived’
    • Probable cause: ‘app0’ is applied to too few arguments
      In a stmt of a 'do' block: appResp <- app0 req
      In the expression:
        do { appResp <- app0 req;
             if hasLogin appResp && notLoggedIn then
                 loginResp
             else
                 return appResp }
      In an equation for ‘requireLoginMiddleware’:
          requireLoginMiddleware loginResp app0 req
            = do { appResp <- app0 req;
                   if hasLogin appResp && notLoggedIn then
                       loginResp
                   else
                       return appResp }
            where
                hasLogin r = "X-Hails-Login" `isIn` responseHeaders r
                notLoggedIn = not $ "X-Hails-User" `isIn` requestHeaders req
                isIn n xs = isJust $ lookup n xs
cabal: Leaving directory '/tmp/cabal-tmp-12051/hails-0.11.1.1'
cabal: Error: some packages failed to install:
hails-0.11.1.1 failed during the building phase. The exception was:
ExitFailure 1

Test log

No test log was submitted for this report.