Exceptions
Exceptions raised by the source iterables are passed through the stream_zip
function to client code unchanged. Other exceptions are in the stream_zip
module and derive from stream_zip.ZipError
.
Exception hierarchy
-
ZipError
Base class for all explicitly-thrown exceptions
-
ZipValueError (also inherits from the ValueError built-in)
Base class for errors relating to invalid arguments
-
ZipIntegrityError
An integrity check failed
-
CRC32IntegrityError
The CRC32 calculated from data did not match the CRC32 passed into the method
-
UncompressedSizeIntegrityError
The uncompressed size of data did not match the uncompressed size passed into the method
-
-
ZipOverflowError (also inherits from the OverflowError built-in)
The size or positions of data in the ZIP are too large to store using the requested method
-
UncompressedSizeOverflowError
The uncompressed size of a member file is too large. For a
*_32
member file the maximum uncompressed size is 2^32 - 1 bytes, and for a*_64
member file the maximum uncompressed size is 2^64 - 1 bytes. -
CompressedSizeOverflowError
The compressed size of a member file is too large. For a
*_32
member file the maximum compressed size is 2^32 - 1 bytes, and for a*_64
member file the maximum compressed size is 2^64 - 1 bytes. -
CentralDirectorySizeOverflowError
The central directory, a section at the end of the ZIP that lists all the member files, is too large. The maximum size of the central directory if there are only
*_32
member files is 2^32 - 1 bytes. If there are any*_64
member files the maximum size is 2^64 - 1 bytes. -
CentralDirectoryNumberOfEntriesOverflowError
The central directory, a section at the end of the ZIP that lists all the member files, has too many entries. If there are only
*_32
member files the maximum number of entries is 2^16 - 1. If there are any*_64
member files, the maximum number of entries is 2^64 - 1. -
OffsetOverflowError
The offset of data in the ZIP is too high, i.e. the ZIP is too large. If there are only
*_32
member files the maximum offset is 2^32 - 1 bytes. If there are any*_64
member files the maximum offset is 2^64 - 1 bytes.This can be raised when stream-zip adds member files, or when it adds the central directory at the end of the ZIP file.
Due to the nature of the ZIP file format, it is possible for the ZIP file to be larger than the maximum allowed offset without this exception being thrown. For example, even if there are only
*_32
member files, the archive can be larger than 2^32 - 1 bytes. -
NameLengthOverflowError
The length of a file name is too high. The limit is 2^16 - 1 bytes, and applied to file names after UTF-8 encoding. This is the limit whether or not there are any
*_64
member files.
-
-
-