diff --git a/Codec/Archive/Tar/PackAscii.hs b/Codec/Archive/Tar/PackAscii.hs
--- a/Codec/Archive/Tar/PackAscii.hs
+++ b/Codec/Archive/Tar/PackAscii.hs
@@ -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
diff --git a/Codec/Archive/Tar/Types.hs b/Codec/Archive/Tar/Types.hs
--- a/Codec/Archive/Tar/Types.hs
+++ b/Codec/Archive/Tar/Types.hs
@@ -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
   }
diff --git a/Codec/Archive/Tar/Write.hs b/Codec/Archive/Tar/Write.hs
--- a/Codec/Archive/Tar/Write.hs
+++ b/Codec/Archive/Tar/Write.hs
@@ -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
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -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.
diff --git a/tar.cabal b/tar.cabal
--- a/tar.cabal
+++ b/tar.cabal
@@ -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
