2 Sep 20, 2007: libarchive 2.3.2 released
3 Sep 20, 2007: libarchive 2.3.1 broke bsdtar because the archive_write_data()
4 fix was implemented incorrectly.
6 Sep 16, 2007: libarchive 2.3.1 released
7 Sep 16, 2007: Many fixes to bsdcpio 0.3: handle hardlinks with -p, recognize
8 block size on writing, fix a couple of segfaults.
9 Sep 16, 2007: Fixed return value from archive_write_data() when used
10 with archive_write_disk() to match the documentation and other
11 instances of this same function.
12 Sep 15, 2007: Add archive_entry_link_resolver, archive_entry_strmode
14 Sep 11, 2007: libarchive 2.2.8 released
15 Sep 09, 2007: bsdcpio 0.2 supports most (not yet all) of the old POSIX spec.
17 Sep 01, 2007: libarchive 2.2.7 released
18 Aug 31, 2007: Support for reading mtree files, including an mtree.5 manpage
19 (A little experimental still.)
20 Aug 18, 2007: Read gtar 1.17 --posix --sparse entries.
21 Aug 13, 2007: Refined suid/sgid restore handling; it is no longer
22 an error if suid/sgid bits are dropped when you request
23 perm restore but don't request owner restore.
24 Aug 06, 2007: Use --enable-bsdcpio if you want to try bsdcpio
26 Aug 05, 2007: libarchive 2.2.6 released
27 Aug 05, 2007: New configure option --disable-bsdtar, thanks to Joerg
29 Aug 05, 2007: Several bug fixes from FreeBSD CVS repo.
31 Jul 13, 2007: libarchive 2.2.5 released
33 Jul 12, 2007: libarchive 2.2.4 released
34 Jul 12, 2007: Thanks to Colin Percival's help in diagnosing and
35 fixing several critical security bugs. Details available at
36 http://security.freebsd.org/advisories/FreeBSD-SA-07:05.libarchive.asc
38 May 26, 2007: libarchive 2.2.3 released
39 May 26, 2007: Fix memory leaks in ZIP reader and shar writer, add some
40 missing system headers to archive_entry.h, dead code cleanup
41 from Colin Percival, more tests for gzip/bzip2, fix an
42 EOF anomaly in bzip2 decompression.
44 May 12, 2007: libarchive 2.2.2 released
45 May 12, 2007: Fix archive_write_disk permission restore by cloning
46 entry passed into write_header so that permission info is
47 still available at finish_entry time. (archive_read_extract()
48 worked okay because it held onto the passed-in entry, but
49 direct consumers of archive_write_disk would break). This
50 required fixing archive_entry_clone(), which now works and has
51 a reasonably complete test case.
52 May 10, 2007: Skeletal cpio implementation.
54 May 06, 2007: libarchive 2.2.1 released
55 May 06, 2007: Flesh out a lot more of test_entry.c so as to catch
56 problems such as the device node breakage before releasing <sigh>.
57 May 05, 2007: Fix a bad bug introduced in 2.1.9 that broke device
58 node entries in tar archives.
59 May 03, 2007: Move 'struct stat' out of archive_entry core as well.
60 This removes some portability headaches and fixes a bunch
61 of corner cases that arise when manipulating archives on
64 Apr 30, 2007: libarchive 2.1.10 released
65 Apr 31, 2007: Minor code cleanup.
67 Apr 24, 2007: libarchive 2.1.9 released
68 Apr 24, 2007: Fix some recently-introduced problems with libraries
69 (Just let automake handle it and it all works much better.)
70 Finish isolating major()/minor()/makedev() in archive_entry.c.
72 Apr 23, 2007: libarchive 2.1.8 released
73 Apr 23, 2007: Minor fixes found from building on MacOS X
75 Apr 22, 2007: libarchive 2.1.7 released
76 Apr 22, 2007: Eliminated all uses of 'struct stat' from the
77 format readers/writers. This should improve portability;
78 'struct stat' is now only used in archive_entry and in
79 code that actually touches the disk.
81 Apr 17, 2007: libarchive 2.1.6 released
82 Libarchive now compiles and passes all tests on Interix.
84 Apr 16, 2007: libarchive 2.1.5 released
86 Apr 15, 2007: libarchive 2.1b2 released
87 Apr 15, 2007: New libarchive_internals.3 documentation of internal APIs.
88 Not complete, but should prove helpful.
89 Apr 15, 2007: Experimental "read_compress_program" and "write_compress_program"
90 for using libarchive with external compression. Not yet
91 well tested, and likely has portability issues. Feedback
94 Apr 14, 2007: libarchive 2.0.31 released
95 Apr 14, 2007: More fixes for Interix, more 'ar' work
97 Apr 14, 2007: libarchive 2.0.30 released
98 Apr 13, 2007: libarchive now enforces trailing '/' on dirs
99 written to tar archives
101 Apr 11, 2007: libarchive 2.0.29 released
102 Apr 11, 2007: Make it easier to statically configure for different platforms.
103 Apr 11, 2007: Updated config.guess, config.sub, libtool
105 Apr 06, 2007: libarchive 2.0.28 released
106 Apr 06, 2007: 'ar' format read/write support thanks to Kai Wang.
108 Apr 01, 2007: libarchive 2.0.27 released
109 Mar 31, 2007: Several minor fixes from Colin Percival and Joerg Sonnenberger.
111 Mar 12, 2007: libarchive 2.0.25 released
112 Mar 12, 2007: Fix broken --unlink flag.
114 Mar 11, 2007: libarchive 2.0.24 released
115 Mar 10, 2007: Correct an ACL blunder that causes any ACL with an entry
116 that refers to a non-existent user or group to not be restored correctly.
117 The fix both makes the parser more tolerant (so that archives created
118 with the buggy ACLs can be read now) and corrects the ACL formatter.
119 Mar 10, 2007: More work on test portability to Linux.
121 Mar 10, 2007: libarchive 2.0.22 released
122 Mar 10, 2007: Header cleanups; added linux/fs.h, removed
123 some unnecessary headers, added #include guards in bsdtar.
124 If you see any obvious compile failures from this, let me know.
125 Mar 10, 2007: Work on bsdtar test scripts: not yet robust enough
126 to enable as part of "make check", but getting better.
127 Mar 10, 2007: libarchive now returns ARCHIVE_FAILED when
128 a header write fails in a way that only affects this item.
129 Less bad than ARCHIVE_FATAL, but worse than ARCHIVE_WARN.
131 Mar 07, 2007: libarchive 2.0.21 released
132 Mar 07, 2007: Add some ACL tests (only for the system-independent
133 portion of the ACL support for now).
134 Mar 07, 2007: tar's ability to read ACLs off disk got
135 turned off for FreeBSD; re-enable it. (ACL restores and
136 libarchive support for storing/reading ACLs from pax
137 archives was unaffected.)
139 Mar 02, 2007: libarchive 2.0.20 released
140 Mar 2, 2007: It's not perfect, but it's pretty good.
141 Libarchive 2.0 is officially out of beta.
143 Feb 28, 2007: libarchive 2.0b17 released
144 Feb 27, 2007: Make the GID restore checks more robust by checking
145 whether the current user has too few or too many privileges.
147 Feb 26, 2007: libarchive 2.0b15 released
148 Feb 26, 2007: Don't lose symlinks when extracting from ISOs.
149 Thanks to Diego "Flameeyes" Pettenò for telling me about the
150 broken testcase on Gentoo that (finally!) led me to the cause
151 of this long-standing bug.
153 Feb 26, 2007: libarchive 2.0b14 released
154 Feb 26, 2007: Fix a broken test on platforms that lack lchmod().
156 Feb 25, 2007: libarchive 2.0b13 released
157 Feb 25, 2007: Empty archives were being written as empty files,
158 without a proper end-of-archive marker. Fixed.
160 Feb 23, 2007: libarchive 2.0b12 released
161 Feb 22, 2007: Basic security checks added: _EXTRACT_SECURE_NODOTDOT
162 and _EXTRACT_SECURE_SYMLINK. These checks used to be in bsdtar,
163 but they belong down in libarchive where they can be used by
164 other tools and where they can be better optimized.
166 Feb 11, 2007: libarchive 2.0b11 released
167 Feb 10, 2007: Fixed a bunch of errors in libarchive's handling
168 of EXTRACT_PERM and EXTRACT_OWNER, especially relating
169 to SUID and SGID bits.
171 Jan 31, 2007: libarchive 2.0b9 released
172 Jan 31, 2007: Added read support for "empty" archives as a
173 distinct archive format. Bsdtar uses this to handle, e.g.,
174 "touch foo.tar; tar -rf foo.tar"
176 Jan 22, 2007: libarchive 2.0b6 released
177 Jan 22, 2007: archive_write_disk API is now in place. It provides
178 a finer-grained interface than archive_read_extract. In particular,
179 you can use it to create objects on disk without having an archive
180 around (just feed it archive_entry objects describing what you
181 want to create), you can override the uname/gname-to-uid/gid lookups
182 (minitar uses this to avoid getpwXXX() and getgrXXX() bloat).
184 Jan 09, 2007: libarchive 2.0a3 released
185 Jan 9, 2007: archive_extract is now much better; it handles the
186 most common cases with a minimal number of system calls.
187 Some features still need a lot of testing, especially corner
188 cases involving objects that already exist on disk. I expect
189 the next round of API overhaul will simplify building test cases.
190 Jan 9, 2007: a number of fixes thanks to Colin Percival, especially
191 corrections to the skip() framework and handling of large files.
192 Jan 9, 2007: Fixes for large ISOs. The code should correctly handle
193 very large ISOs with entries up to 4G. Thanks to Robert Sciuk
194 for pointing out these issues.
196 Sep 05, 2006: libarchive 1.3.1 released
197 Sep 5, 2006: Bump version to 1.3 for new I/O wrappers.
198 Sep 4, 2006: New memory and FILE read/write wrappers.
199 Sep 4, 2006: libarchive test harness is now minimally functional;
200 it's located a few minor bugs in error-handling logic
202 Aug 17, 2006: libarchive 1.2.54 released
203 Aug 17, 2006: Outline ABI changes for libarchive 2.0; these
204 are protected behind #ifdef's until I think I've found everything
205 that needs to change.
206 Aug 17, 2006: Fix error-handling in archive_read/write_close()
207 They weren't returning any errors before.
208 Aug 17, 2006: Fix recursive-add logic to not trigger if it's not set
209 Fixes a bug adding files when writing archive to pipe or when
210 using archive_write_open() directly.
211 Jul 2006: New "skip" handling improves performance extracting
212 single files from large uncompressed archives.
214 Mar 21, 2006: 1.2.52 released
215 Mar 21, 2006: Fix -p on platforms that don't have platform-specific
216 extended attribute code.
217 Mar 20, 2006: Add NEWS file; fill in some older history from other
218 files. I'll try to keep this file up-to-date from now on.
222 Mar 19, 2006: libarchive 1.2.51 released
223 Mar 18, 2006: Many fixes to extended attribute support, including a redesign
224 of the storage format to simplify debugging.
225 Mar 12, 2006: Remove 'tp' support; it was a fun idea, but not worth
226 spending much time on.
227 Mar 11, 2006: Incorporated Jaakko Heinonen's still-experimental support
228 for extended attributes (Currently Linux-only.).
229 Mar 11, 2006: Reorganized distribution package: There is now one tar.gz
230 file that builds both libarchive and bsdtar.
231 Feb 13, 2006: Minor bug fixes: correctly read cpio device entries, write
232 Pax attribute entry names.
233 Nov 7, 2005: Experimental 'tp' format support in libarchive. Feedback
234 appreciated; this is not enabled by archive_read_support_format_all()
235 yet as I'm not quite content with the format detection heuristics.
236 Nov 7, 2005: Some more portability improvements thanks to Darin Broady,
238 Oct 12, 2005: Use GNU libtool to build shared libraries on many systems.
239 Aug 9, 2005: Correctly detect that MacOS X does not have POSIX ACLs.
240 Apr 17, 2005: Kees Zeelenberg has ported libarchive and bsdtar to Windows:
241 http://gnuwin32.sourceforge.net/
242 Apr 11, 2005: Extended Zip/Zip64 support thanks to Dan Nelson. -L/-h
243 fix from Jaakko Heinonen.
244 Mar 12, 2005: archive_read_extract can now handle very long
245 pathnames (I've tested with pathnames up to 1MB).
246 Mar 12, 2005: Marcus Geiger has written an article about libarchive
247 http://xsnil.antbear.org/2005/02/05/archive-mit-libarchive-verarbeiten/
248 including examples of using it from Objective-C. His MoinX
249 http://moinx.antbear.org/ desktop Wiki uses
250 libarchive for archiving and restoring Wiki pages.
251 Jan 22, 2005: Preliminary ZIP extraction support,
252 new directory-walking code for bsdtar.
253 Jan 16, 2005: ISO9660 extraction code added; manpage corrections.
254 May 22, 2004: Many gtar-compatible long options have been added; almost
255 all FreeBSD ports extract correctly with bsdtar.
256 May 18, 2004: bsdtar can read Solaris, HP-UX, Unixware, star, gtar,