archive-libarchive 0.2.2.2 → 1.0.0.0
raw patch · 2 files changed
+18/−9 lines, 2 filesdep ~libarchivePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: libarchive
API changes (from Hackage documentation)
- Archive.FFI: packFiles :: [FilePath] -> IO ByteString
- Archive.FFI: unpackToDir :: FilePath -> ByteString -> IO ()
+ Archive.FFI: packFilesRaw :: [FP] -> IO ByteString
+ Archive.FFI: toFP :: FilePath -> FP
+ Archive.FFI: type FP = FilePath
+ Archive.FFI: unpackToDirRaw :: FP -> ByteString -> IO ()
Files
- archive-libarchive.cabal +5/−2
- src/Archive/FFI.cpphs +13/−7
archive-libarchive.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.0 name: archive-libarchive-version: 0.2.2.2+version: 1.0.0.0 license: BSD3 license-file: LICENSE copyright: Copyright: (c) 2019-2020 Vanessa McHale@@ -31,7 +31,7 @@ ghc-options: -Wall build-depends: base >=4.3 && <5,- libarchive >=2.2.1.0,+ libarchive >=2.2.5.0, bytestring -any, composition-prelude -any @@ -45,3 +45,6 @@ if impl(ghc >=8.4) ghc-options: -Wmissing-export-lists++ if impl(ghc >=8.10)+ ghc-options: -Wunused-packages
src/Archive/FFI.cpphs view
@@ -1,16 +1,17 @@ module Archive.FFI ( Entry , Error+ , FP , readArchiveBytes- , unpackToDir+ , unpackToDirRaw , writeArchiveBytes- , packFiles+ , packFilesRaw , versionInfo+ , toFP ) where import qualified Codec.Archive as FFI import Codec.Archive.Foreign.Archive (archiveVersionString) import Control.Composition ((.*))-import Control.Exception (throw) import qualified Data.ByteString.Lazy as BSL import qualified Data.Version as V import qualified Paths_archive_libarchive as P@@ -19,17 +20,22 @@ type Error = FFI.ArchiveResult +type FP = FilePath++toFP :: FilePath -> FP+toFP = id+ writeArchiveBytes :: [Entry] -> BSL.ByteString writeArchiveBytes = FFI.entriesToBSL readArchiveBytes :: BSL.ByteString -> Either Error [Entry] readArchiveBytes = FFI.readArchiveBSL -unpackToDir :: FilePath -> BSL.ByteString -> IO ()-unpackToDir = fmap (either throw id) .* FFI.runArchiveM .* FFI.unpackToDirLazy+unpackToDirRaw :: FP -> BSL.ByteString -> IO ()+unpackToDirRaw = FFI.throwArchiveM .* FFI.unpackToDirLazy -packFiles :: [FilePath] -> IO BSL.ByteString-packFiles = FFI.packFiles+packFilesRaw :: [FP] -> IO BSL.ByteString+packFilesRaw = FFI.packFiles -- | @since 0.2.2.0 versionInfo :: String