1 Revision history for Perl extension Archive-Zip
3 1.28 Tue 16 Jun 2009 - Adam Kennedy
4 - Changing to production version for release
5 - Reverted to revision 4736 and converted `External File Attribute'
6 values for symbolic links to hexadecimal (HAGGAI)
7 - Fixed: #15026: AddTree does not include files with german
8 umlauts in the filename (HAGGAI)
9 - Switched from Compress::Zlib to Compress::Raw::Zlib (AGRUNDMA)
10 - Moved crc32 from bin to script (ADAMK)
12 1.27_01 Tue 16 Dec 2008 - Adam Kennedy
13 - Makefile.PL will create a better META.yml
14 - This is a test release for various improvements provided by
15 Alan Haggai. The entire release is credited to his grant work.
16 - Fixed #25726: extractMembers failing across fork on Windows.
17 - Fixed #12493: Can't add new files to archives which contain
18 files named 0,1,2,3,4,5,6,7,8,9 with no extension.
19 (Files named "0" are not archived)
20 - Fixed #22933: Properly extract symbolic links.
21 - Fixed #20246: Ability to assign a compression level to addTree
23 - Corrected regular expression for stripping trailing /
24 - Corrected addFileOrDirectory() behaviour and cleaned up some code
25 - Added symbolic link support to addFileOrDirectory
26 - Fixed #34657: No option, undefined behavior zipping symbolic
28 - Added storeSymbolicLink()
29 - Fixed bitFlag() to set General Pupose Bit Flags
31 1.26 Mon 13 Oct 2008 - Adam Kennedy
32 - Fixed the dreaded but #24036: WinXP Explorer Exposes Problems.
33 This caused directories to appear as files in Windows Explorer
34 and was caused by Windows always reading the msdos directory bit
35 even when the file attributes are types as unix.
36 Resolved by emulating the behaviour of Info-Zip and setting
37 the 5th bit in the externalFileAttributes field.
39 1.25 Sat 11 Oct 2008 - Adam Kennedy
40 - Removing "use warnings" instances that somehow slipped in
41 - Skip test if Digest::MD5 is not available
43 1.24 Sun 23 Aug 2008 - Adam Kennedy
44 - Blatantly pander to CPANTS by adding use strict to a deprecated module
45 - Add an explicit load of FileHandle since in some circumstances,
46 calling GLOB->print() failed.
47 - Fixed http://rt.cpan.org/Public/Bug/Display.html?id=25925 :
48 - Archive-Zip wrote faulty .zip files when $\ was set (such as when running
50 - Incorporated a heavily modified version of ECARROLL's test file.
51 - Thanks for ECARROLL for reporting it, and helping with the investigation.
52 - The fix was to convert all $fh->print(@data) to $self->_print($fh, @data)
53 where the _print() method localizes $\ to undef.
54 - Fixed http://rt.cpan.org/Ticket/Display.html?id=14132 :
55 - Incorrect file permissions after extraction.
56 - Archive-Zip did not set the file permissions correctly in
58 - Added t/10_chmod.t and t/data/chmod.zip. Changed
59 lib/Archive/Zip/Member.pm.
60 - Reported by ak2 and jlv (Thanks!)
61 - SHLOMIF wrote the test script.
63 - Removed a double "required module" from the Archive::Zip POD.
64 - Fixed http://rt.cpan.org/Ticket/Display.html?id=24557 ("documentation
66 - mentioned Archive::Zip::MemberRead in a few places.
68 - 1. Add a method to Archive::Zip to get a ::MemberRead from an
69 archive member using -> notation. (?)
70 - 2. In the POD of ::MemberRead - replace the indirect object
72 - Changed the POD of ::MemberRead:
73 - replaced the indirect object construction with $PKG->new().
74 - Fixed http://rt.cpan.org/Public/Bug/Display.html?id=34103 :
75 - changed the example to read unless ( .. == AZ_OK) instead of
76 unless ( != AZ_OK), which was incorrect.
78 1.23 Thu 8 Nov 2007 - Adam Kennedy
79 - Temporarily skilling some failing tests on Win32 in the
80 interests of toolchain sanity. (until we work out the
83 1.22 Fri 2 Nov 2007 - Adam Kennedy
84 - Fixing platform compatibility bugs in the new regression tests
87 1.21 Thu 1 Nov 2007 - Adam Kennedy
88 - Tidying up copyright formatting a bit.
89 - Disable the GPBF_HAS_DATA_DESCRIPTOR_MASK bit when auto-switching
90 directory storage to STORED because of a WinZip workaround because
91 the read code in Java JAR which was... ok, I really don't understand,
92 but Roland from Verisign says this one extra line unbreaks JAR files,
93 so I just applied it :)
94 - fixed http://rt.cpan.org/Public/Bug/Display.html?id=27463 with a
95 regression test - cannot add files whose entire filenames are "0".
97 - fixed http://rt.cpan.org/Public/Bug/Display.html?id=26384 with a
98 regression test - Archive::Zip::MemberRead::getline ignores
99 $INPUT_RECORD_SEPARATOR . The modified file in the bug had it to be
100 reworked a bit and tests were added in the file
101 08_readmember_record_sep.t.
102 - Thanks to kovesp [...] sympatico.ca
105 1.20 Tue 5 Jun 2007 - Adam Kennedy
106 - Removing dependency on File::Which due to public outburst of flaming
107 on cpanra(n)tings by H.Merijn Brand. Try a simple email next time. :(
108 - Embedding an entire copy of File::Which inside the tests instead as
109 an alternative to compensating for the lack of build_requires.
110 - Removing the docs directory.
111 It only had out of date files and non-free copyrighted materials.
112 The tarball was probably illegal to distribute as a result.
113 (reported by Debian devs)
115 1.19 Internal use, public release skipped
117 1.18 Wed 25 Oct 2006 - Adam Kennedy
118 - Changing to a production version for final release
119 - No other changes of any kind
121 1.17_05 Tue 19 Sep 2006 - Adam Kennedy
122 - Seperated the classes from the main file into seperate packages.
123 - Merged the Zip.pod into the main Zip.pm file.
124 - Applied default Perl::Tidy to all of the source files, to improve
125 the readability and maintainability of the files.
126 - Added license in Makefile.PL
127 - Added some additional entries to the realclean files
129 1.17_03 Sat 16 Sep 2006 - Adam Kennedy
130 - Adding dependency on File::Which to deal with problems on systems
131 that lack zip and unzip programs. This really should be a build-time
132 dependency only, but ExtUtils::MakeMaker lacks that capability.
133 - Builds and tests cleanly on Win32 now.
135 1.17_02 Sun 7 May 2006 - Adam Kennedy
136 - Renamed the test scripts to the more conventional 01_name.t style
137 - Upgraded all test scripts from Test.pm to Test::More (removing Test.pm dependency)
138 - Various other miscellaneous cleanups of the test scripts
139 - Removed MANIFEST and pod.t from repository (will be auto-generated)
140 - Some cleaning up of the POD documentation for readability
141 - Added SUPPORT section to docs
142 - Merged external TODO file into the POD as a more-common TO DO section
143 - Added a BUGS section to the docs
145 1.17_01 Sun 30 Apr 2006 - Adam Kennedy
146 - Imported Archive::Zip into http://svn.ali.as/cpan/ orphanage.
147 If you have a CPAN login and have released a module, ask ADAMK about an
148 account and you can repair your bug directly in the repository.
149 - Removed the revision comments from the old CVS repository
150 - DOS DateTime Format doesn't support dates before 1980 and goes crazy when
151 decoding back to unix time. If we don't get passed a time at all
152 (0 or undef) we now throw an error.
153 - DOS DateTime Format doesn't support dates before 1980, so if we find any
154 we warn and use Jan 1 12:01pm 1980 if we encounter any
155 - Win32 doesn't support directory modification times.
156 Tentatively use the current time as the mod-time to prevent sending
157 null times to the unix2dos converter (and the resulting error)
158 - Reformat the expected empty zip warning in the output to add a note that
159 the warning is entirely normal. Would be nice if some time later we can
160 suppress it altogether, but I don't have the cross-platform STDERR-fu
161 without adding a dependency to IPC::Run3 (which would be bad).
162 - Adding a proper $VERSION to all classes, and synchronising them to the
164 - Adding a BEGIN block around the require 5.003_96 so it works at
165 compile-time instead of post-compile.
166 - Moved crc32 to bin/crc32 in line with package layout conventions
168 1.16 Mon Jul 04 12:49:30 CDT 2005
169 - Grrrr...removed test that fails when installing under CPANPLUS.
171 1.15 Wed Jun 22 10:24:25 CDT 2005
172 - added fix for RT #12771 Minor nit: warning in Archive::Zip::DirectoryMember::contents()
173 - added fix for RT #13327 Formatting problem in Archive::Zip::Tree manpage
175 1.15_02 Sat Mar 12 09:16:30 CST 2005
176 - fixed dates in previous entry!
177 - began the process of migrating from the monolithic t/test.t to
178 smaller scripts using Test::More.
179 - started work on improving Archive::Zip's test coverage. Coverage
180 is now up to just over 80%.
181 - added error handling to writeToFileHandle
182 - fixed small bug in extractMember from previous version
184 1.15_01 Wed Mar 9 22:26:52 CST 2005
185 - added fix for RT #11818 extractMember method corrupts archive
186 - added t/pod.t to test for pod correctness
188 1.10 Thu Mar 25 06:24:17 PST 2004
189 - Fixed documentation of setErrorHandler()
190 - Fixed link to Japanese translation of docs
191 - Added Compress::Zlib Bufsize patch from Yeasah Pell that was supposed to
192 have been added in 1.02
193 - Fixed problems with backup filenames for zips with no extension
194 - Fixed problems with undef volume names in _asLocalName()
196 1.09 Wed Nov 26 17:43:49 PST 2003
197 - Fixed handling of inserted garbage (as from viruses)
198 - Always check for local header signatures before using them
199 - Added updateMember() and updateTree() functions
200 - Added examples/mailZip.pl
201 - Added examples/updateTree.pl
202 - Fixed some potential but unreported bugs with function parameters like '0'
203 - Removed stray warn() call
204 - Caught undef second arg to replaceMember()
205 - Fixed test suite run with spaces in build dir name (ticket 4214)
207 1.08 Tue Oct 21 07:01:29 PDT 2003
208 - test noise fix from Michael Schwern (ticket 4174)
209 - FAQ NAME fix from Michael Schwern (ticket 4175)
211 1.07 Mon Oct 20 06:48:41 PDT 2003
212 - Added file attribute code by Maurice Aubrey
213 - Added FAQ about RedHat 9
214 - Added check for empty filenames
216 1.06 Thu Jul 17 11:06:18 PDT 2003
217 - Fixed seek use with IO::Scalar and IO::String
218 - Fixed use of binmode with pseudo-file handles
219 - Removed qr{} form for older Perl versions
220 - Changed rel2abs logic in _asLocalName() if there is a volume
221 - Fixed errors with making directories in extractMember() when none provided
222 - Return AZ_OK in extractMemberWithoutPaths() if member is a directory
223 - Fixed problem in extractTree with blank directory becoming "." prefix
224 - Added examples/writeScalar2.pl to show how to use IO::String as destination of Zip write
225 - Edited docs and FAQ to recommend against using absolute path names in zip files.
227 1.05 Wed Sep 11 12:31:20 PDT 2002
228 - fixed untaint from 1.04
230 1.04 Wed Sep 11 07:22:04 PDT 2002
231 - added untaint of lastModFileDateTime
233 1.03 Mon Sep 2 20:42:43 PDT 2002
234 - Removed dependency on IO::Scalar
235 - Set required version of File::Spec to 0.8
236 - Removed tests of examples that needed IO::Scalar
237 - Added binmode() call to read/writeScalar examples
238 - Fixed addTree() for 5.005 compatibility (still untested with 5.004)
239 - Fixed mkdir() calls for 5.005
240 - Clarified documentation of tree operations
242 1.02 Fri Aug 23 17:07:22 PDT 2002
243 - Many changes for cross-platform use (use File::Spec everywhere)
244 - Separated POD from Perl
245 - Moved Archive::Zip::Tree contents into Archive::Zip
246 A::Z::Tree is now deprecated and will warn with -w
249 - Added chunkSize() call to report current chunk size
250 and added C::Z BufSize patch from Yeasah Pell.
251 - Added fileName() to report last read zip file name
252 - Added capability to prepend data, like for SFX files
253 - Added examples/selfex.pl for self-extracting archives creation
254 - Added examples/zipcheck.pl for validity testing
255 - Made extractToFileNamed() set access/modification times
256 - Added t/testTree.t to test A::Z::Tree
257 - Fix/speed up memberNamed()
258 - Added Archive::Zip::MemberRead by Sreeji K. Das
259 - Added tempFile(), tempName()
260 - Added overwrite() and overwriteAs() to allow read/modify/write of zip
261 - added examples/updateZip.pl to show how to read/modify/write
263 1.01 Tue Apr 30 10:34:44 PDT 2002
264 - Changed mkpath call for directories to work with BSD/OS
265 - Changed tests to work with BSD/OS
268 - Added several examples:
269 - examples/calcSizes.pl
270 How to find out how big a zip file will be before writing it
271 - examples/readScalar.pl
272 shows how to use IO::Scalar as the source of a zip read
273 - examples/unzipAll.pl
274 uses Archive::Zip::Tree to unzip an entire zip
275 - examples/writeScalar.pl
276 shows how to use IO::Scalar as the destination of a zip write
277 - examples/zipGrep.pl
278 Searches for text in zip files
279 - Changed required version of Compress::Zlib to 1.08
280 - Added detection and repair of zips with added garbage (as caused by
282 - Added more documentation for FAQ-type questions, though few seem to
283 actually read the documentation.
284 - Fixed problem with stat vs lstat
285 - Changed version number to 1.00 for PHB compatibility
287 0.12 Wed May 23 17:48:21 PDT 2001
288 - Added writeScalar.pl and readScalar.pl to show use of IO::Scalar
290 - Fixed bug with EOCD signature on block boundary
291 - Made it work with IO::Scalar as file handles
292 - added readFromFileHandle()
293 - remove guess at seekability for Windows compatibility
295 0.11 Tue Jan 9 11:40:10 PST 2001
296 - Added examples/ziprecent.pl (by Rudi Farkas)
297 - Fixed up documentation in Archive::Zip::Tree
298 - Added to documentation in Archive::Zip::Tree
299 - Fixed bugs in Archive::Zip::Tree that kept predicates from working
300 - Detected file not existing errors in addFile
302 0.10 Tue Aug 8 13:50:19 PDT 2000
304 - More robust new file handle logic can (again)
305 take opened file handles
306 - Detect attempts to overwrite zip file when members
309 0.09 Tue May 9 13:27:35 PDT 2000
310 - Added fix for bug in contents()
311 - removed system("rm") call in t/test.t for Windows.
313 0.08 March 27 2000 (unreleased)
314 - Fixed documentation
315 - Used IO::File instead of FileHandle, allowed for use of almost anything as
317 - Extra filenames can be passed to extractMember(),
318 extractMemberWithoutPaths(), addFile(), addDirectory()
319 - Added work-around for WinZip bug with 0-length DEFLATED files
320 - Added Archive::Zip::Tree module for adding/extracting hierarchies
322 0.07 Fri Mar 24 10:26:51 PST 2000
324 - Added desiredCompressionLevel() and documentation
325 - Made writeToFileHandle() detect seekability by default
326 - Allowed Archive::Zip->new() to take filename for read()
327 - Added crc32String() to Archive::Zip::Member
328 - Changed requirement in Makefile.PL to Compress::Zip
329 version 1.06 or later (bug in earlier versions can truncate data)
330 - Moved BufferedFileHandle and MockFileHandle into
331 Archive::Zip namespace
332 - Allowed changing error printing routine
333 - Factored out reading of signatures
334 - Made re-read of local header for directory members
335 depend on file handle seekability
336 - Added ability to change member contents
337 - Fixed a possible truncation bug in contents() method
339 0.06 Tue Mar 21 15:28:22 PST 2000
340 - first release to CPAN
342 0.01 Sun Mar 12 18:59:55 2000
343 - original version; created by h2xs 1.19