The module has bundled version 1.1.2, but the configure script warns
when using the bundled one, and it's of course better to not duplicate
it. Noticed this on recent PHP 7.1.14/7.2.2 releases which had fixes
for zip extension when used with libzip >= 1.3.1.
XXX May need backport of the fix for 7.0 and 5.6 which did not get the fix,
or can just switch over to using the PECL module directly
last version that can build under both www/php4 and lang/php5, since version
1.9.0 and 1.10.1 both require PCRE support in the PHP engine, which Pkgsrc
php4 seems to build without.
Changes since version 1.0:
1.8.10
- Fixed build, missing macro
1.8.9
- Fixed a possible crash in the event directory cannot be created, due to a
double free. (Ilia)
1.8.8
- PECL bug #10414, Fixed macros name in stream
- Fixed possible leak when open_basedir checks fail in extractTo (Ilia)
1.8.7
- Add missing openbasedir or safemode (php 5.x and 4.x) checks in zip://
stream or ZipArchive::open
- Fixed possible relative path issues in zip_open and TS mode (old API)
- rename SAFEMODE_CHECKFILE to OPENBASEDIR_CHECKPATH (no confusion when used
wiht php6)
1.8.6
- Fixed possible leaks in zip_read() and zip_entry_read (old API)
- Fixed leak when an entry is 0 bytes length in ZipArchive::getFrom*()
methods
- Use snprintf instead sprintf (Ilia, Marcus)
- Add examples images and odt in release
1.8.5
- Fixed leaks happening on error (Nuno Lopes)
- PHP bug #40228, extractTo does not create recursive empty path
(empty1/empty2/)
1.8.4
- Use phplibdir in config.m4 (for lib64 or other custom location)
- Add path length sanity checks (Ilia, Tony)
- Update year, happy new year
1.8.3
- Fixed threadsafe issue with localtime function, it uses now the php
php_localtime_r (Ron Korving, Ilia)
1.8.2
- restore compatibility with php 5.1.0 to 5.1.2 (other versions are not
affected)
1.8.1
- PECL #9278, Binary access issues on Windows in any SAPI but CGI, CLI and
embed (windows API does not respect "b" mode given to fopen)
- Fixed a possible leak in the entries managements (Nuno Lopes)
- createEmptyDir returns true one success
- Use static for each internal functions when possible (Nuno Lopes)
- Update protos in the sources
1.8.0
- Fixed a possible leak in statName and statIndex
- Added zipArchive::adEmptyDir() method, creates an empty directory
- Fixed setComment when used with a freshly added entry
- setComment now returns the expected value (boolean) (Hannes)
1.7.5
- PECL Bug #9082, wrong entry name like "a/b//file.txt" cannot be extracted
on windows A "bug" in php mkdir was the cause, a work around has been
introduced for php versions before 5.2.0
1.7.4
- PHP Bug #38943, properties in extended class cannot be set
- PHP Bug #38944, freshly created archive has no comment or cdir
1.7.3
- PECL Bug #8700, zipArchive::getFromIndex fails
- PECL Bug #8676, zipArchive::addFile was not updated and still used
VCWD_REALPATH, it now uses expand_filename
- Fixed wrong internal types for comment lenghts, does not affect userland
script (Nuno Lopes)
1.7.2
- Previous release was broken in non threaded environment. This release
works smoothly in threaded and non threaded. Thanks to "FamilleCollet dot
com" (Fedora-Extra maintainer for the head up)
1.7.1
- Fix issues with relative path in threaded environment, VCWD_REALPATH is
used in ZipArchive::open() and ::addFile
1.7.0
- Add ZIPARCHIVE::OVERWRITE mode for ::open(), creates a new archive and
write over an existing file
- locateName do not change anymore the state, it can now be used to test an
entry
- fix possilbe crashes when two entries with the same name have been added
- Enhanced safemode support
- fix builds against php 6.0 (HEAD)
- fix compiler warning (Ilia, Tony)
- cleanup phpinfo() output (Ilia)
1.6.0
- Rename Class Zip to ZipArchive, required to be bundled in php 5.2.0 (Zip
being a ZipCode in US), making the role of this class more obvious *Gah*
1.5.0
- bring consistency to the method names:
- rename zip::delete() to deleteIndex()
- add zip::deleteName()
- rename zip::statPath to zip::statName()
- rename zip::rename to zip::renameIndex()
- add zip::renameName();
- add zip::locateName(), returns the index of an entry, allows case
insensitive or directory free lookup (ZIP::FL_NOCASE, ZIP::FL_NODIR)
- add zip::unchangeName(), ::unchangeIndex(), unchangeAll() and
unchangeArchive() revert changes to an entry, to all entries or the
archive
- add zip::getNameIndex(), get the name of the entry at the given position
- Bug #7658, Modify zip archives causes corruption if the data descriptor is
used (bit 3 of the general flags)
- fix a bug when in the delete and rename methods when the index is lower
than 1
- zip::addFile() must return true on success
- zip::open() returns now the error code on error and true on success
1.4.1
- Add missing files in the package release
1.4.0
- Add write mode to the archive comment (zip::comment property)
- Add zip::setCommentName and ::setCommentIndex, add or remove entrie comment
- Add zip::getCommentName and ::getCommentIndex, get an entrie comment
- Add zip::setArchiveComment
- Full sync with zip-0.7.1
- #8009, modify archives on windows cannot be closed
1.3.1
- #7500, Fix build with php 5.1.0, 5.1.1 and 5.1.2
1.3.0
- Fix possible leak with __set/__get in classes extending the Zip intern
object (tony2001[at]php.net)
- Added getFromName(), return the contents of an entry using its name
- Added getFromIndex(), return the contents of an entry using its index
1.2.3
- #7214, use binary safe string as return value, 0x00 was considered as the
end of the content, affected only the procedural API
1.2.2
- fix a bug in internal zip_close, new archives were not written
- ::open returns now false on error
- update the "create.php" example, status and returned codes are now checked
- fix a leak when the ::open method is called twice or more with the same
object
1.2.1
- fixed a possible build problem (mkstemp missing)
- fix a bug where extending the Zip class does allow to write to a property,
see php bugs #36743 (array)
1.2.0
- enable stream by default,
* use uri like zip:///path/to/my.zip#entryname.dat
(the URI format may change in future version)
- add support for print_r/var_dump (Zip object)
- add tests for the OO (still need more)
- add more example, like using xmlreader and zip stream to parse
OpenDocument meta info
1.1.2
- do not create empty file when a zip entry is only a directory (empty or
not)
1.1.1
- Fix PHP 5.1 detection at compiletie
- fix possible build errors with gcc other than 4.0.x
- add better zlib detection
- "--with-zlib-dir=[DIR]" added
1.1.0
- replace the old zip extensions
- 100% compatible with the old API
- added zip creation support (write mode)
- added OO interface
- Stream support, getStream method returns a file handler
- bundled libzip and drop zzlib usage (see http://www.nih.at/libzip/)
1.0
- Initial Release in PECL
all PEAR packages to php?-pear-* and all Apache packages to ap13-* or
ap2-* respectively. Add new variables to simplify the Makefile
handling. Add CONFLICTS on the old names. Reset revisions of bumped
packages. ap-php will now depend on the default Apache and PHP version.
All programs using it have an implicit option of the Apache version
as well.
OK from jlam@ and adrianp@.