2.5 History
Please read the history bottom-up. Note that the history might list some
features that were implemented in beta versions and removed later but are
still mentioned here. This history is a log of the programmer so that he
can look up what has been done/tried/modified. Things that were implemented
and removed later are marked with [VOID].
Version 2.1 (01-Mar-26)
- Change: Updated documentation
- New [Linux]: Added build for Linux arm64
- Change [Linux/macOS/Android/iOS]: For consistency with the other platforms zip.hwp on Linux/macOS/
Android/iOS no longer uses the system zlib but Hollywood's internal one
- New: zip.OpenArchive() accepts an optional table argument now that recognizes a "NoTmp" tag; if
this is set to TRUE, zip.OpenArchive() will not create a temporary file when using #MODE_WRITE
or #MODE_READWRITE; by default, a temporary file will be created when opening zip archives in
write or read/write mode to reduce memory consumption; note that when using virtual files no
temporary files will be used so setting "NoTmp" to TRUE isn't necessary in that case
- New: When using Miniwood and neither "compress" or "imageio" library are loaded, zip.hwp will
refuse to be loaded because when using Miniwood the plugin requires either the "compress" or
the "imageio" library (but "imageio-lite" isn't enough) to be present; previously it just crashed
if one of those libraries wasn't loaded
- Fix [AmigaOS3]: Loading files from AES-encrypted zip files didn't work (reported by Achim Kern)
- Fix [MorphOS]: zip.OpenArchive() with #MODE_WRITE didn't work if the target file didn't exist
(reported by Petteri Valli)
- Fix: Using zip.OpenArchive() with #MODE_READWRITE or #MODE_WRITE didn't work with virtual files
(reported by Zoltan Lazar)
Version 2.0 (08-Jul-23)
- Change: Updated documentation
- Change [iOS]: Added arm64 build for the iOS simulator and removed x86 build for the iOS
simulator because the iOS simulator is no longer compatible with x86
- New [macOS]: Added build for macOS arm64 (Apple Silicon)
- New: It's now possible to query the #ATTRFORMAT attribute for files opened using OpenFile() as
well as directories opened using OpenDirectory(); this will return "Zip"; this feature requires
Hollywood 10.0 or better
- New: Added support for Hollywood 10's new filesystem adapter interface; this means that you can
simply call Hollywood functions like DeleteFile(), CopyFile(), MoveFile(), SetFileAttributes(),
or Rename() now to make changes to a zip file; this allows your script to do quite some magic,
e.g. you could copy files or even whole directories directly into a zip file using CopyFile();
you could also delete files or whole directories from zip files using DeleteFile(); you could
even move files from one zip file to another using MoveFile() etc.; it's all supported by
zip.hwp and it's very powerful! Note, however, that you have to pass "zip" in the "Adapter"
tag to those functions if you want Hollywood to use zip.hwp's filesystem adapter interface;
just setting "InstallAdapter" to TRUE is not enough; zip.hwp's filesystem adapter is never
globally activated and can only be accessed by explicitly setting the "Adapter" tag to "zip"
- New: Added write support; you can now directly write to files inside zip archives using normal
Hollywood functions; seeking and modifying existing files is supported as well; you can also
use the "Encryption" and "Password" user tags to encrypt the file you're writing; note that
when writing files to zip archives, existing files in the zip archive won't be deleted but
the new files will be appended to the archive; do note, however, that if the file to be written
to a zip archive exists, it will be automatically overwritten; to make use of the new write
feature Hollywood 10 is recommended because it has greatly improved file adapter write support
- New: Optimized access to big files when they're opened in seek mode, e.g. by the avcodec.hwp
plugin; this should drastically speed things up, e.g. when streaming videos from zip files
using the avcodec.hwp plugin
- Fix: Fixed some potential buffer overflows
- New: When opening a file stored inside a password-protected zip file using standard Hollywood
functions like LoadSample(), LoadBrush(), OpenMusic(), OpenFile() etc. it's now possible to
set a "Password" tag in the optional table argument to specify the password that should be
used to decrypt the zip file; this allows you to open files directly from password-protected
zip files without any detour; this feature requires at least Hollywood 10 (requested by Juan
Carlos Herran Martin)
Version 1.2 (16-Dec-22)
- Change: Updated documentation
- Change [Linux/macOS/iOS/Android]: The plugin uses the system's zlib now instead of the one
that is built-in in Hollywood
- Change [Amiga]: Installer will now also copy the plugins for all platforms to Hollywood's
linker plugins directory so that they can be easily linked to executables
- New: The plugin now makes use of a new Hollywood API to speed up file I/O; this can
greatly speed up copying bigger files from zip archives using CopyFile() and drastically
reduce memory consumption; this feature is only available for Hollywood versions newer
than 9.1 (reported by Petteri Valli)
- Fix: File attributes weren't set correctly when unpacking files via CopyFile() (reported
by Petteri Valli)
- New: Added some optimizations to make unpacking faster via the directory adapter installed
by zip.hwp; this should make CopyFile() faster, especially on archives with lots of files;
note that to fully profit from these optimizations you need a Hollywood version newer than
9.1
- New: zip.AddFile(), zip.RenameFile(), and zip.AddDirectory() support a new table tag named
"Encoding" now; this can be used to set the charset encoding to be used; this defaults to
#ZIP_FL_ENC_UTF_8 but you can also set it to #ZIP_FL_ENC_CP437 which is the traditional
encoding used in ZIP files so you should use this for maximum compatibility with older
platforms (requested by Petteri Valli)
- New: Added support for Hollywood 9.0's new ability to query the attributes of a directory
handled by a directory adapter; this will allow the ZIP plugin to set directory date stamps
correctly when extracting files from an archive using Hollywood's CopyFile() function; note,
however, that directories are often not stored as individual entries in archives; in that
case, the directory date will be set to the current date and time because no other directory
date information is available (reported by Petteri Valli)
- New: Added support for Hollywood 8.0's RewindDirectory() function
- New: Added support for iOS
Version 1.1 (18-Feb-18)
- Change: Updated documentation
- New: Added build for the 64-bit Android platform
- Change: The file and directory adapter is no longer automatically installed on @REQUIRE
but you have set the "InstallAdapter" tag to TRUE in @REQUIRE; this allows you to use
the plugin without being forced to install its file and directory adapters which have
the overhead of hooking into every single file and directory opening done by Hollywood
- Fix: Crash when using zip.OpenArchive() on a corrupt archive or on a file which was not
a valid ZIP archive
- Fix [Doc]: Fixed a copy&paste error in the linking files part
- Fix: Leak in case zip.CloseArchive() failed
Version 1.0 (19-Nov-17)
- First Release
Show TOC