packages feed

bolt 0.2.0.0 → 0.2.1.0

raw patch · 3 files changed

+17/−13 lines, 3 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

bolt.cabal view
@@ -1,5 +1,5 @@ name:                bolt
-version:             0.2.0.0
+version:             0.2.1.0
 synopsis:            Bolt driver for Neo4j
 description:
     A Bolt driver to access Neo4j databases using
@@ -37,18 +37,18 @@                      , Database.Bolt.Transport.Chunked
                      , Database.Bolt.Transport.Message
                      , Database.Bolt.Transport.Socket
-  build-depends:       base >= 4.8 && < 5
-                     , bifunctors           >= 5.2 && < 5.5
+  build-depends:       base                 >= 4.8    && < 5
+                     , bifunctors           >= 5.2    && < 5.5
                      , bytestring           >= 0.10.6 && < 0.11
-                     , cereal               >= 0.5.2 && < 0.6
-                     , containers           >= 0.5.6 && < 0.6
-                     , hashable             >= 1.2.4 && < 1.3
-                     , network              >= 2.6.2 && < 2.7
-                     , network-uri          >= 2.6.1 && < 2.7
-                     , scientific           >= 0.3.0 && < 0.4
-                     , text                 >= 1.2.2 && < 1.3
-                     , transformers         >= 0.5.0 && < 0.6
-                     , unordered-containers >= 0.2.7 && < 0.3
+                     , cereal               >= 0.5.2  && < 0.6
+                     , containers           >= 0.5.6  && < 0.6
+                     , hashable             >= 1.2.4  && < 1.3
+                     , network              >= 2.6.2  && < 2.7
+                     , network-uri          >= 2.6.1  && < 2.7
+                     , scientific           >= 0.3.0  && < 0.4
+                     , text                 >= 1.2.2  && < 1.3
+                     , transformers         >= 0.5.0  && < 0.6
+                     , unordered-containers >= 0.2.7  && < 0.3
                      , vector               >= 0.11.0 && < 0.12
   ghc-options:         -Wall
   default-language:    Haskell2010
src/Data/PackStream.hs view
@@ -27,6 +27,7 @@ import           Control.Monad
 import           Data.Bifunctor
 import           Data.Bits
+import qualified Data.ByteString        as BS
 import           Data.Hashable
 import qualified Data.HashMap.Strict    as HM
 import           Data.Int
@@ -240,7 +241,8 @@     | otherwise                                          = putWord8 0xcb >> putWord64be (fromIntegral i)
 
 putPackStream (String t) = do
-    let size = T.length t
+    let bstr = T.encodeUtf8 t
+        size = BS.length bstr
     if | size < 0x10         -> putWord8 (0x80 + fromIntegral size)
        | size < 0x100        -> putWord8 0xd0 >> putWord8    (fromIntegral size)
        | size < 0x10000      -> putWord8 0xd1 >> putWord16be (fromIntegral size)
src/Database/Bolt/Protocol/Ver1/Request.hs view
@@ -24,11 +24,13 @@ 
 request :: Transport t => t -> Message -> IO Response
 request conn msg = do
+    -- print ("send", msg)
     sendmsg conn msg
     gather []
   where
     gather vals = do
         reply <- recvmsg conn
+        -- print ("recv", reply)
         case reply of
             Msg.Success _meta -> return $ Success (reverse vals)
             Msg.Failure _meta -> return Failed