-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
 - monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
 nix:
   packages: [zlib]
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
-- location: '../symantic-http-client'
-  extra-dep: true
-- location: '../symantic-http-pipes'
-  extra-dep: true
-- location: '../symantic-http-server'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
+- ../symantic-http-client
+- ../symantic-http-pipes
+- ../symantic-http-server
 - monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
 nix:
   packages: [zlib]
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
        BSL8.pack (show (BSL8.length bs))
         <> ":" <> bs <> ","
 
+-- TODO: write something like Pbs._lines to form a Lens'
 decodeNetstring ::
  IsString r =>
  Monad m =>
 unDrawP :: Monad m => inp -> ParserP inp out m ()
 unDrawP = P.hoist lift . Pp.unDraw
 
--- | @'parseMany' f@ groups a 'P.Producer' of 'BS.ByteString's
--- into a series of 'P.Producer's delimited by 'f',
--- where the delimiter is dropped.
+-- | @'parseMany' f@ groups a 'P.Producer' of @(inp)@
+-- into a series of 'P.Producer's of @(a)@ delimited by 'f'
+-- (which must drop the delimiter).
 parseMany ::
+ forall m inp r a.
  Monad m =>
- (P.Producer a m r -> P.Producer b m (P.Producer a m r)) ->
- P.Producer a m r ->
- Pg.FreeT (P.Producer b m) m r
-parseMany f = Pg.FreeT . go0
+ (P.Producer inp m r -> P.Producer a m (P.Producer inp m r)) ->
+ P.Producer inp m r ->
+ Pg.FreeT (P.Producer a m) m r
+parseMany f = go0
        where
-       go0 p = do
+       go0 ::
+        P.Producer inp m r ->
+        Pg.FreeT (P.Producer a m) m r
+       go0 p = Pg.FreeT $ do
                P.next p >>= \case
-                Left r -> return (Pg.Pure r)
-                Right (bs, p') -> return $ Pg.Free (go1 (P.yield bs >> p'))
-       go1 p = Pg.FreeT . go0 <$> f p
+                Left r -> return $ Pg.Pure r
+                Right (inp, p') -> return $ Pg.Free $ go1 $ P.yield inp >> p'
+       
+       go1 ::
+        P.Producer inp m r ->
+        P.Producer a m (Pg.FreeT (P.Producer a m) m r)
+       go1 p = go0 <$> f p
 
 {-
 -- * Type |Lens'|
 
-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
 - monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
 nix:
   packages: [zlib]
 
--- /dev/null
+# This file was autogenerated by Stack.
+# You should not edit this file by hand.
+# For more information, please see the documentation at:
+#   https://docs.haskellstack.org/en/stable/lock_files
+
+packages:
+- completed:
+    hackage: monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f,2077
+    pantry-tree:
+      size: 1110
+      sha256: 7854dad860838df536897abe25cb020a685c788833c2c55f099040b73e05125b
+  original:
+    hackage: monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
+snapshots:
+- completed:
+    size: 525876
+    url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/14/13.yaml
+    sha256: 4a0e79eb194c937cc2a1852ff84d983c63ac348dc6bad5f38d20cab697036eef
+  original: lts-14.13
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
                        case matchContent @ts @(MimeDecodable (FramingYield as)) reqContentType of
                         Nothing -> return $ Left $ Fail st [ServerErrorContentType]
                         Just (MimeType mt) -> do
-                               let bodyBS = Wai.requestBody $ serverState_request st
+                               let bodyBS = Wai.getRequestBodyChunk $ serverState_request st
                                return $ Right $ Right $ Right $
                                        Right ($ ServerBodyStreamArg $
                                                framingDecode (Proxy @framing) (mimeDecode mt) $
 
-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
 - monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
 nix:
   packages: [zlib]
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
 
 import Control.Monad (unless)
 import Data.Bool
-import Data.Char (Char)
 import Data.Eq (Eq(..))
-import Data.Int (Int)
 import Data.String (String)
-import System.IO (IO, putStrLn)
 import Text.Show (Show(..))
-import qualified Control.Monad.Classes as MC
 import qualified Data.List as List
 import qualified Data.Map.Strict as Map
-import qualified Network.Wai.Handler.Warp as Warp
 import qualified Test.Hspec as Hspec
 
 import Symantic.HTTP
 
 import Data.Functor (Functor(..), (<$>))
 import System.IO (IO)
 import Test.Hspec
-import Test.Tasty
+import Test.Tasty hiding (after, after_)
 import Test.Tasty.Hspec
 import Text.Show (Show(..), showString, showParen, ShowS)
 import qualified Data.Map.Strict as Map
 
-resolver: lts-13.19
-packages:
-- '.'
-- location: '../symantic-http'
-  extra-dep: true
-- location: '../symantic-http-client'
-  extra-dep: true
-- location: '../symantic-http-pipes'
-  extra-dep: true
-- location: '../symantic-http-server'
-  extra-dep: true
+resolver: lts-14.13
 extra-deps:
+- ../symantic-http
+- ../symantic-http-client
+- ../symantic-http-pipes
+- ../symantic-http-server
 - monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
 
--- /dev/null
+# This file was autogenerated by Stack.
+# You should not edit this file by hand.
+# For more information, please see the documentation at:
+#   https://docs.haskellstack.org/en/stable/lock_files
+
+packages:
+- completed:
+    hackage: monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f,2077
+    pantry-tree:
+      size: 1110
+      sha256: 7854dad860838df536897abe25cb020a685c788833c2c55f099040b73e05125b
+  original:
+    hackage: monad-classes-0.3.2.2@sha256:793faead28dafb47f115c4dec877ce3e3ffab604f134d852652385632ea0923f
+snapshots:
+- completed:
+    size: 525876
+    url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/14/13.yaml
+    sha256: 4a0e79eb194c937cc2a1852ff84d983c63ac348dc6bad5f38d20cab697036eef
+  original: lts-14.13
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files:
 
-resolver: lts-13.19
-packages:
-- '.'
-extra-deps:
+resolver: lts-14.13
 
 
 build-type: Simple
 cabal-version: 1.24
-tested-with: GHC==8.4.4
+tested-with: GHC==8.6.5
 extra-source-files:
   stack.yaml
 extra-tmp-files: