packages feed

wkt-geom 0.0.11 → 0.0.12

raw patch · 9 files changed

+27/−41 lines, 9 filesdep ~QuickCheckdep ~hedgehogdep ~hspecPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: QuickCheck, hedgehog, hspec, lens

API changes (from Hackage documentation)

Files

README.md view
@@ -1,4 +1,4 @@-# wkt-geom [![Build Status](https://travis-ci.org/indicatrix/wkt-geom.png?branch=master)](https://travis-ci.org/indicatrix/wkt-geom) [Hackage](https://hackage.haskell.org/package/wkt-geom)+# wkt-geom ![Haskell CI](https://github.com/zellige/wkt-geom/workflows/Haskell%20CI/badge.svg) [Hackage](https://hackage.haskell.org/package/wkt-geom)  A parser for Well Known Text (WKT), Well Known Binary (WKB) and the PostgreSQL extension Extended Well Know Binary (eWKB). 
src/Data/Hex.hs view
@@ -8,18 +8,12 @@ import qualified Data.ByteString.Char8  as ByteStringChar8 import qualified Data.ByteString.Lazy   as LazyByteString import qualified Data.Geospatial        as Geospatial-import           Data.Monoid            ((<>))  newtype Hex = Hex ByteString.ByteString  safeConvert :: (LazyByteString.ByteString -> Either String Geospatial.GeospatialGeometry) -> Hex -> Either String Geospatial.GeospatialGeometry safeConvert f (Hex byteString) =-  let-    (decoded, rest) = ByteStringBase16.decode byteString-  in-    if ByteString.null rest then-      f $ LazyByteString.fromStrict decoded-    else-      Left ("Invalid hex representation: " <> ByteStringChar8.unpack byteString)-+    case ByteStringBase16.decode byteString of+         Left  _       -> Left $ "Invalid hex representation: " <> ByteStringChar8.unpack byteString+         Right decoded -> f    $ LazyByteString.fromStrict decoded 
src/Data/Internal/Ewkb/Geometry.hs view
@@ -11,7 +11,6 @@ import qualified Data.Binary.Get            as BinaryGet import           Data.Bits                  ((.&.), (.|.)) import qualified Data.ByteString.Builder    as ByteStringBuilder-import           Data.Monoid                ((<>)) import qualified Data.Word                  as Word  import qualified Data.Internal.Wkb.Endian   as Endian
src/Data/Internal/Wkb/GeometryCollection.hs view
@@ -9,7 +9,6 @@ import qualified Data.ByteString.Builder    as ByteStringBuilder import qualified Data.Foldable              as Foldable import qualified Data.Geospatial            as Geospatial-import           Data.Monoid                ((<>)) import qualified Data.Sequence              as Sequence  import qualified Data.Internal.Wkb.Endian   as Endian
src/Data/Internal/Wkb/Line.hs view
@@ -11,7 +11,6 @@ import qualified Data.Foldable                        as Foldable import qualified Data.Geospatial                      as Geospatial import qualified Data.LineString                      as LineString-import           Data.Monoid                          ((<>)) import qualified Data.Sequence                        as Sequence  
src/Data/Internal/Wkb/Point.hs view
@@ -14,7 +14,6 @@ import qualified Data.ByteString.Builder              as ByteStringBuilder import qualified Data.Foldable                        as Foldable import qualified Data.Geospatial                      as Geospatial-import           Data.Monoid                          ((<>)) import qualified Data.Monoid                          as Monoid import qualified Data.Sequence                        as Sequence import qualified Data.Word                            as Word
src/Data/Internal/Wkb/Polygon.hs view
@@ -11,7 +11,6 @@ import qualified Data.Foldable                        as Foldable import qualified Data.Geospatial                      as Geospatial import qualified Data.LinearRing                      as LinearRing-import           Data.Monoid                          ((<>)) import qualified Data.Sequence                        as Sequence  import qualified Data.Internal.Wkb.Endian             as Endian
test/Data/Internal/Wkb/PolygonSpec.hs view
@@ -3,18 +3,15 @@ module Data.Internal.Wkb.PolygonSpec where  import qualified Data.ByteString.Builder as ByteStringBuilder-import           Data.Monoid             ((<>))-import           Test.Hspec              (Spec, describe, it, shouldBe)--import qualified Data.SpecHelper         as SpecHelper-import qualified Data.Wkb                as Wkb+import qualified Data.SpecHelper as SpecHelper+import qualified Data.Wkb as Wkb+import Test.Hspec (Spec, describe, it, shouldBe)  spec :: Spec spec = do   testWkbPolygonParsing   testWkbMultiPolygonParsing - -- Test Wkb Polygon Parsing  testWkbPolygonParsing :: Spec@@ -31,21 +28,21 @@ testInvalidWkbPolyonParsing =   it "does not parse bad wkb polygon" $     Wkb.parseByteString exampleBadWkbPolygon `shouldBe` Left "Could not parse wkb: First and last points of linear ring are different: first=GeoPointXY (PointXY {_xyX = 1.0, _xyY = 2.0}) last=GeoPointXY (PointXY {_xyX = 7.0, _xyY = 8.0})"-  where exampleBadWkbPolygon =-          ByteStringBuilder.toLazyByteString $-            ByteStringBuilder.word8 0-            <> ByteStringBuilder.int32BE 3-            <> ByteStringBuilder.int32BE 1-            <> ByteStringBuilder.int32BE 4-            <> ByteStringBuilder.doubleBE 1.0-            <> ByteStringBuilder.doubleBE 2.0-            <> ByteStringBuilder.doubleBE 3.0-            <> ByteStringBuilder.doubleBE 4.0-            <> ByteStringBuilder.doubleBE 5.0-            <> ByteStringBuilder.doubleBE 6.0-            <> ByteStringBuilder.doubleBE 7.0-            <> ByteStringBuilder.doubleBE 8.0-+  where+    exampleBadWkbPolygon =+      ByteStringBuilder.toLazyByteString $+        ByteStringBuilder.word8 0+          <> ByteStringBuilder.int32BE 3+          <> ByteStringBuilder.int32BE 1+          <> ByteStringBuilder.int32BE 4+          <> ByteStringBuilder.doubleBE 1.0+          <> ByteStringBuilder.doubleBE 2.0+          <> ByteStringBuilder.doubleBE 3.0+          <> ByteStringBuilder.doubleBE 4.0+          <> ByteStringBuilder.doubleBE 5.0+          <> ByteStringBuilder.doubleBE 6.0+          <> ByteStringBuilder.doubleBE 7.0+          <> ByteStringBuilder.doubleBE 8.0  -- Test Wkb MultiPolygon Parsing 
wkt-geom.cabal view
@@ -1,5 +1,5 @@ name:                  wkt-geom-version:               0.0.11+version:               0.0.12 synopsis:              A parser of WKT, WKB and eWKB. description:           Well Known Text (WKT), Well Known Binary (WKB) and the PostgreSQL extension Extended Well Know Binary (eWKB) are vector geometry representations.                      .@@ -86,11 +86,11 @@                      , bytestring                   >= 0.10                      , containers                   >= 0.5.10.1                      , geojson                      >= 4.0.1-                     , hedgehog          < 0.7 &&   >= 0.5-                     , hspec             < 3 &&     >= 2.4+                     , hedgehog          < 1.1 &&   >= 1.0+                     , hspec             < 3 &&     >= 2.7                      , hw-hspec-hedgehog < 0.2 &&   >= 0.1.0.4-                     , lens              < 4.18 &&  >= 4-                     , QuickCheck        < 2.13 &&  > 2.7+                     , lens              < 5 &&     >= 4.1+                     , QuickCheck        < 2.15 &&  >= 2.7                      , scientific                   >= 0.3.6                      , trifecta                     >= 1.7                      , vector                       >= 0.10