hw-uri 0.1.1.9 → 0.1.1.10
raw patch · 2 files changed
+26/−10 lines, 2 filesdep ~antiope-coredep ~antiope-s3PVP ok
version bump matches the API change (PVP)
Dependency ranges changed: antiope-core, antiope-s3
API changes (from Hackage documentation)
Files
- hw-uri.cabal +4/−3
- test/HaskellWorks/Data/Uri/Gen.hs +22/−7
hw-uri.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.4 name: hw-uri-version: 0.1.1.9+version: 0.1.1.10 synopsis: Supports IO on URIs description: Supports IO on URIs. homepage: https://github.com/haskell-works/hw-uri@@ -11,6 +11,7 @@ maintainer: newhoggy@gmail.com copyright: John Ky 2019, David Turnbull 2019 category: Data+tested-with: GHC == 8.8.1, GHC == 8.6.5, GHC == 8.4.4, GHC == 8.2.2 extra-source-files: CHANGELOG.md, README.md source-repository head@@ -23,8 +24,8 @@ common amazonka { build-depends: amazonka >= 1.6.1 && < 1.7 } common amazonka-core { build-depends: amazonka-core >= 1.6.1 && < 1.7 } common amazonka-s3 { build-depends: amazonka-s3 >= 1.6.1 && < 1.7 }-common antiope-core { build-depends: antiope-core >= 7.4.2 && < 8 }-common antiope-s3 { build-depends: antiope-s3 >= 7.4.2 && < 8 }+common antiope-core { build-depends: antiope-core >= 7.4.4 && < 8 }+common antiope-s3 { build-depends: antiope-s3 >= 7.4.4 && < 8 } common antiope-optparse-applicative { build-depends: antiope-optparse-applicative >= 7.0.1 && < 8 } common bytestring { build-depends: bytestring >= 0.10.8.2 && < 0.11 } common directory { build-depends: directory >= 1.3.3.0 && < 1.4 }
test/HaskellWorks/Data/Uri/Gen.hs view
@@ -2,13 +2,15 @@ {-# LANGUAGE OverloadedStrings #-} module HaskellWorks.Data.Uri.Gen- ( s3Uri+ ( bucketName+ , s3Uri , location , localPath ) where import Antiope.S3 (BucketName (..), ObjectKey (..), S3Uri (..)) import Data.Semigroup ((<>))+import Data.Text (Text) import HaskellWorks.Data.Uri.Location import Hedgehog (MonadGen) @@ -21,13 +23,26 @@ {-# ANN module ("HLint: ignore Reduce duplication" :: String) #-} {-# ANN module ("HLint: ignore Redundant bracket" :: String) #-} +bucketName :: MonadGen m => m BucketName+bucketName = BucketName <$> G.text (R.linear 3 10) G.alphaNum++baseName :: MonadGen m => m Text+baseName = G.text (R.linear 3 10) G.alphaNum++s3UriWithObjectKey :: MonadGen m => m S3Uri+s3UriWithObjectKey = do+ bkt <- bucketName+ basenames <- G.list (R.linear 1 5) baseName+ ext <- G.text (R.linear 2 4) G.alphaNum+ pure $ S3Uri bkt (ObjectKey (T.intercalate "/" basenames <> "." <> ext))++s3UriWithout :: MonadGen m => m S3Uri+s3UriWithout = do+ bkt <- bucketName+ pure $ S3Uri bkt ""+ s3Uri :: MonadGen m => m S3Uri-s3Uri = do- let partGen = G.text (R.linear 3 10) G.alphaNum- bkt <- partGen- parts <- G.list (R.linear 1 5) partGen- ext <- G.text (R.linear 2 4) G.alphaNum- pure $ S3Uri (BucketName bkt) (ObjectKey (T.intercalate "/" parts <> "." <> ext))+s3Uri = G.choice [s3UriWithout, s3UriWithObjectKey] localPath :: MonadGen m => m FilePath localPath = do