1Oct 13, 2024: libarchive 3.7.7 released 2 3Sep 23, 2024: libarchive 3.7.6 released 4 5Sep 13, 2024: libarchive 3.7.5 released 6 7Apr 26, 2024: libarchive 3.7.4 released 8 9Apr 08, 2024: libarchive 3.7.3 released 10 11Sep 12, 2023: libarchive 3.7.2 released 12 13Jul 29, 2023: libarchive 3.7.1 released 14 15Jul 18, 2023: libarchive 3.7.0 released 16 17Jul 14, 2023: bsdunzip port from FreeBSD 18 19Dec 07, 2022: libarchive 3.6.2 released 20 21Apr 08, 2022: libarchive 3.6.1 released 22 23Feb 09, 2022: libarchive 3.6.0 released 24 25Feb 08, 2022: libarchive 3.5.3 released 26 27Aug 22, 2021: libarchive 3.5.2 released 28 29Dec 26, 2020: libarchive 3.5.1 released 30 31Dec 01, 2020: libarchive 3.5.0 released 32 33Oct 14, 2020: Support for system extended attributes 34 35May 20, 2020: libarchive 3.4.3 released 36 37Apr 30, 2020: Support for pzstd compressed files 38 39Apr 16, 2020: Support for RHT.security.selinux tar extended attribute 40 41Feb 11, 2020: libarchive 3.4.2 released 42 43Jan 23, 2020: Important fixes for writing XAR archives 44 45Jan 20, 2020: New tar option: --safe-writes (atomical file extraction) 46 47Jan 03, 2020: Support mbed TLS (PolarSSL) as optional crypto provider 48 49Dec 30, 2019: libarchive 3.4.1 released 50 51Dec 11, 2019: New pax write option "xattrhdr" 52 53Nov 17, 2019: Unicode filename support for reading lha/lzh archives 54 55Jun 11, 2019: libarchive 3.4.0 released 56 57May 18, 2019: Fixes for reading Android APK and JAR archives 58 59Apr 16, 2019: Support for non-recursive list and extract 60 61Apr 14, 2019: New tar option: --exclude-vcs 62 63Mar 27, 2019: Support for file and directory symlinks on Windows 64 65Mar 12, 2019: Important fixes for storing file attributes and flags 66 67Jan 20, 2019: Support for xz, lzma, ppmd8 and bzip2 decompression in ZIP files 68 69Oct 06, 2018: RAR 5.0 reader 70 71Sep 03, 2018: libarchive 3.3.3 released 72 73Jul 19, 2018: Avoid super-linear slowdown on malformed mtree files 74 75Jan 27, 2018: Many fixes for building with Visual Studio 76 77Oct 19, 2017: NO_OVERWRITE doesn't change existing directory attributes 78 79Aug 12, 2017: New support for Zstandard read and write filters 80 81Jul 09, 2017: libarchive 3.3.2 released 82 83Mar 16, 2017: NFSv4 ACL support for Linux (librichacl) 84 85Feb 26, 2017: libarchive 3.3.1 released 86 Security & Feature release 87 88Feb 19, 2017: libarchive 3.3.0 released 89 Security & Feature release 90 91Jan 29, 2017: Limited NFSv4 ACL support for Mac OS (Darwin) 92 93Jan 10, 2017: POSIX.1e and NFSv4 ACL support for Solaris and derivates 94 95Dec 27, 2016: NFSv4 ACL read and write support for pax 96 Deprecated functions: archive_entry_acl_text(), archive_entry_acl_text_w() 97 98Nov, 2016: libarchive is now being tested by the OSS-Fuzz project 99 100Oct 26, 2016: Remove liblzmadec support 101 102Oct 23, 2016: libarchive 3.2.2 released 103 Security release 104 105Jun 20, 2016: libarchive 3.2.1 released 106 This fixes a handful of security and other critical issues with 3.2.0 107 108May 01, 2016: libarchive 3.2.0 released 109 110Apr 09, 2016: libarchive 3.1.901a released 111 Another test release in preparation for 3.2.0 112 113Feb 13, 2016: libarchive 3.1.900a released 114 This is a test release in preparation for 3.2.0 115 116Oct 21, 2015: Preliminary port to OSF 117 118Apr 11, 2015: libarchive's issue tracker is now hosted at GitHub. 119 https://github.com/libarchive/libarchive/issues 120 121Early 2015: Many fixes to crash and overflow bugs thanks to Hanno Boeck 122 123Oct 13, 2014: Zip encryption and decryption support 124 125Aug 13, 2014: Add support for lz4 compression. 126 127Jun 10, 2014: Add warc format support 128 129May 3, 2014: Add experimental Zip streaming extension 130 131Apr 6, 2014: Add bsdcat command-line tool 132 133Jan 12, 2014: Add Zip64 support 134 135Dec 1, 2013: Rewrite Zip write logic 136 137Jul 1, 2013: Add ability to detect encrypted entries for many formats 138 (This does not add the ability to *decrypt* those entries, however) 139 140Feb 23, 2013: "raw" write support added 141 142Feb 09, 2013: libarchive 3.1.2 released 143 144Jan 28, 2013: libarchive's new website moved to http://www.libarchive.org. 145 146Jan 13, 2013: libarchive 3.1.1 released 147 148Jan 13, 2013: libarchive 3.1.0 released 149 150Dec 07, 2012: Implement functions to manually set the format and filters used. 151 152Nov 11, 2012: Add support for __MACOSX directory in Zip archives, which resource 153 forks are stored in. 154 155Oct 20, 2012: Add support for writing v7 tar format. 156 157Oct 09, 2012: Add support for grzip compression. 158 159Oct 07, 2012: Introduce b64encode filter. 160Oct 07, 2012: Introduce uuencode filter. 161 162Oct 06, 2012: Add support for lzop. 163 164Sep 27, 2012: Implement function used to seek within data blocks. 165 (Currently only supported for uncompressed RAR archives). 166 167Apr 22, 2012: Add basic archive read and write filter support for lrzip. 168 169Mar 27, 2012: libarchive 3.0.4 released 170 171Feb 05, 2012: libarchive development now hosted at GitHub. 172 http://libarchive.github.com/ 173Feb 05, 2012: libarchive's issue tracker remains at Google Code. 174 http://code.google.com/p/libarchive/issues/list 175Feb 05, 2012: libarchive's mailing lists remain at Google Groups. 176 177Dec 24, 2011: libarchive 3.0.2 released 178Dec 23, 2011: Various fixes merged from FreeBSD 179Dec 23, 2011: Symlink support in Zip reader and writer 180Dec 23, 2011: Robustness fixes to 7Zip reader 181 182Nov 27, 2011: libarchive 3.0.1b released 183 184Nov 26, 2011: 7Zip reader 185Nov 26, 2011: Small fixes to ISO and Zip to improve robustness with corrupted input 186Nov 24, 2011: Improve streaming Zip reader's support for uncompressed entries 187Nov 20, 2011: New seeking Zip reader supports SFX Zip archives 188Nov 20, 2011: Build fixes on Windows 189 190Nov 13, 2011: libarchive 3.0.0a released 191 192Nov 06, 2011: Update shared-library version calculations for libarchive 3.x 193Sep 04, 2011: Fix tar -s; follow GNU tar for controlling hardlink/symlink substitutions 194Aug 18, 2011: Fix reading ISO images built by NetBSD's mkisofs 195Aug 15, 2011: Old archive_read_support_compression_XXX functions are deprecated and 196 will disappear in libarchive 4.0. 197Jun 26, 2011: RAR reader 198Jun 16, 2011: Add tar:compat-2x option to emulate broken libarchive 2.x 199 handling of pax UTF-8 headers 200Apr 25, 2011: Refactor read_open() into a collection of single-item setters; 201 support the old interfaces as wrappers 202Apr 12, 2011: Split disk writer into separate POSIX and Windows implementations 203Apr 10, 2011: Improvements to character translations on Windows. 204Mar 30, 2011: More work to return errors instead of calling abort() 205Mar 23, 2011: Add charset option to many writers to control MBCS filenames 206Mar 17, 2011: Overhauled support for per-format extension options 207Mar 17, 2011: Track character set used for mbcs strings, support 208 translating to/from user-specified locale 209Mar 09, 2011: Recognize mtree files without requiring a signature 210Mar 06, 2011: Use iconv to convert to/from Unicode instead of making bad 211 assumptions about the C90 character set translation functions 212Feb 17, 2011: Fixes for AIX, TRU64, and other platforms 213Dec 22, 2010: CAB reader 214Dec 20, 2010: LHA/LZH reader 215Jul 03, 2010: minitar example demonstrates archive_read_disk directory traversal 216Jun 29, 2010: Many improvements to ISO reader compatibility 217Jun 26, 2010: Use larger buffers when copy files into an archive 218Jun 18, 2010: Reimplement Mac OS extensions in libarchive 219Jun 09, 2010: archive_read_disk now supports traversals 220May 28, 2010: XAR writer 221May 16, 2010: Fix ^T handling; don't exit on interrupted reads and writes 222May 09, 2010: Improved detection of platform-specific crypto support 223May 04, 2010: lzip read and write filters 224May 01, 2010: New options: tar --gid --gname --uid --uname 225Apr 28, 2010: Use Red-black tree for ISO reader/writer to improve performance 226Apr 17, 2010: Minimal writer for legacy GNU tar format 227Mar 12, 2010: Don't dereference symlinks on Linux when reading ACLs. 228Mar 06, 2010: Fix build when an older libarchive is already installed 229Feb 28, 2010: Relax handling of state failures; misuse by clients now generally 230 results in a sticky ARCHIVE_FATAL rather than a visit to abort() 231Feb 25, 2010: ISO writer 232Feb 21, 2010: Split many man pages into smaller chunks. 233Feb 21, 2010: Performance: Cheat on block sizes when reading archives from disk. 234Feb 21, 2010: Use int64_t instead of off_t, dev_t, ino_t, uid_t, and gid_t 235Feb 20, 2010: Document new ACL functions. 236Feb 19, 2010: Support multiple write filters 237Feb 07, 2010: Remove some legacy libarchive 1.x APIs 238Feb 04, 2010: Read afio headers 239Feb 02, 2010: Archive sparse files compatibly with GNU tar 240Feb 01, 2010: Integrate Apple extensions for Mac OS extended attributes into bsdtar 241Jan 31, 2010: Support cpio -V 242 243Feb 04, 2010: libarchive 2.8.0 released 244Jan 17, 2010: Fix error handling for 'echo nonexistent | cpio -o' 245Jan 17, 2010: Don't use futimes() on Cygwin 246 247Jan 02, 2010: libarchive 2.7.902a released (test release for 2.8) 248Jan 02, 2010: Fix tar/test/test_windows on MinGW 249Jan 02, 2010: Fix memory leaks in libarchive tests 250Jan 01, 2010: Fix memory leak when filter startup fails 251 252Dec 27, 2009: libarchive 2.7.901a released (test release for 2.8) 253 254Aug 04, 2009: libarchive 2.7.1 released 255Jul 20, 2009: Suppress bogus warning about unxz 256Jul 19, 2009: Support Cygwin 1.7 257Jun 11, 2009: Support lzma/xz files compressed with larger buffer sizes. 258May 24, 2009: Handle gzip files signed with OpenBSD "gzsig" program. 259May 07, 2009: Avoid false failures when reading from pipe. 260 261Apr 16, 2009: libarchive 2.7.0 released 262 263Apr 10, 2009: libarchive 2.6.992a released 264Apr 09, 2009: Fix SIGPIPE issue building with MSVC. 265Apr 09, 2009: Fix several minor memory leaks in libarchive and libarchive_test 266 267Apr 08, 2009: libarchive 2.6.991a released 268Apr 07, 2009: Additional tests added to bsdcpio_test 269 270Apr 01, 2009: libarchive 2.6.990a released 271Apr 01, 2009: Use command-line gunzip, bunzip2, unxz, unlzma for 272 decompression if the library is built without suitable 273 libraries. The setup functions return ARCHIVE_WARN 274 in this case so clients can adapt if necessary. 275Apr 01, 2009: Use getpw*_r and getgr*_r functions for thread-safety. 276Mar 24, 2009: Add archive_read_next_header2(), which is up to 25% 277 more efficient for some clients; from Brian Harring. 278Mar 22, 2009: PDF versions of manpages are now included in the distribution. 279Mar, 2009: Major work to improve Cygwin build by Charles Wilson. 280Feb/Mar, 2009: Major work on cmake build support, mostly by Michihiro NAKAJIMA. 281Feb/Mar, 2009: Major work on Visual Studio support by Michihiro NAKAJIMA. 282 All tests now pass. 283Feb 25, 2009: Fix Debian Bug #516577 284Feb 21, 2009: Yacc is no longer needed to build; date parser rewritten in C. 285Jan/Feb, 2009: Mtree work by Michihiro. 286Feb, 2009: Joliet support by Andreas Henriksson. 287Jan/Feb, 2009: New options framework by Michihiro. 288Feb, 2009: High-res timestamps on Tru64, AIX, and GNU Hurd, by Björn Jacke. 289Jan 18, 2009: Extended attributes work on FreeBSD and Linux now with pax format. 290Jan 07, 2009: New archive_read_disk_entry_from_file() knows about ACLs, 291 extended attributes, etc so that bsdtar and bsdcpio don't require 292 such system-specific knowledge. 293Jan 03, 2009: Read filter system extensively refactored. In particular, 294 read filter pipelines are now built out automatically and individual 295 filters should be much easier to implement. Documentation on the 296 Googlecode Wiki explains how to implement new filters. 297Dec 28, 2008: Many Windows/Visual Studio fixes from Michihiro NAKAJIMA. 298 299Dec 28, 2008: Main libarchive development moved from FreeBSD Perforce 300 server to Google Code. This should make it easier for more 301 people to participate in libarchive development. 302 303Dec 28, 2008: libarchive 2.6.0 released 304Dec 25, 2008: libarchive 2.5.905a released 305Dec 10, 2008: libarchive 2.5.904a released 306Dec 04, 2008: libarchive 2.5.903a released 307Nov 09, 2008: libarchive 2.5.902a released 308Nov 08, 2008: libarchive 2.5.901a released 309Nov 08, 2008: Start of pre-release testing for libarchive 2.6 310 311Nov 07, 2008: Read filter refactor: The decompression routines just 312 consume and produce arbitrarily-sized blocks. The reblocking 313 from read_support_compression_none() has been pulled into the 314 read core. Also, the decompression bid now makes multiple 315 passes and stacks read filters. 316Oct 21, 2008: bsdcpio: New command-line parser. 317Oct 19, 2008: Internal read_ahead change: short reads are now an error 318Oct 06, 2008: bsdtar: option parser no longer uses getopt_long(), 319 gives consistent option parsing on all platforms. 320Sep 19, 2008: Jaakko Heinonen: shar utility built on libarchive 321Sep 17, 2008: Pedro Giffuni: birthtime support 322Sep 17, 2008: Miklos Vajna: lzma reader and test. Note: I still have 323 some concerns about the auto-detection (LZMA file format 324 doesn't support auto-detection well), so this is not yet 325 enabled under archive_read_support_compression_all(). For 326 now, you must call archive_read_support_compression_lzma() if 327 you want LZMA read support. 328Sep 11, 2008: Ivailo Petrov: Many fixes to Windows build, new solution files 329Jul 26, 2008: archive_entry now tracks which values have not been set. 330 This helps zip extraction (file size is often "unknown") and 331 time restores (tar usually doesn't know atime). 332Jul 26, 2008: Joerg Sonnenberger: Performance improvements to shar writer 333Jul 25, 2008: Joerg Sonnenberger: mtree write support 334 335Jul 02, 2008: libarchive 2.5.5 released 336 337Jul 02, 2008: libarchive 2.5.5b released 338Jul 01, 2008: bsdcpio is being used by enough people, we can call it 1.0.0 now 339Jun 20, 2008: bsdcpio: If a -l link fails with EXDEV, copy the file instead 340Jun 19, 2008: bsdcpio: additional long options for better GNU cpio compat 341Jun 15, 2008: Many small portability and bugfixes since 2.5.4b. 342 343May 25, 2008: libarchive 2.5.4b released 344May 21, 2008: Joerg Sonnenberger: fix bsdtar hardlink handling for newc format 345 346May 21, 2008: More progress on Windows building. Thanks to "Scott" 347 for the Windows makefiles, thanks to Kees Zeelenberg for 348 code contributions. 349 350May 21, 2008: Fix a number of non-exploitable integer and buffer overflows, 351 thanks to David Remahl at Apple for pointing these out. 352 353May 21, 2008: Colin Percival: SIGINFO or SIGUSR1 to bsdtar prints progress info 354 355May 16, 2008: bsdtar's test harness no longer depends on file ordering. 356 This was causing spurious test failures on a lot of systems. 357 Thanks to Bernhard R. Link for the diagnosis. 358 359May 14, 2008: Joerg Sonnenberger: -s substitution support for bsdtar 360 361May 13, 2008: Joerg Sonnenberger: Many mtree improvements 362 363May 11, 2008: Joerg Sonnenberger: fix hardlink extraction when 364 hardlinks have different permissions from original file 365 366April 30, 2008: Primary libarchive work has been moved into the FreeBSD 367 project's Perforce repository: http://perforce.freebsd.org/ 368 The libarchive project can be browsed at 369 //depot/user/kientzle/libarchive-portable 370 Direct link: http://preview.tinyurl.com/46mdgr 371 372May 04, 2008: libarchive 2.5.3b released 373 * libarchive: Several fixes to link resolver to address bsdcpio crashes 374 * bsdcpio: -p hardlink handling fixes 375 * tar/pax: Ensure ustar dirnames end in '/'; be more careful about 376 measuring filenames when deciding what pathname fields to use 377 * libarchive: Mark which entry strings are set; be accurate about 378 distinguishing empty strings ("") from unset ones (NULL) 379 * tar: Don't crash reading entries with empty filenames 380 * libarchive_test, bsdtar_test, bsdcpio_test: Better defaults: 381 run all tests, delete temp dirs, summarize repeated failures 382 * -no-undefined to libtool for Cygwin 383 * libarchive_test: Skip large file tests on systems with 32-bit off_t 384 * iso9660: Don't bother trying to find the body of an empty file; 385 this works around strange behavior from some ISO9660 writers 386 * tar: allow -r -T to be used together 387 * tar: allow --format with -r or -u 388 * libarchive: Don't build archive.h 389 390May 04, 2008: Simplified building: archive.h is no longer constructed 391 This may require additional #if conditionals on some platforms. 392 393Mar 30, 2008: libarchive 2.5.1b released 394 395Mar 15, 2008: libarchive 2.5.0b released 396Mar 15, 2008: bsdcpio now seems to correctly write hardlinks into newc, 397 ustar, and old cpio archives. Just a little more testing before 398 bsdcpio 1.0 becomes a reality. 399Mar 15, 2008: I think the new linkify() interface is finally handling 400 all known hardlink strategies. 401Mar 15, 2008: Mtree read fixes from Joerg Sonnenberger. 402Mar 15, 2008: Many new bsdtar and bsdcpio options from Joerg Sonnenberger. 403Mar 15, 2008: test harnesses no longer require uudecode; they 404 now have built-in decoding logic that decodes the reference 405 files as they are needed. 406 407Mar 14, 2008: libarchive 2.4.14 released; identical to 2.4.13 except for 408 a point fix for gname/uname mixup in pax format that was introduced 409 with the UTF-8 fixes. 410 411Feb 26, 2008: libarchive 2.4.13 released 412Feb 25, 2008: Handle path, linkname, gname, or uname that can't be converted 413 to/from UTF-8. Implement "hdrcharset" attribute from SUS-2008. 414Feb 25, 2008: Fix name clash on NetBSD. 415Feb 18, 2008: Fix writing empty 'ar' archives, per Kai Wang 416Feb 18, 2008: [bsdtar] Permit appending on block devices. 417Feb 09, 2008: New "linkify" resolver to help with newc hardlink writing; 418 bsdcpio still needs to be converted to use this. 419Feb 02, 2008: Windows compatibility fixes from Ivailo Petrov, Kees Zeelenberg 420Jan 30, 2008: Ignore hardlink size for non-POSIX tar archives. 421 422Jan 22, 2008: libarchive 2.4.12 released 423Jan 22, 2008: Fix bad padding when writing symlinks to newc cpio archives. 424Jan 22, 2008: Verify bsdcpio_test by getting it to work against GNU cpio 2.9. 425 bsdcpio_test complains about missing options (-y and -z), format 426 of informational messages (--version, --help), and a minor formatting 427 issue in odc format output. After this update, bsdcpio_test uncovered 428 several more cosmetic issues in bsdcpio, all now fixed. 429Jan 22, 2008: Experimental support for self-extracting Zip archives. 430Jan 22, 2008: Extend hardlink restore strategy to work correctly with 431 hardlinks extracted from newc cpio files. (Which store the body 432 only with the last occurrence of a link.) 433 434Dec 30, 2007: libarchive 2.4.11 released 435Dec 30, 2007: Fixed a compile error in bsdcpio on some systems. 436 437Dec 29, 2007: libarchive 2.4.10 released 438Dec 29, 2007: bsdcpio 0.9.0 is ready for wider use. 439Dec 29, 2007: Completed initial test harness for bsdcpio. 440 441Dec 22, 2007: libarchive 2.4.9 released 442Dec 22, 2007: Implement the remaining options for bsdcpio: -a, -q, -L, -f, 443 pattern selection for -i and -it. 444 445Dec 13, 2007: libarchive 2.4.8 released 446Dec 13, 2007: gzip and bzip2 compression now handle zero-byte writes correctly, 447 Thanks to Damien Golding for bringing this to my attention. 448 449Dec 12, 2007: libarchive 2.4.7 released 450 451Dec 10, 2007: libarchive 2.4.6 released 452Dec 09, 2007: tar/test/test_copy.c verifies "tar -c | tar -x" copy pipeline 453Dec 07, 2007: Fix a couple of minor memory leaks. 454 455Dec 04, 2007: libarchive 2.4.5 released 456Dec 04, 2007: Fix cpio/test/test_write_odc by setting the umask first. 457 458Dec 03, 2007: libarchive 2.4.4 released 459Dec 03, 2007: New configure options --disable-xattr and --disable-acl, 460 thanks to Samuli Suominen. 461 462Dec 03, 2007: libarchive 2.4.3 released 463Dec 03, 2007: Thanks to Lapo Luchini for sending me a ZIP file that 464 libarchive couldn't handle. Fixed a bug in handling of 465 "length at end" flags in ZIP files. 466Dec 03, 2007: Fixed bsdcpio -help, bsdtar -help tests. 467Dec 02, 2007: First cut at real bsdtar test harness. 468 469Dec 02, 2007: libarchive 2.4.2 released 470 471Dec 02, 2007: libarchive 2.4.1 released 472Dec 02, 2007: Minor fixes, rough cut of mdoc-to-man conversion for 473 man pages. 474 475Oct 30, 2007: libarchive 2.4.0 released 476Oct 30, 2007: Minor compile fix thanks to Joerg Schilling. 477Oct 30, 2007: Only run the format auction once at the beginning of the 478 archive. This is simpler and supports better error recovery. 479Oct 29, 2007: Test support for very large entries in tar archives: 480 libarchive_test now exercises entries from 2GB up to 1TB. 481 482Oct 27, 2007: libarchive 2.3.5 released 483Oct 27, 2007: Correct some unnecessary internal data copying in the 484 "compression none" reader and writer; this reduces user time 485 by up to 2/3 in some tests. (Thanks to Jan Psota for 486 publishing his performance test results to GNU tar's bug-tar 487 mailing list; those results pointed me towards this problem.) 488Oct 27, 2007: Fix for skipping archive entries that are exactly 489 a multiple of 4G on 32-bit platforms. 490Oct 25, 2007: Fix for reading very large (>8G) tar archives; this was 491 broken when I put in support for new GNU tar sparse formats. 492Oct 20, 2007: Initial work on new pattern-matching code for cpio; I 493 hope this eventually replaces the code currently in bsdtar. 494 495Oct 08, 2007: libarchive 2.3.4 released 496Oct 05, 2007: Continuing work on bsdcpio test suite. 497Oct 05, 2007: New cpio.5 manpage, updates to "History" of bsdcpio.1 and 498 bsdtar.1 manpages. 499Oct 05, 2007: Fix zip reader to immediately return EOF if you try 500 to read body of non-regular file. In particular, this fixes 501 bsdtar extraction of zip archives. 502 503Sep 30, 2007: libarchive 2.3.3 released 504Sep 26, 2007: Rework Makefile.am so that the enable/disable options 505 actually do the right things. 506Sep 26, 2007: cpio-odc and cpio-newc archives no longer write bodies 507 for non-regular files. 508Sep 26, 2007: Test harness for bsdcpio is in place, needs more tests written. 509 This is much nicer than the ragtag collection of test scripts 510 that bsdtar has. 511 512Sep 20, 2007: libarchive 2.3.2 released 513Sep 20, 2007: libarchive 2.3.1 broke bsdtar because the archive_write_data() 514 fix was implemented incorrectly. 515 516Sep 16, 2007: libarchive 2.3.1 released 517Sep 16, 2007: Many fixes to bsdcpio 0.3: handle hardlinks with -p, recognize 518 block size on writing, fix a couple of segfaults. 519Sep 16, 2007: Fixed return value from archive_write_data() when used 520 with archive_write_disk() to match the documentation and other 521 instances of this same function. 522Sep 15, 2007: Add archive_entry_link_resolver, archive_entry_strmode 523 524Sep 11, 2007: libarchive 2.2.8 released 525Sep 09, 2007: bsdcpio 0.2 supports most (not yet all) of the old POSIX spec. 526 527Sep 01, 2007: libarchive 2.2.7 released 528Aug 31, 2007: Support for reading mtree files, including an mtree.5 manpage 529 (A little experimental still.) 530Aug 18, 2007: Read gtar 1.17 --posix --sparse entries. 531Aug 13, 2007: Refined suid/sgid restore handling; it is no longer 532 an error if suid/sgid bits are dropped when you request 533 perm restore but don't request owner restore. 534Aug 06, 2007: Use --enable-bsdcpio if you want to try bsdcpio 535 536Aug 05, 2007: libarchive 2.2.6 released 537Aug 05, 2007: New configure option --disable-bsdtar, thanks to Joerg 538 Sonnenberger. 539Aug 05, 2007: Several bug fixes from FreeBSD CVS repo. 540 541Jul 13, 2007: libarchive 2.2.5 released 542 543Jul 12, 2007: libarchive 2.2.4 released 544Jul 12, 2007: Thanks to Colin Percival's help in diagnosing and 545 fixing several critical security bugs. Details available at 546 http://security.freebsd.org/advisories/FreeBSD-SA-07:05.libarchive.asc 547 548May 26, 2007: libarchive 2.2.3 released 549May 26, 2007: Fix memory leaks in ZIP reader and shar writer, add some 550 missing system headers to archive_entry.h, dead code cleanup 551 from Colin Percival, more tests for gzip/bzip2, fix an 552 EOF anomaly in bzip2 decompression. 553 554May 12, 2007: libarchive 2.2.2 released 555May 12, 2007: Fix archive_write_disk permission restore by cloning 556 entry passed into write_header so that permission info is 557 still available at finish_entry time. (archive_read_extract() 558 worked okay because it held onto the passed-in entry, but 559 direct consumers of archive_write_disk would break). This 560 required fixing archive_entry_clone(), which now works and has 561 a reasonably complete test case. 562May 10, 2007: Skeletal cpio implementation. 563 564May 06, 2007: libarchive 2.2.1 released 565May 06, 2007: Flesh out a lot more of test_entry.c so as to catch 566 problems such as the device node breakage before releasing <sigh>. 567May 05, 2007: Fix a bad bug introduced in 2.1.9 that broke device 568 node entries in tar archives. 569May 03, 2007: Move 'struct stat' out of archive_entry core as well. 570 This removes some portability headaches and fixes a bunch 571 of corner cases that arise when manipulating archives on 572 dissimilar systems. 573 574Apr 30, 2007: libarchive 2.1.10 released 575Apr 31, 2007: Minor code cleanup. 576 577Apr 24, 2007: libarchive 2.1.9 released 578Apr 24, 2007: Fix some recently-introduced problems with libraries 579 (Just let automake handle it and it all works much better.) 580 Finish isolating major()/minor()/makedev() in archive_entry.c. 581 582Apr 23, 2007: libarchive 2.1.8 released 583Apr 23, 2007: Minor fixes found from building on MacOS X 584 585Apr 22, 2007: libarchive 2.1.7 released 586Apr 22, 2007: Eliminated all uses of 'struct stat' from the 587 format readers/writers. This should improve portability; 588 'struct stat' is now only used in archive_entry and in 589 code that actually touches the disk. 590 591Apr 17, 2007: libarchive 2.1.6 released 592 Libarchive now compiles and passes all tests on Interix. 593 594Apr 16, 2007: libarchive 2.1.5 released 595 596Apr 15, 2007: libarchive 2.1b2 released 597Apr 15, 2007: New libarchive_internals.3 documentation of internal APIs. 598 Not complete, but should prove helpful. 599Apr 15, 2007: Experimental "read_compress_program" and "write_compress_program" 600 for using libarchive with external compression. Not yet 601 well tested, and likely has portability issues. Feedback 602 appreciated. 603 604Apr 14, 2007: libarchive 2.0.31 released 605Apr 14, 2007: More fixes for Interix, more 'ar' work 606 607Apr 14, 2007: libarchive 2.0.30 released 608Apr 13, 2007: libarchive now enforces trailing '/' on dirs 609 written to tar archives 610 611Apr 11, 2007: libarchive 2.0.29 released 612Apr 11, 2007: Make it easier to statically configure for different platforms. 613Apr 11, 2007: Updated config.guess, config.sub, libtool 614 615Apr 06, 2007: libarchive 2.0.28 released 616Apr 06, 2007: 'ar' format read/write support thanks to Kai Wang. 617 618Apr 01, 2007: libarchive 2.0.27 released 619Mar 31, 2007: Several minor fixes from Colin Percival and Joerg Sonnenberger. 620 621Mar 12, 2007: libarchive 2.0.25 released 622Mar 12, 2007: Fix broken --unlink flag. 623 624Mar 11, 2007: libarchive 2.0.24 released 625Mar 10, 2007: Correct an ACL blunder that causes any ACL with an entry 626 that refers to a non-existent user or group to not be restored correctly. 627 The fix both makes the parser more tolerant (so that archives created 628 with the buggy ACLs can be read now) and corrects the ACL formatter. 629Mar 10, 2007: More work on test portability to Linux. 630 631Mar 10, 2007: libarchive 2.0.22 released 632Mar 10, 2007: Header cleanups; added linux/fs.h, removed 633 some unnecessary headers, added #include guards in bsdtar. 634 If you see any obvious compile failures from this, let me know. 635Mar 10, 2007: Work on bsdtar test scripts: not yet robust enough 636 to enable as part of "make check", but getting better. 637Mar 10, 2007: libarchive now returns ARCHIVE_FAILED when 638 a header write fails in a way that only affects this item. 639 Less bad than ARCHIVE_FATAL, but worse than ARCHIVE_WARN. 640 641Mar 07, 2007: libarchive 2.0.21 released 642Mar 07, 2007: Add some ACL tests (only for the system-independent 643 portion of the ACL support for now). 644Mar 07, 2007: tar's ability to read ACLs off disk got 645 turned off for FreeBSD; re-enable it. (ACL restores and 646 libarchive support for storing/reading ACLs from pax 647 archives was unaffected.) 648 649Mar 02, 2007: libarchive 2.0.20 released 650Mar 2, 2007: It's not perfect, but it's pretty good. 651 Libarchive 2.0 is officially out of beta. 652 653Feb 28, 2007: libarchive 2.0b17 released 654Feb 27, 2007: Make the GID restore checks more robust by checking 655 whether the current user has too few or too many privileges. 656 657Feb 26, 2007: libarchive 2.0b15 released 658Feb 26, 2007: Don't lose symlinks when extracting from ISOs. 659 Thanks to Diego "Flameeyes" Pettenò for telling me about the 660 broken testcase on Gentoo that (finally!) led me to the cause 661 of this long-standing bug. 662 663Feb 26, 2007: libarchive 2.0b14 released 664Feb 26, 2007: Fix a broken test on platforms that lack lchmod(). 665 666Feb 25, 2007: libarchive 2.0b13 released 667Feb 25, 2007: Empty archives were being written as empty files, 668 without a proper end-of-archive marker. Fixed. 669 670Feb 23, 2007: libarchive 2.0b12 released 671Feb 22, 2007: Basic security checks added: _EXTRACT_SECURE_NODOTDOT 672 and _EXTRACT_SECURE_SYMLINK. These checks used to be in bsdtar, 673 but they belong down in libarchive where they can be used by 674 other tools and where they can be better optimized. 675 676Feb 11, 2007: libarchive 2.0b11 released 677Feb 10, 2007: Fixed a bunch of errors in libarchive's handling 678 of EXTRACT_PERM and EXTRACT_OWNER, especially relating 679 to SUID and SGID bits. 680 681Jan 31, 2007: libarchive 2.0b9 released 682Jan 31, 2007: Added read support for "empty" archives as a 683 distinct archive format. Bsdtar uses this to handle, e.g., 684 "touch foo.tar; tar -rf foo.tar" 685 686Jan 22, 2007: libarchive 2.0b6 released 687Jan 22, 2007: archive_write_disk API is now in place. It provides 688 a finer-grained interface than archive_read_extract. In particular, 689 you can use it to create objects on disk without having an archive 690 around (just feed it archive_entry objects describing what you 691 want to create), you can override the uname/gname-to-uid/gid lookups 692 (minitar uses this to avoid getpwXXX() and getgrXXX() bloat). 693 694Jan 09, 2007: libarchive 2.0a3 released 695Jan 9, 2007: archive_extract is now much better; it handles the 696 most common cases with a minimal number of system calls. 697 Some features still need a lot of testing, especially corner 698 cases involving objects that already exist on disk. I expect 699 the next round of API overhaul will simplify building test cases. 700Jan 9, 2007: a number of fixes thanks to Colin Percival, especially 701 corrections to the skip() framework and handling of large files. 702Jan 9, 2007: Fixes for large ISOs. The code should correctly handle 703 very large ISOs with entries up to 4G. Thanks to Robert Sciuk 704 for pointing out these issues. 705 706Sep 05, 2006: libarchive 1.3.1 released 707Sep 5, 2006: Bump version to 1.3 for new I/O wrappers. 708Sep 4, 2006: New memory and FILE read/write wrappers. 709Sep 4, 2006: libarchive test harness is now minimally functional; 710 it's located a few minor bugs in error-handling logic 711 712Aug 17, 2006: libarchive 1.2.54 released 713Aug 17, 2006: Outline ABI changes for libarchive 2.0; these 714 are protected behind #ifdef's until I think I've found everything 715 that needs to change. 716Aug 17, 2006: Fix error-handling in archive_read/write_close() 717 They weren't returning any errors before. 718Aug 17, 2006: Fix recursive-add logic to not trigger if it's not set 719 Fixes a bug adding files when writing archive to pipe or when 720 using archive_write_open() directly. 721Jul 2006: New "skip" handling improves performance extracting 722 single files from large uncompressed archives. 723 724Mar 21, 2006: 1.2.52 released 725Mar 21, 2006: Fix -p on platforms that don't have platform-specific 726 extended attribute code. 727Mar 20, 2006: Add NEWS file; fill in some older history from other 728 files. I'll try to keep this file up-to-date from now on. 729 730OLDER NEWS SUMMARIES 731 732Mar 19, 2006: libarchive 1.2.51 released 733Mar 18, 2006: Many fixes to extended attribute support, including a redesign 734 of the storage format to simplify debugging. 735Mar 12, 2006: Remove 'tp' support; it was a fun idea, but not worth 736 spending much time on. 737Mar 11, 2006: Incorporated Jaakko Heinonen's still-experimental support 738 for extended attributes (Currently Linux-only.). 739Mar 11, 2006: Reorganized distribution package: There is now one tar.gz 740 file that builds both libarchive and bsdtar. 741Feb 13, 2006: Minor bug fixes: correctly read cpio device entries, write 742 Pax attribute entry names. 743Nov 7, 2005: Experimental 'tp' format support in libarchive. Feedback 744 appreciated; this is not enabled by archive_read_support_format_all() 745 yet as I'm not quite content with the format detection heuristics. 746Nov 7, 2005: Some more portability improvements thanks to Darin Broady, 747 minor bugfixes. 748Oct 12, 2005: Use GNU libtool to build shared libraries on many systems. 749Aug 9, 2005: Correctly detect that MacOS X does not have POSIX ACLs. 750Apr 17, 2005: Kees Zeelenberg has ported libarchive and bsdtar to Windows: 751 http://gnuwin32.sourceforge.net/ 752Apr 11, 2005: Extended Zip/Zip64 support thanks to Dan Nelson. -L/-h 753 fix from Jaakko Heinonen. 754Mar 12, 2005: archive_read_extract can now handle very long 755 pathnames (I've tested with pathnames up to 1MB). 756Mar 12, 2005: Marcus Geiger has written an article about libarchive 757 http://xsnil.antbear.org/2005/02/05/archive-mit-libarchive-verarbeiten/ 758 including examples of using it from Objective-C. His MoinX 759 http://moinx.antbear.org/ desktop Wiki uses 760 libarchive for archiving and restoring Wiki pages. 761Jan 22, 2005: Preliminary ZIP extraction support, 762 new directory-walking code for bsdtar. 763Jan 16, 2005: ISO9660 extraction code added; manpage corrections. 764May 22, 2004: Many gtar-compatible long options have been added; almost 765 all FreeBSD ports extract correctly with bsdtar. 766May 18, 2004: bsdtar can read Solaris, HP-UX, Unixware, star, gtar, 767 and pdtar archives. 768