packages feed

hstar 0.1.0.2 → 0.1.0.3

raw patch · 5 files changed

+117/−11 lines, 5 filesdep +snappy-lazy

Dependencies added: snappy-lazy

Files

CHANGELOG.md view
@@ -1,3 +1,7 @@+# 0.1.0.3++  * Add support for snappy (`.sz`) compressed archive with `with-snappy` flag+ # 0.1.0.2    * Add support for brotli (`.br`) compressed archives with `with-brotli` flag
hstar.cabal view
@@ -1,17 +1,19 @@ cabal-version:      2.0 name:               hstar-version:            0.1.0.2+version:            0.1.0.3 license:            BSD3 license-file:       LICENSE copyright:          Copyright: (c) 2019-2020 Vanessa McHale maintainer:         vamchale@gmail.com author:             Vanessa McHale+bug-reports:        https://github.com/vmchale/archive-backpack/issues synopsis:           Haskell version of tar CLI utility description:     Haskell implementation of the tar utility, demonstrating backpack  category:           Codec, Tar, Archive build-type:         Simple+data-files:         man/hstar.1 extra-source-files:     CHANGELOG.md     README.md@@ -37,6 +39,10 @@ flag with-brotli     description: Enable brotli compression support +flag with-snappy+    description: Enable snappy support+    default:     False+ executable hstar     main-is:            Main.hs     build-tool-depends: cpphs:cpphs -any@@ -64,11 +70,17 @@         lz4-hs >=0.1.1.0,         lzlib >=1.0.1.0 +    if flag(with-snappy)+        build-depends: snappy-lazy -any+     if flag(with-brotli)         build-depends: brotli -any      if flag(with-brotli)         cpp-options: -DBROTLI++    if flag(with-snappy)+        cpp-options: -DSNAPPY      if impl(ghc >=8.10)         ghc-options: -Wunused-packages
+ man/hstar.1 view
@@ -0,0 +1,72 @@+.\" Automatically generated by Pandoc 2.9.2.1+.\"+.TH "hstar (1)" "" "" "" ""+.hy+.SH NAME+.PP+hstar - An archiving tool+.SH DESCRIPTION+.PP+\f[B]hstar\f[R] is an archiving tool+.SH SYNOPSIS+.PP+hstar sanitize archive.tar.lz+.PP+hstar unpack src-dist-0.1.0.0.tar.zst+.SH SUBCOMMANDS+.PP+\f[B]unpack\f[R] - Unpack an archive+.PP+\f[B]pack-dir\f[R] - Pack a directory into an tarball+.PP+\f[B]pack\f[R] - Pack files into an archive+.PP+\f[B]pack-src\f[R] - Pack up a source directory, ignoring version+control+.PP+\f[B]sanitize\f[R] - Convert a tarball to a pax-compatible archive.+This reads the whole file into memory.+.SH OPTIONS+.TP+\f[B]-h\f[R] \f[B]--help\f[R]+Display help+.TP+\f[B]-V\f[R] \f[B]--version\f[R]+Display version information+.SH SUPPORTED FORMATS+.SS COMPRESSION+.IP \[bu] 2+gzip+.IP \[bu] 2+bzip2+.IP \[bu] 2+lzma+.IP \[bu] 2+lzip+.IP \[bu] 2+zstd+.IP \[bu] 2+lz4+.IP \[bu] 2+deflate+.IP \[bu] 2+brotli (optional)+.SH SHELL COMPLETIONS+.PP+To get shell completions in your current session:+.PP+\f[C]eval \[dq]$(hstar --bash-completion-script hstar)\[dq]\f[R]+.PP+Put this in your \f[C]\[ti]/.bashrc\f[R] or+\f[C]\[ti]/.bash_profile\f[R] to install them.+.SH BUGS+.PP+Please report any bugs you may come across to+http://github.com/vmchale/archive-backpack/issues.+.SH COPYRIGHT+.PP+Copyright 2020.+Vanessa McHale.+All Rights Reserved.+.SH AUTHORS+Vanessa McHale<vamchale@gmail.com>.
src/Compression.cpphs view
@@ -4,17 +4,20 @@                    ) where  #ifdef BROTLI-import qualified Codec.Compression.Brotli    as Brotli+import qualified Codec.Compression.Brotli     as Brotli #endif-import qualified Codec.Compression.BZip      as BZip-import qualified Codec.Compression.GZip      as GZip-import qualified Codec.Compression.Lzma      as Lzma-import qualified Codec.Compression.Zlib      as Zlib-import qualified Codec.Compression.Zstd.Lazy as Zstd-import qualified Codec.Lz4                   as Lz4-import           Codec.Lzip                  as Lzip-import qualified Data.ByteString.Lazy        as BSL-import           Data.List                   (isSuffixOf)+import qualified Codec.Compression.BZip       as BZip+import qualified Codec.Compression.GZip       as GZip+import qualified Codec.Compression.Lzma       as Lzma+#ifdef SNAPPY+import qualified Codec.Compression.Snappy.BSL as Snappy+#endif+import qualified Codec.Compression.Zlib       as Zlib+import qualified Codec.Compression.Zstd.Lazy  as Zstd+import qualified Codec.Lz4                    as Lz4+import           Codec.Lzip                   as Lzip+import qualified Data.ByteString.Lazy         as BSL+import           Data.List                    (isSuffixOf)  data Compressor = Lzma     | Lz@@ -26,6 +29,9 @@ #ifdef BROTLI     | Brotli #endif+#ifdef SNAPPY+    | Snappy+#endif     | None  compressionByFileExt :: FilePath -> Compressor@@ -46,6 +52,9 @@                         | ".tbr" `isSuffixOf` fp     = Brotli                         | ".tar.br" `isSuffixOf` fp  = Brotli #endif+#ifdef SNAPPY+                        | ".tar.sz" `isSuffixOf` fp  = Snappy+#endif                         | ".tar" `isSuffixOf` fp     = None                         | otherwise                  = error "Suffix not supported or invalid." @@ -60,6 +69,9 @@ #ifdef BROTLI decompressor Brotli  = Brotli.decompress #endif+#ifdef SNAPPY+decompressor Snappy  = Snappy.decompress+#endif decompressor None    = id  compressor :: Compressor -> (BSL.ByteString -> BSL.ByteString)@@ -72,5 +84,8 @@ compressor Lz4     = Lz4.compress #ifdef BROTLI compressor Brotli  = Brotli.compress+#endif+#ifdef SNAPPY+compressor Snappy  = Snappy.compress #endif compressor None    = id
src/Version.cpphs view
@@ -24,5 +24,8 @@ #ifdef BROTLI     ++ "brotli-hs: " ++ VERSION_brotli ++ "\n" #endif+#ifdef SNAPPY+    ++ "snappy-lazy-hs: " ++ VERSION_snappy_lazy ++ "\n"+#endif     ++ "bz2-hs: " ++ VERSION_bz2 ++ "\n"     ++ "bz2: " ++ bZ2BzlibVersion