The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
zip(), zipr(),
zip_append(), zipr_append(),
zip_process(), and unzip() /
unzip_process() now support password-protected archives
using WinZIP AES-256, and other encryption schemes (#38).
zip_list() now reports an encryption
column indicating the encryption scheme used for each entry
(#38).
unzip() is now vectorized. If all arguments apart
from zipfile, exdir and password
are the default, then it unprocesses all files concurrently, using a
thread pool. The size of the thread pool can be set with the
zip_threads option or the ZIP_THREADS
environment variable (#147).
zip_list() and unzip() now work
directly on http:// and https:// URLs. They
use HTTP range requests to download only the central directory and the
requested entries, so listing or extracting a few files from a large
remote archive does not downloads the whole file. If the server does not
support range requests, they fall back to downloading the entire archive
(with a warning). This requires the curl package (#39).
zip_list() and unzip() now report the
Unix permission bits stored in an archive on Windows as well. Previously
they always reported 700/600 on Windows,
regardless of the permissions recorded in the ZIP file.
zip_list() and unzip() now report
type == "directory" for directory entries whose Unix mode
bits lack S_IFDIR but that are marked as directories by a
trailing slash or the DOS directory attribute (e.g. archives created by
zip() itself). Previously these were reported as
"file".
zip() and unzip() now show a progress
bar when the cli package is installed. For
zip(), progress is byte-level, so large single files are
tracked smoothly. For unzip(), progress advances once per
extracted entry. Progress bars are (for now) opt-in via the
ZIP_PROGRESS=true environment variable or the
zip.progress option (#48).
unzip() now returns a data frame (invisibly) with
one row per extracted entry, containing the same columns as
zip_list() (filename,
compressed_size, uncompressed_size,
timestamp, permissions, crc32,
offset, type) plus a path column
with the absolute path to each extracted file on disk (#35).
zip_list() and unzip() now have an
encoding argument for ZIP files with non-UTF-8, non-CP437
filenames (e.g. CP932/Shift-JIS on Japanese Windows). When
encoding is set, filenames without the UTF-8 flag are
decoded from the specified code page instead of CP437 (#101).
zip_append() and zipr_append() now
replace existing entries when appending a file whose archive path
already exists in the zip file, instead of creating duplicate entries
(#111).
unzip() and zip_list() now correctly
handle ZIP files with non-UTF-8 filenames (e.g. filenames encoded in IBM
CP437, as created by many Windows tools). The filenames are converted to
UTF-8 using the CP437 character map when the UTF-8 flag is not set in
the ZIP entry (#103).
New keys argument to zip(),
zipr(), zip_append(), and
zipr_append(). It allows specifying custom paths for
entries inside the archive, independently of their paths on disk
(#50).
unzip_process() now probes falls back to using an R
subprocess when the bundled cmdunzip executable cannot be
started (#135).
Updated embedded miniz to version 3.1.1 (#122).
zip_list() now has a type column, for
the file type.
unzip() now correctly creates symbolic links on Unix
(#127).
zip_list() now returns a tbl object, and
loads the pillar package, if installed, to produce the nicer output for
long data frames.zip now handles large zip files on Windows (#65, #75, #79, @weshinsley).
zip now behaves better for absolute paths in mirror mode, and
when the paths contain a : character (#69, #70).
zip::unzip() now uses the process’s umask value (see
umask(2)) on Unix if the zip file does not contain Unix
permissions (#67).
Fix segmentation fault when zip file can’t be created (#91, @zeehio)
Fix delayed evaluation error on zipfile when
zip::zip() is used (#92, @zeehio)
New deflate() and inflate() functions
to compress and uncompress GZIP streams in memory.
Header values (of version made by and external attributes) are now correctly read and written on big-endian systems (#68).
zip_list() now also returns crc32 and
offset (#74, @jefferis).
This version has no user visible changes.
unzip_process() now does not fail randomly on
Windows (#60).
Now all functions handle Unicode paths correctly, on Windows as well (#42, #53).
unzip_process() now works when R library is on
different drive than exdir on Windows (#45)
zip functions now have a mode argument to choose how
files and directories are assembled into the archive. See the docs for
details.
zip functions now have a root argument, zip changes
the working directory to this before creating the archive, so all files
are relative to root.
zip() and zip_append() are not
deprecated any more, as it was hard to achieve the same functionality
with the other zip functions.
unzip_process() prints better error messages to the
standard error, and exits with a non-zero status, on error.zipr() and zipr_append() get an
include_directories = TRUE argument, that can be used to
omit directory entries from the zip archive. These entries may cause
problems in MS Office docx files (#34).zip_process() and unzip_process() can
now pass extra arguments to processx::process
(#32).
unzip_process() now makes sure the
exdir path is created with forward slashes on Windows,
mixing forward and backward slashes can cause errors.
zip() and zip_append() are now
soft-deprecated, please use zipr() and
zipr_append() instead.New zipr() and zipr_append(), they
always store relative file names in the archive.
New unzip() function for uncompressing zip
archives.
New zip_process() and unzip_process()
functions to create or uncompress an archive in a background
process.
zip(), zipr(),
zip_append() and zipr_append() all include
directories in the archives, empty ones as well.
zip(), zipr(),
zip_append() and zipr_append() all add time
stamps to the archive and zip_list() returns then in the
timestamp column.
zip(), zipr(),
zip_append() and zipr_append() all add file
and directory permissions to the archive on Unix systems, and
zip_list() returns them in the permissions
column.
zip_list() now correctly reports the size of large
files in the archive.
Use miniz 2.0.8 internally.
First public release.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.