tighttp 0.0.0.1 → 0.0.0.2
raw patch · 4 files changed
+16/−7 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- src/Network/TigHTTP/Client.hs +4/−1
- src/Network/TigHTTP/HttpTypes.hs +3/−3
- src/Network/TigHTTP/Server.hs +7/−1
- tighttp.cabal +2/−2
src/Network/TigHTTP/Client.hs view
@@ -68,7 +68,9 @@ (n :: Int) <- lift $ (fst . head . readHex . BSC.unpack) `liftM` hlGetLine h lift . hlDebug h "medium" . BSC.pack . (++ "\n") $ show n case n of- 0 -> return ()+ 0 -> do l <- lift $ hlGetLine h+ lift . hlDebug h "medium" . BSC.pack . (++ "\n") $ show l+ return () _ -> do r <- lift $ hlGet h n "" <- lift $ hlGetLine h yield r@@ -117,4 +119,5 @@ hGetHeader :: HandleLike h => h -> HandleMonad h [BS.ByteString] hGetHeader h = do l <- hlGetLine h+ hlDebug h "medium" $ l `BS.append` "\n" if BS.null l then return [] else (l :) `liftM` hGetHeader h
src/Network/TigHTTP/HttpTypes.hs view
@@ -178,7 +178,7 @@ case BS.splitAt 2 csv of (": ", v) -> (k, v) _ -> error "parse: bad"-parseReq [] = error "parse: bad request"+parseReq [] = error "parse: null request" parseSep :: HandleLike h => RequestType -> Path -> Version -> [(BS.ByteString, BS.ByteString)] -> Request h@@ -430,9 +430,9 @@ separate i = let (k, csv) = BSC.span (/= ':') i in case BS.splitAt 2 csv of (": ", v) -> (k, v)- _ -> error "parseResponse: bad response"+ _ -> error $ "parseResponse: bad response: " ++ show csv -- let (k, ':' : ' ' : v) = span (/= ':') i in (k, v)-parseResponse _ = error "parseResponse: bad response"+parseResponse _ = error "parseResponse: null response" parseResponseSep :: ( Monad (p () BS.ByteString (HandleMonad h)),
src/Network/TigHTTP/Server.hs view
@@ -26,7 +26,7 @@ getRequest :: HandleLike h => h -> HandleMonad h (Request h) getRequest cl = do- h <- hlGetHeader cl+ h <- hlGetHeader' cl let req = parseReq h r <- case req of RequestPost {} -> return . httpContent cl $@@ -82,7 +82,13 @@ responseBody = fromList $ LBS.toChunks cnt } +hlGetHeader' :: HandleLike h => h -> HandleMonad h [BS.ByteString]+hlGetHeader' h = do+ l <- hlGetLine h+ if BS.null l then hlGetHeader' h else (l :) `liftM` hlGetHeader h+ hlGetHeader :: HandleLike h => h -> HandleMonad h [BS.ByteString] hlGetHeader h = do l <- hlGetLine h+ hlDebug h "medium" l if BS.null l then return [] else (l :) `liftM` hlGetHeader h
tighttp.cabal view
@@ -2,7 +2,7 @@ cabal-version: >= 1.8 name: tighttp-version: 0.0.0.1+version: 0.0.0.2 stability: Experimental author: Yoshikuni Jujo <PAF01143@nifty.ne.jp> maintainer: Yoshikuni Jujo <PAF01143@nifty.ne.jp>@@ -101,7 +101,7 @@ source-repository this type: git location: git://github.com/YoshikuniJujo/tighttp.git- tag: tighttp-0.0.0.1+ tag: tighttp-0.0.0.2 library hs-source-dirs: src