A JavaScript library to zip and unzip files in the browser, Deno and Node.js
Last release 2 days ago
25 Aug 2026
Release timing varies
gaps range from 8 days to 3 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
353 releases · first in 2021
Release timeline
353 releases since 2021Releases
- 2.7.1110 May 2023
Release notes
Open source →FS API:
- Fixed returned value of
ZipDirectoryEntry#addFileandZipDirectoryEntry#addFileSystemHandle - Fixed error when calling
ZipFileEntry.getData()in some cases
- Fixed returned value of
- 2.7.1010 May 2023
Nothing published for this version
- 2.7.99 May 2023
Release notes
Open source →FS API: added
ZipDirectoryEntry#addFileandZipDirectoryEntry#addFileSystemHandlemethods - 2.7.89 May 2023
Nothing published for this version
- 2.7.78 May 2023
Release notes
Open source →Fix temporary memory leak when compressing data, or when decompressing data and verifying data integrity (see #413). The leak was only happening during the compression/decompression of an entry in a zip file.
- 2.7.617 Apr 2023
Release notes
Open source →FS API:
- added
causeproperty on errors thrown byimport*andexport*methods - an error relative to an entry thrown when calling
export*does not prevent the export of next entries
- added
- 2.7.513 Apr 2023
Release notes
Open source →FS API:
- Fixed: keep directory metadata (last modification date, comment, version made by, external file attribute) when importing zip files containing directories stored as individual entries
- 2.7.413 Apr 2023
Nothing published for this version
- 2.7.313 Apr 2023
Release notes
Open source →Added export of entry-point files from the
./lib/in thepackage.jsonfile (see #410) - 2.7.213 Apr 2023
Release notes
Open source →- Fixed missing zip64 metadata when writing directories (i.e. entries without data) in a zip file (see https://github.com/gildas-lormeau/zip.js/issues/409)
- 2.7.17 Apr 2023
Release notes
Open source →- Fixed breaking change (TS only) introduced in
index.d.tsin versionsv2.7.0andv2.6.84
- Fixed breaking change (TS only) introduced in
- 2.7.06 Apr 2023
Release notes
Open source →- Fixed errors in the
index.d.tsfile introduced in the previous version (v2.6.84) - Breaking change for TS users:
Entry#getData()can returnundefinedasynchronously when the optioncheckPasswordOnlyis set totrue
- Fixed errors in the
- 2.6.845 Apr 2023
Release notes
Open source →Added
checkPasswordOnlyoption when creating aZipReaderinstance or callingZipReader#getData()to test if the password is valid without extracting data.FSAPI:- added
isPasswordProtected()andcheckPassword()methods inZipEntryandFS FS#import*andZipDirectoryEntry#import*methods return the imported entries- implemented
FS#importZip()
- added
- 2.6.8329 Mar 2023
- 2.6.8229 Mar 2023
Release notes
Open source →Fixed potential uncaught errors (which did not prevent zip.js from working as expected though)
- 2.6.8122 Mar 2023
Release notes
Open source →File system API (
FS):import...methods keep the metadata (externalFileAttribute,versionMadeBy,comment,lastModDate) of the imported entries.add...methods accept a new optionaloptionsargument to pass the options related to the added entry
- 2.6.8022 Mar 2023
Nothing published for this version
- 2.6.7915 Mar 2023
Release notes
Open source →File system API (
FS):- if an error is thrown when exporting a folder to a zip file, the error object will contain a property
entryIdwhich can be used to identify which entry triggered the error
- if an error is thrown when exporting a folder to a zip file, the error object will contain a property
- 2.6.788 Mar 2023
Release notes
Open source →Filesytem API (
FS):- Added a property
readerOptionspassed to the Reader instances when exporting a zip file - Made
ZipEntry#cloneparameter optional
- Added a property
- 2.6.778 Mar 2023
Nothing published for this version
- 2.6.768 Mar 2023
Nothing published for this version
- 2.6.7524 Feb 2023
- 2.6.7424 Feb 2023
Nothing published for this version
- 2.6.7324 Feb 2023
Nothing published for this version
- 2.6.7224 Feb 2023
Nothing published for this version
- 2.6.7124 Feb 2023
Nothing published for this version
- 2.6.7024 Feb 2023
Nothing published for this version
- 2.6.6921 Feb 2023
- 2.6.6821 Feb 2023
Release notes
Open source →Fixed: call
Reader#initafter async operations to prevent potential race condition leading to exceptions being thrown - 2.6.6720 Feb 2023
- 2.6.6620 Feb 2023
Release notes
Open source →Fixed uncaught exceptions when writing a zip file with the option
buferredWriteset totrueand aborting the process - 2.6.6515 Feb 2023
- 2.6.6415 Feb 2023
Nothing published for this version
- 2.6.638 Feb 2023
Release notes
Open source →What's Changed
- package.json improvements by @Hexagon in https://github.com/gildas-lormeau/zip.js/pull/397
New Contributors
- @Hexagon made their first contribution in https://github.com/gildas-lormeau/zip.js/pull/397
Full Changelog: https://github.com/gildas-lormeau/zip.js/compare/v2.6.62...v2.6.63
- 2.6.6214 Jan 2023
Release notes
Open source →Fix issue with passwords longer than 16 bytes when handling encrypted zip files in environments where
SubtleCrypto.importKey()does not exist (see #390) - 2.6.6116 Dec 2022
Release notes
Open source →- Improved zip64 support when creating zip files by writing only the necessary data
- Fixed value of the "last disk number" when reading zip files which could lead to a "split file" error with some zip file using zip64
- 2.6.6028 Nov 2022
Nothing published for this version
- 2.6.5928 Nov 2022
Release notes
Open source →Refactored code in
lib/core/streams/codecs/sjcl.js: transformed ES3 class into ES6 class (see #382) - 2.6.5827 Nov 2022
Nothing published for this version
- 2.6.5724 Nov 2022
Release notes
Open source →Fixed potential stream error when adding entries concurrently in a zip file with the option
keepOrderexplicitly set tofalse - 2.6.5622 Nov 2022
Release notes
Open source →- Added optional
mimeTypeproperty inZipDirectoryEntryExportOptions - Exposed
importZipandexportZipinZipDirectoryEntry
- Added optional
- 2.6.5522 Nov 2022
Nothing published for this version
- 2.6.5413 Nov 2022
Release notes
Open source →- Fixed error in Node.js on macOS when encrypting/decrypting files
- Improved performances by avoiding calling
Blob#slice()when creating zip with small files (i.e. <chunkSize, 512 KB by default) added concurrently
- 2.6.5313 Nov 2022
Nothing published for this version
- 2.6.521 Nov 2022
Release notes
Open source →- Make sure local and central directory header records are not split across a disk boundary when creating split zip files (see section
8.5.2of the spec)
- Make sure local and central directory header records are not split across a disk boundary when creating split zip files (see section
- 2.6.5122 Oct 2022
Release notes
Open source →Splitted the
Entryinterface inindex.d.tsinto theEntryMetaDatainterface and theEntryinterface.EntryextendsEntryMetaDataand adds the definition ofgetData()(fixes https://github.com/gildas-lormeau/zip.js/pull/377 and https://github.com/gildas-lormeau/zip.js/issues/371) - 2.6.5020 Oct 2022
Release notes
Open source →- Added the optional
maxWriterproperty onWriterinstances in order to write split data without usingSplitDataWriteror to use different values for each generatedWriterinstances (see test here https://github.com/gildas-lormeau/zip.js/blob/master/tests/all/test-split-zip.js) - Added links in comments from
index.d.tsto improve the navigation in the API documentation
- Added the optional
- 2.6.4920 Oct 2022
Nothing published for this version
- 2.6.4817 Oct 2022
Release notes
Open source →Fixed regression introduced in version 2.6.33 which could lead to errors when using
HttpReaderorHttpRangeReader - 2.6.4716 Oct 2022
Release notes
Open source →ZipWriter#addnow accepts an Array ofReader(orReadableStream) instances. ASplitDataReaderinstance will be automatically created under the hood.Entry#getDatanow accepts generator functions generatingWriter(orWritableStream) instances. ASplitDataWriterinstance will be automatically created under the hood and data will be be split into chunks of 4GB.
- 2.6.4614 Oct 2022
Release notes
Open source →- Deprecated
SplitZipReaderandSplitZipWriter. Use respectivelySplitDataReaderandSplitDataWriterinstead. (SplitZipReaderandSplitZipWriterwill be removed in the version 2.7.0) - Fixed disk number support when creating zip files with
SplitDataWriterusing zip64 - Added
preventCloseoption when callingZipWriter#close()
- Deprecated
- 2.6.4514 Oct 2022
Nothing published for this version
- 2.6.4414 Oct 2022
Nothing published for this version
- 2.6.4311 Oct 2022
Release notes
Open source →- Fixed minor issue where zip64 entries would be unnecessarily used when compressing/aborting compression of large amounts of data or data with unknown size (e.g.
ReadableStreaminstances) - Added some additional info in the API documentation related to the options used when creating a zip file (see https://gildas-lormeau.github.io/zip.js/api/interfaces/ZipWriterAddDataOptions.html)
- Fixed association between the
index.jsfile and theindex.d.tsfile (fix warnings in VSCode when editingindex.d.ts)
- Fixed minor issue where zip64 entries would be unnecessarily used when compressing/aborting compression of large amounts of data or data with unknown size (e.g.
- 2.6.4211 Oct 2022
Nothing published for this version
- 2.6.417 Oct 2022
Release notes
Open source →Fixed issue where Zip64 data could be added too early when using
SplitZipWriterand creating zip weighting 4GB+ - 2.6.406 Oct 2022
- 2.6.386 Oct 2022
Nothing published for this version
- 2.6.375 Oct 2022
Release notes
Open source →Fixed uncaught error when aborting data compression/decompression and using web workers with transferable streams (see #370)
- 2.6.365 Oct 2022
Release notes
Open source →- Fixed potential (and rare) disk number issue when using
SplitZipWriter - Updated API documentation
- Fixed potential (and rare) disk number issue when using