packages feed

hasql 1.6.1.1 → 1.6.1.2

raw patch · 4 files changed

+35/−26 lines, 4 filesdep +aesondep +network-ipdep +scientificPVP ok

version bump matches the API change (PVP)

Dependencies added: aeson, network-ip, scientific, time, uuid

API changes (from Hackage documentation)

Files

hasql.cabal view
@@ -1,5 +1,5 @@ name: hasql-version: 1.6.1.1+version: 1.6.1.2 category: Hasql, Database, PostgreSQL synopsis: An efficient PostgreSQL driver with a flexible mapping API description:@@ -57,6 +57,7 @@     Hasql.Private.Encoders.Value     Hasql.Private.Encoders.Params   build-depends:+    aeson >=2 && <3,     attoparsec >=0.10 && <0.15,     base >=4.12 && <5,     bytestring >=0.10 && <0.12,@@ -66,12 +67,16 @@     hashable >=1.2 && <2,     hashtables >=1.3 && <2,     mtl >=2 && <3,+    network-ip >=0.3.0.3 && <0.4,     postgresql-binary >=0.12.5 && <0.13,     postgresql-libpq ==0.9.*,     profunctors >=5.1 && <6,+    scientific >=0.3 && <0.4,     text >=1 && <3,     text-builder >=0.6.7 && <0.7,+    time >=1.9 && <2,     transformers >=0.3 && <0.7,+    uuid >=1.3 && <2,     vector >=0.10 && <0.14  test-suite tasty
library/Hasql/Private/Decoders.hs view
@@ -2,6 +2,7 @@ -- A DSL for declaration of result decoders. module Hasql.Private.Decoders where +import qualified Data.Aeson as Aeson import qualified Data.Vector as Vector import qualified Data.Vector.Generic as GenericVector import qualified Hasql.Private.Decoders.Array as Array@@ -13,7 +14,7 @@ import qualified Hasql.Private.Errors as Errors import Hasql.Private.Prelude hiding (bool, maybe) import qualified Hasql.Private.Prelude as Prelude-import qualified PostgreSQL.Binary.Data as B+import qualified Network.IP.Addr as NetworkIp import qualified PostgreSQL.Binary.Decoding as A  -- * Result@@ -187,7 +188,7 @@ -- | -- Decoder of the @NUMERIC@ values. {-# INLINEABLE numeric #-}-numeric :: Value B.Scientific+numeric :: Value Scientific numeric = Value (Value.decoder (const A.numeric))  -- |@@ -212,13 +213,13 @@ -- | -- Decoder of the @DATE@ values. {-# INLINEABLE date #-}-date :: Value B.Day+date :: Value Day date = Value (Value.decoder (const A.date))  -- | -- Decoder of the @TIMESTAMP@ values. {-# INLINEABLE timestamp #-}-timestamp :: Value B.LocalTime+timestamp :: Value LocalTime timestamp = Value (Value.decoder (Prelude.bool A.timestamp_float A.timestamp_int))  -- |@@ -232,13 +233,13 @@ -- However this library bypasses the silent conversions -- and communicates with Postgres using the UTC values directly. {-# INLINEABLE timestamptz #-}-timestamptz :: Value B.UTCTime+timestamptz :: Value UTCTime timestamptz = Value (Value.decoder (Prelude.bool A.timestamptz_float A.timestamptz_int))  -- | -- Decoder of the @TIME@ values. {-# INLINEABLE time #-}-time :: Value B.TimeOfDay+time :: Value TimeOfDay time = Value (Value.decoder (Prelude.bool A.time_float A.time_int))  -- |@@ -250,31 +251,31 @@ -- that fits the task, so we use a pair of 'TimeOfDay' and 'TimeZone' -- to represent a value on the Haskell's side. {-# INLINEABLE timetz #-}-timetz :: Value (B.TimeOfDay, B.TimeZone)+timetz :: Value (TimeOfDay, TimeZone) timetz = Value (Value.decoder (Prelude.bool A.timetz_float A.timetz_int))  -- | -- Decoder of the @INTERVAL@ values. {-# INLINEABLE interval #-}-interval :: Value B.DiffTime+interval :: Value DiffTime interval = Value (Value.decoder (Prelude.bool A.interval_float A.interval_int))  -- | -- Decoder of the @UUID@ values. {-# INLINEABLE uuid #-}-uuid :: Value B.UUID+uuid :: Value UUID uuid = Value (Value.decoder (const A.uuid))  -- | -- Decoder of the @INET@ values. {-# INLINEABLE inet #-}-inet :: Value (B.NetAddr B.IP)+inet :: Value (NetworkIp.NetAddr NetworkIp.IP) inet = Value (Value.decoder (const A.inet))  -- | -- Decoder of the @JSON@ values into a JSON AST. {-# INLINEABLE json #-}-json :: Value B.Value+json :: Value Aeson.Value json = Value (Value.decoder (const A.json_ast))  -- |@@ -286,7 +287,7 @@ -- | -- Decoder of the @JSONB@ values into a JSON AST. {-# INLINEABLE jsonb #-}-jsonb :: Value B.Value+jsonb :: Value Aeson.Value jsonb = Value (Value.decoder (const A.jsonb_ast))  -- |
library/Hasql/Private/Encoders.hs view
@@ -2,6 +2,7 @@ -- A DSL for declaration of query parameter encoders. module Hasql.Private.Encoders where +import qualified Data.Aeson as Aeson import qualified Data.ByteString.Lazy as LazyByteString import qualified Hasql.Private.Encoders.Array as Array import qualified Hasql.Private.Encoders.Params as Params@@ -9,7 +10,7 @@ import qualified Hasql.Private.PTI as PTI import Hasql.Private.Prelude hiding (bool) import qualified Hasql.Private.Prelude as Prelude-import qualified PostgreSQL.Binary.Data as B+import qualified Network.IP.Addr as NetworkIp import qualified PostgreSQL.Binary.Encoding as A import qualified Text.Builder as C @@ -145,7 +146,7 @@ -- | -- Encoder of @NUMERIC@ values. {-# INLINEABLE numeric #-}-numeric :: Value B.Scientific+numeric :: Value Scientific numeric = Value (Value.unsafePTIWithShow PTI.numeric (const A.numeric))  -- |@@ -172,55 +173,55 @@ -- | -- Encoder of @DATE@ values. {-# INLINEABLE date #-}-date :: Value B.Day+date :: Value Day date = Value (Value.unsafePTIWithShow PTI.date (const A.date))  -- | -- Encoder of @TIMESTAMP@ values. {-# INLINEABLE timestamp #-}-timestamp :: Value B.LocalTime+timestamp :: Value LocalTime timestamp = Value (Value.unsafePTIWithShow PTI.timestamp (Prelude.bool A.timestamp_float A.timestamp_int))  -- | -- Encoder of @TIMESTAMPTZ@ values. {-# INLINEABLE timestamptz #-}-timestamptz :: Value B.UTCTime+timestamptz :: Value UTCTime timestamptz = Value (Value.unsafePTIWithShow PTI.timestamptz (Prelude.bool A.timestamptz_float A.timestamptz_int))  -- | -- Encoder of @TIME@ values. {-# INLINEABLE time #-}-time :: Value B.TimeOfDay+time :: Value TimeOfDay time = Value (Value.unsafePTIWithShow PTI.time (Prelude.bool A.time_float A.time_int))  -- | -- Encoder of @TIMETZ@ values. {-# INLINEABLE timetz #-}-timetz :: Value (B.TimeOfDay, B.TimeZone)+timetz :: Value (TimeOfDay, TimeZone) timetz = Value (Value.unsafePTIWithShow PTI.timetz (Prelude.bool A.timetz_float A.timetz_int))  -- | -- Encoder of @INTERVAL@ values. {-# INLINEABLE interval #-}-interval :: Value B.DiffTime+interval :: Value DiffTime interval = Value (Value.unsafePTIWithShow PTI.interval (Prelude.bool A.interval_float A.interval_int))  -- | -- Encoder of @UUID@ values. {-# INLINEABLE uuid #-}-uuid :: Value B.UUID+uuid :: Value UUID uuid = Value (Value.unsafePTIWithShow PTI.uuid (const A.uuid))  -- | -- Encoder of @INET@ values. {-# INLINEABLE inet #-}-inet :: Value (B.NetAddr B.IP)+inet :: Value (NetworkIp.NetAddr NetworkIp.IP) inet = Value (Value.unsafePTIWithShow PTI.inet (const A.inet))  -- | -- Encoder of @JSON@ values from JSON AST. {-# INLINEABLE json #-}-json :: Value B.Value+json :: Value Aeson.Value json = Value (Value.unsafePTIWithShow PTI.json (const A.json_ast))  -- |@@ -238,7 +239,7 @@ -- | -- Encoder of @JSONB@ values from JSON AST. {-# INLINEABLE jsonb #-}-jsonb :: Value B.Value+jsonb :: Value Aeson.Value jsonb = Value (Value.unsafePTIWithShow PTI.jsonb (const A.jsonb_ast))  -- |
library/Hasql/Private/Prelude.hs view
@@ -64,13 +64,16 @@ import Data.Proxy as Exports import Data.Ratio as Exports import Data.STRef as Exports+import Data.Scientific as Exports (Scientific) import Data.Semigroup as Exports hiding (First (..), Last (..)) import Data.String as Exports import Data.Text as Exports (Text) import qualified Data.Text.Lazy import qualified Data.Text.Lazy.Builder+import Data.Time as Exports import Data.Traversable as Exports import Data.Tuple as Exports+import Data.UUID as Exports (UUID) import Data.Unique as Exports import Data.Vector as Exports (Vector) import Data.Version as Exports@@ -87,7 +90,6 @@ import GHC.IO.Exception as Exports import GHC.OverloadedLabels as Exports import Numeric as Exports-import PostgreSQL.Binary.Data as Exports (UUID) import System.Environment as Exports import System.Exit as Exports import System.IO as Exports (Handle, hClose)