shake-bindist 1.0.1.0 → 1.0.2.0
raw patch · 4 files changed
+55/−12 lines, 4 filesdep +brotliPVP ok
version bump matches the API change (PVP)
Dependencies added: brotli
API changes (from Hackage documentation)
+ Development.Shake.BinDist: tarBrotli :: [FilePath] -> FilePattern -> Rules ()
+ Development.Shake.BinDist: tarBrotliA :: [FilePath] -> FilePath -> Action ()
Files
- CHANGELOG.md +5/−0
- README.md +22/−0
- shake-bindist.cabal +4/−3
- src/Development/Shake/BinDist.hs +24/−9
CHANGELOG.md view
@@ -1,5 +1,10 @@ # shake-bindist +## 1.0.2.0++ * Fix bug in `tarXz`+ * Add `tarBrotli` and `tarBrotliA`+ ## 1.0.1.0 * Add `tarXz` and `tarXzA`
README.md view
@@ -8,3 +8,25 @@ [archive-sig](http://hackage.haskell.org/package/archive-sig) such as [archive-tar](http://hackage.haskell.org/package/archive-tar) or [archive-libarchive](http://hackage.haskell.org/package/archive-libarchive).+++As an example, you could add++```cabal+build-depends: archive-sig+ , archive-libarchive++mixins: archive-libarchive (Archive.FFI as Archive)+```++or++```cabal+build-depends: archive-sig+ , archive-tar++mixins: archive-tar (Archive.Tar as Archive)+```++in your `.cabal` file in the appropriate stanza, depending on whether you want+the `tar` or `libarchive` backend.
shake-bindist.cabal view
@@ -1,6 +1,6 @@ cabal-version: 2.0 name: shake-bindist-version: 1.0.1.0+version: 1.0.2.0 license: BSD3 license-file: LICENSE copyright: Copyright: (c) 2020 Vanessa McHale@@ -36,8 +36,9 @@ bytestring -any, archive-sig >=0.2.0.0, bz2 >=0.1.1.0,- zlib,- lzma+ zlib -any,+ lzma -any,+ brotli -any if flag(development) ghc-options: -Werror
src/Development/Shake/BinDist.hs view
@@ -4,19 +4,22 @@ , tarBz2 , tarGz , tarXz+ , tarBrotli -- * Actions , tarLzipA , tarZstdA , tarBz2A , tarGzA , tarXzA+ , tarBrotliA ) where -import Archive.Compression (packFromFilesAndCompress)+import Archive.Compression (packFromFilesAndCompress)+import qualified Codec.Compression.Brotli as Brotli import qualified Codec.Compression.BZip as Bz2 import qualified Codec.Compression.GZip as GZip+import qualified Codec.Compression.Lzma as Lzma import qualified Codec.Compression.Zstd.Lazy as Zstd-import qualified Codec.Compression.Lzma as Lzma import qualified Codec.Lzip as Lzip import qualified Data.ByteString.Lazy as BSL import Development.Shake hiding (action)@@ -63,8 +66,14 @@ tarXz :: [FilePath] -- ^ Files to pack up -> FilePattern -- ^ Resultant tarball -> Rules ()-tarXz = mkRule tarBz2A+tarXz = mkRule tarXzA +-- | @since 1.0.2.0+tarBrotli :: [FilePath] -- ^ Files to pack up+ -> FilePattern -- ^ Resultant tarball+ -> Rules ()+tarBrotli = mkRule tarBrotliA+ tarLzipA :: [FilePath] -- ^ Files to pack up -> FilePath -- ^ File name of resultant tarball -> Action ()@@ -76,17 +85,23 @@ tarZstdA = tarGenericA "tar-zstd" (Zstd.compress Zstd.maxCLevel) tarGzA :: [FilePath] -- ^ Files to pack up- -> FilePath -- ^ File name of resultant tarball- -> Action ()+ -> FilePath -- ^ File name of resultant tarball+ -> Action () tarGzA = tarGenericA "tar-gz" GZip.compress tarBz2A :: [FilePath] -- ^ Files to pack up- -> FilePath -- ^ File name of resultant tarball- -> Action ()+ -> FilePath -- ^ File name of resultant tarball+ -> Action () tarBz2A = tarGenericA "tar-bz2" Bz2.compress -- | @since 1.0.1.0 tarXzA :: [FilePath] -- ^ Files to pack up- -> FilePath -- ^ File name of resultant tarball- -> Action ()+ -> FilePath -- ^ File name of resultant tarball+ -> Action () tarXzA = tarGenericA "lzma" Lzma.compress++-- | @since 1.0.2.0+tarBrotliA :: [FilePath] -- ^ Files to pack up+ -> FilePath -- ^ File name of resultant tarball+ -> Action ()+tarBrotliA = tarGenericA "brotli" Brotli.compress