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