packages feed

tar 0.7.1.0 → 0.7.2.0

raw patch · 5 files changed

+21/−13 lines, 5 filesPVP ok

version bump matches the API change (PVP)

API changes (from Hackage documentation)

Files

Codec/Archive/Tar/PackAscii.hs view
@@ -10,7 +10,7 @@   , fromPosixString   , posixToByteString   , byteToPosixString-  , packAscii+  , packLatin1   , filePathToOsPath   , osPathToFilePath   ) where@@ -38,10 +38,10 @@ byteToPosixString :: ByteString -> PosixString byteToPosixString = PS.PosixString . Sh.toShort -packAscii :: HasCallStack => FilePath -> BS.Char8.ByteString-packAscii xs-  | all isAscii xs = BS.Char8.pack xs-  | otherwise = error $ "packAscii: only ASCII inputs are supported, but got " ++ xs+packLatin1 :: HasCallStack => FilePath -> BS.Char8.ByteString+packLatin1 xs+  | all isLatin1 xs = BS.Char8.pack xs+  | otherwise = error $ "packLatin1: only Latin-1 inputs are supported, but got " ++ xs  filePathToOsPath :: FilePath -> OS.OsPath filePathToOsPath = unsafePerformIO . OS.encodeFS
Codec/Archive/Tar/Types.hs view
@@ -218,6 +218,9 @@   }     deriving (Eq, Ord, Show) +defaultOwnership :: Ownership+defaultOwnership = Ownership "" "" 0 0+ -- | There have been a number of extensions to the tar file format over the -- years. They all share the basic entry fields and put more meta-data in -- different extended headers.@@ -286,7 +289,7 @@                          Directory -> directoryPermissions                          SymbolicLink _ -> symbolicLinkPermission                          _         -> ordinaryFilePermissions,-    entryOwnership   = Ownership "" "" 0 0,+    entryOwnership   = defaultOwnership,     entryTime        = 0,     entryFormat      = UstarFormat   }@@ -323,7 +326,7 @@     entryTarPath     = TarPath [PS.pstr|././@LongLink|] mempty,     entryContent     = OtherEntryType 'L' (LBS.fromStrict $ posixToByteString $ toPosixString tarpath) (fromIntegral $ length tarpath),     entryPermissions = ordinaryFilePermissions,-    entryOwnership   = Ownership "" "" 0 0,+    entryOwnership   = defaultOwnership,     entryTime        = 0,     entryFormat      = GnuFormat   }@@ -340,7 +343,7 @@     entryTarPath     = TarPath [PS.pstr|././@LongLink|] mempty,     entryContent     = OtherEntryType 'K' (LBS.fromStrict $ posixToByteString $ toPosixString $ linkTarget) (fromIntegral $ length linkTarget),     entryPermissions = ordinaryFilePermissions,-    entryOwnership   = Ownership "" "" 0 0,+    entryOwnership   = defaultOwnership,     entryTime        = 0,     entryFormat      = GnuFormat   }
Codec/Archive/Tar/Write.hs view
@@ -204,7 +204,7 @@ putPosixString n s = posixToByteString (PS.take n s) <> BS.replicate (n - PS.length s) 0x00  putString :: FieldWidth -> String -> BS.ByteString-putString n s = BS.take n (packAscii s) <> BS.replicate (n - length s) 0x00+putString n s = BS.take n (packLatin1 s) <> BS.replicate (n - length s) 0x00  {-# SPECIALISE putLarge :: FieldWidth -> Int64 -> BS.ByteString #-} putLarge :: (Bits a, Integral a) => FieldWidth -> a -> BS.ByteString
changelog.md view
@@ -1,3 +1,8 @@+## 0.7.2.0 Bodigrim <andrew.lelechenko@gmail.com> July 2026++  * Allow writing entries with strings containing the entire set of Latin-1 encoding,+    so that at least we can write any entry we can read.+ ## 0.7.1.0 Bodigrim <andrew.lelechenko@gmail.com> April 2026    * Support long file paths and symlinks in PAX format.
tar.cabal view
@@ -1,6 +1,6 @@ cabal-version:   2.2 name:            tar-version:         0.7.1.0+version:         0.7.2.0 license:         BSD-3-Clause license-file:    LICENSE author:          Duncan Coutts <duncan@community.haskell.org>@@ -56,10 +56,10 @@                  deepseq    >= 1.1  && < 1.6,                  directory  >= 1.3.8.0 && < 1.4,                  directory-ospath-streaming >= 0.2.1 && < 0.4,-                 file-io                < 0.2,+                 file-io                < 0.3,                  filepath   >= 1.4.100 && < 1.6,                  os-string  >= 2.0 && < 2.1,-                 time                  < 1.16,+                 time                  < 1.17,                  transformers          < 0.7,    exposed-modules:@@ -140,4 +140,4 @@                  bytestring >= 0.10,                  directory >= 1.2,                  temporary < 1.4,-                 tasty-bench >= 0.4 && < 0.5+                 tasty-bench >= 0.4 && < 0.6