Releases: r-lib/zip
zip 3.0.0
-
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 anencryptioncolumn indicating the encryption
scheme used for each entry (#38). -
unzip()is now vectorized. If all arguments apart fromzipfile,
exdirandpasswordare the default, then it unprocesses all files
concurrently, using a thread pool. The size of the thread pool can be
set with thezip_threadsoption or theZIP_THREADSenvironment
variable (#147). -
zip_list()andunzip()now work directly onhttp://andhttps://
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()andunzip()now report the Unix permission bits stored in an
archive on Windows as well. Previously they always reported700/600on
Windows, regardless of the permissions recorded in the ZIP file. -
zip_list()andunzip()now reporttype == "directory"for directory
entries whose Unix mode bits lackS_IFDIRbut that are marked as
directories by a trailing slash or the DOS directory attribute (e.g.
archives created byzip()itself). Previously these were reported as
"file". -
zip()andunzip()now show a progress bar when theclipackage is
installed. Forzip(), progress is byte-level, so large single files are
tracked smoothly. Forunzip(), progress advances once per extracted
entry. Progress bars are (for now) opt-in via theZIP_PROGRESS=true
environment variable or thezip.progressoption (#48). -
unzip()now returns a data frame (invisibly) with one row per extracted
entry, containing the same columns aszip_list()(filename,
compressed_size,uncompressed_size,timestamp,permissions,
crc32,offset,type) plus apathcolumn with the absolute path
to each extracted file on disk (#35). -
zip_list()andunzip()now have anencodingargument for ZIP files
with non-UTF-8, non-CP437 filenames (e.g. CP932/Shift-JIS on Japanese
Windows). Whenencodingis set, filenames without the UTF-8 flag are
decoded from the specified code page instead of CP437 (#101). -
zip_append()andzipr_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()andzip_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
keysargument tozip(),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 bundledcmdunzipexecutable cannot be started (#135). -
Updated embedded miniz to version 3.1.1 (#122).
zip 2.3.3
zip 2.3.2
zip_list()now returns atblobject, and loads the pillar package,
if installed, to produce the nicer output for long data frames.
zip 2.3.1
zip 2.3.0
-
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 (seeumask(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()andinflate()functions to compress and uncompress
GZIP streams in memory.
zip 2.2.2
- No user visible changes.
zip 2.2.1
- No user visible changes.
v2.2.0
v2.1.1
This version has no user visible changes.
v2.1.0
-
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
thanexdiron Windows (#45) -
zip functions now have a
modeargument to choose how files and
directories are assembled into the archive. See the docs for
details. -
zip functions now have a
rootargument, zip changes the working
directory to this before creating the archive, so all files are
relative toroot. -
zip()andzip_append()are not deprecated any more, as it was
hard to achieve the same functionality with the other zip functions.