summaryrefslogtreecommitdiffstats
path: root/Lib/zipfile.py
Commit message (Collapse)AuthorAgeFilesLines
* gh-98098: Create packages from zipfile and test_zipfile (gh-98103)Jason R. Coombs2022-11-261-2566/+0
| | | | | | | | | | | | | * gh-98098: Move zipfile into a package. * Moved test_zipfile to a package * Extracted module for test_path. * Add blurb * Add jaraco as owner of zipfile.Path. * Synchronize with minor changes found at jaraco/zipp@d9e7f4352d.
* gh-98286: handle empty filename in ZipFile/ZipInfo properly (#98346)FC Stegerman2022-10-291-2/+5
| | | effectively code modernization and a meaningful exception.
* gh-45108: Improve docstring and testing of ZipFile.testfile() (GH-96233)Serhiy Storchaka2022-09-031-1/+4
|
* gh-95463: Remove backwards incompatible change regarding the ↵Pablo Galindo Salgado2022-08-181-1/+1
| | | | | _MASK_UTF_FILENAME flags in bpo-28080 (GH-96072) Automerge-Triggered-By: GH:pablogsal
* gh-88339: enable fast seeking of uncompressed unencrypted zipfile.ZipExtFile ↵JuniorJPDJ2022-08-061-5/+19
| | | | | | | (GH-27737) Avoid reading all of the intermediate data in uncompressed items in a zip file when the user seeks forward. Contributed by: @JuniorJPDJ
* gh-94018: Remove trailing spaces in _sanitize_windows_name (GH-94040)Robin Plumey2022-06-281-2/+2
| | | | | | | | Closes #94018. Co-authored-by: Sam Ezeh <sam.z.ezeh@gmail.com> Co-authored-by: Shantanu <12621235+hauntsaninja@users.noreply.github.com> Co-authored-by: Zachary Ware <zachary.ware@gmail.com>
* gh-83245: Raise BadZipFile instead of ValueError when reading a corrupt ZIP ↵Sam Ezeh2022-05-231-0/+2
| | | | | | file (GH-32291) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* gh-89668: Optimize ZipFile file header processing algorithm to avoid ↵Jan Wolski2022-05-151-1/+1
| | | | unneeded IO(gh-25966)
* bpo-4833: Add ZipFile.mkdir (GH-32160)Sam Ezeh2022-04-051-17/+36
|
* bpo-28080: Add support for the fallback encoding in ZIP files (GH-32007)Serhiy Storchaka2022-03-221-8/+23
| | | | | | * Add the metadata_encoding parameter in the zipfile.ZipFile constructor. * Add the --metadata-encoding option in the zipfile CLI. Co-authored-by: Stephen J. Turnbull <stephen@xemacs.org>
* bpo-42369: Fix thread safety of zipfile._SharedFile.tell (GH-26974)Kevin Mehall2022-03-201-1/+3
| | | | | | | | | | | The `_SharedFile` tracks its own virtual position into the file as `self._pos` and updates it after reading or seeking. `tell()` should return this position instead of calling into the underlying file object, since if multiple `_SharedFile` instances are being used concurrently on the same file, another one may have moved the real file position. Additionally, calling into the underlying `tell` may expose thread safety issues in the underlying file object because it was called without taking the lock.
* bpo-44439: _ZipWriteFile.write() handle buffer protocol correctly (GH-29468)Ma Lin2022-03-081-1/+8
| | | | Co-authored-by: Marco Ribeiro <marcoffee@users.noreply.github.com>
* bpo-39359: [zipfile] add missing "pwd: expected bytes, got str" exception ↵Daniel Hillier2021-09-231-2/+2
| | | | (GH-18031)
* bpo-44129: Add descriptive global variables for general purpose bit flags ↵Daniel Hillier2021-07-031-12/+38
| | | | | | | | | | | (GH-26118) Replace hex flag masks with named global variables to improve readability. eg. if flags & 0x800 becomes: if flags & _MASK_UTF_FILENAME
* bpo-44095: Add suffix, stem and suffixes to zipfile.Path (GH-26129)Miguel Brito2021-05-141-0/+12
|
* bpo-43651: Fix EncodingWarning in zipfile (GH-25650)Inada Naoki2021-04-271-0/+3
|
* bpo-42090: zipfile.Path.joinpath now accepts multiple arguments (GH-22976)Jason R. Coombs2020-12-161-2/+2
| | | Automerge-Triggered-By: GH:jaraco
* bpo-42043: Add support for zipfile.Path subclasses (#22716)Jason R. Coombs2020-10-251-9/+30
| | | | | * bpo-42043: Add support for zipfile.Path inheritance as introduced in zipp 3.2.0. * Add blurb.
* bpo-40564: Avoid copying state from extant ZipFile. (GH-22371)Jason R. Coombs2020-10-031-6/+17
| | | bpo-40564: Avoid copying state from extant ZipFile.
* bpo-40105: ZipFile truncate in append mode with shorter comment (GH-19337)Jan Mazur2020-09-281-0/+2
|
* bpo-41068: Fix read after write in zipfile for non-ASCII files names. (GH-21040)Serhiy Storchaka2020-06-221-1/+1
|
* bpo-40443: Remove unused imports in the stdlib (GH-19803)Victor Stinner2020-04-301-1/+0
|
* bpo-39830: Add zipfile.Path to __all__ (GH-19115)Zackery Spytz2020-03-231-1/+2
|
* bpo-39667: Sync zipp 3.0 (GH-18540)Jason R. Coombs2020-02-291-32/+31
| | | | | | | | | | | | | | * bpo-39667: Improve pathlib.Path compatibility on zipfile.Path and correct performance degradation as found in zipp 3.0 * 📜🤖 Added by blurb_it. * Update docs for new zipfile.Path.open * Rely on dict, faster than OrderedDict. * Syntax edits on docs Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* bpo-39595: Improve zipfile.Path performance (#18406)Jason R. Coombs2020-02-121-22/+80
| | | | | | | | | | | | | | | | | | * Improve zipfile.Path performance on zipfiles with a large number of entries. * 📜🤖 Added by blurb_it. * Add bpo to blurb * Sync with importlib_metadata 1.5 (6fe70ca) * Update blurb. * Remove compatibility code * Add stubs module, omitted from earlier commit Co-authored-by: blurb-it[bot] <43283697+blurb-it[bot]@users.noreply.github.com>
* bpo-39356, zipfile: Remove code handling DeprecationWarning (GH-18027)Victor Stinner2020-01-171-19/+9
| | | | | | | | Remove old "except DeprecationWarning:" code path added by commit bf02e3bb21b2d75cba4ce409a14ae64dbc2dd6d2. It's no longer needed. struct.pack() no longer emit DeprecationWarning if getting a float whereas an integer is expected. It now raises an hard error instead.
* bpo-37523: Raise ValueError for I/O operations on a closed ↵Daniel Hillier2019-11-301-0/+10
| | | | | zipfile.ZipExtFile. (GH-14658) Raises ValueError when calling the following on a closed zipfile.ZipExtFile: read, readable, seek, seekable, tell.
* bpo-38635: Simplify decoding the ZIP64 extra field and make it tolerant to ↵Serhiy Storchaka2019-11-091-37/+16
| | | | extra data. (GH-16988)
* bpo-36993: Improve error reporting for zipfiles with bad zip64 extra data. ↵Daniel Hillier2019-10-291-0/+12
| | | | (GH-14656)
* bpo-38334: Fix seeking backward on an encrypted zipfile.ZipExtFile. (GH-16937)Serhiy Storchaka2019-10-271-26/+31
| | | Test by Daniel Hillier.
* bpo-36991: Fix incorrect exception escaping ZipFile.extract() (GH-13632)Berker Peksag2019-09-121-0/+1
|
* bpo-26185: Fix repr() on empty ZipInfo object (#13441)Mickaël Schoentgen2019-09-091-5/+3
| | | | | | | | | | | | * bpo-26185: Fix repr() on empty ZipInfo object It was failing on AttributeError due to inexistant but required attributes file_size and compress_size. They are now initialized to 0 in ZipInfo.__init__(). * Remove useless hasattr() in ZipInfo._open_to_write() * Completely remove file_size setting in _open_to_write().
* bpo-37772: fix zipfile.Path.iterdir() outputs (GH-15170)shireenrao2019-08-241-6/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix Path._add_implied_dirs to include all implied directories * fix Path._add_implied_dirs to include all implied directories * Optimize code by using sets instead of lists * 📜🤖 Added by blurb_it. * fix Path._add_implied_dirs to include all implied directories * Optimize code by using sets instead of lists * 📜🤖 Added by blurb_it. * Add tests to zipfile.Path.iterdir() fix * Update test for zipfile.Path.iterdir() * remove whitespace from test file * Rewrite NEWS blurb to describe the user-facing impact and avoid implementation details. * remove redundant [] within set comprehension * Update to use unique_everseen to maintain order and other suggestions in review * remove whitespace and add back add_dirs in tests * Add new standalone function parents using posixpath to get parents of a directory * removing whitespace (sorry) * Remove import pathlib from zipfile.py * Rewrite _parents as a slice on a generator of the ancestry of a path. * Remove check for '.' and '/', now that parents no longer returns those. * Separate calculation of implied dirs from adding those * Re-use _implied_dirs in tests for generating zipfile with dir entries. * Replace three fixtures (abcde, abcdef, abde) with one representative example alpharep. * Simplify implementation of _implied_dirs by collapsing the generation of parent directories for each name.
* bpo-37520: Correct behavior for zipfile.Path.parent (GH-14638)Jason R. Coombs2019-07-071-1/+1
| | | | | | * bpo-37520: Correct behavior for zipfile.Path.parent * 📜🤖 Added by blurb_it.
* Fix typos in docs and docstrings (GH-13745)Xtreak2019-06-021-1/+1
|
* bpo-22102: Fixes zip files with disks set to 0 (GH-5985)Francisco Facioni2019-05-281-1/+1
|
* Add support for .parent and .joinpath in zipfile.Path (#13213)Jason R. Coombs2019-05-091-1/+10
|
* bpo-36832: add zipfile.Path (#13153)Jason R. Coombs2019-05-081-5/+139
| | | | | | | | | | | | | | | | | | | | | | | | * bpo-36832: add zipfile.Path * bpo-36832: add documentation for zipfile.Path * 📜🤖 Added by blurb_it. * Remove module reference from blurb. * Sort the imports * Update docstrings and docs per recommendations. * Rely on test.support.temp_dir * Signal that 'root' is the parameter. * Correct spelling of 'mod' * Convert docstring to comment for brevity. * Fix more errors in the docs
* bpo-36434: Properly handle writing errors in ZIP files. (GH-12559)Serhiy Storchaka2019-03-301-41/+44
| | | | | Errors during writing no longer prevent to properly close the ZIP file.
* Fix typo duplicate period in a docstring in the zipfile module. (GH-12326)nick sung2019-03-141-1/+1
|
* bpo-32035: Fix words about strings and bytes in zipfile documentation. ↵Serhiy Storchaka2018-11-251-2/+2
| | | | (GH-10592)
* bpo-34472: Add data descriptor signature to zipfile (GH-8871)Silas Sewell2018-09-181-2/+4
| | | | This makes streamed zips compatible with MacOS Archive Utility and other applications.
* bpo-34341: Fix appending to ZIP archives with the ZIP64 extension. (GH-8683)Serhiy Storchaka2018-09-171-0/+22
|
* bpo-34097: Polish API design (GH-8725)Marcel Plch2018-08-311-4/+4
| | | Move strict_timestamps to constructor.
* bpo-34097: Add support for zipping files older than 1980-01-01 (GH-8270)Marcel Plch2018-08-021-3/+9
| | | | | ZipFile can zip files older than 1980-01-01 and newer than 2107-12-31 using a new strict_timestamps parameter at the cost of setting the timestamp to the limit.
* bpo-34035: Fix several AttributeError in zipfile seek() methods. (GH-8527)Mickaël Schoentgen2018-07-291-4/+3
|
* bpo-30693: zip+tarfile: sort directory listing (#2263)Bernhard M. Wiedemann2018-01-311-3/+3
| | | | | | tarfile and zipfile now sort directory listing to generate tar and zip archives in a more reproducible way. See also https://reproducible-builds.org/docs/stable-inputs/ on that topic.
* bpo-22908: Add seek and tell functionality to ZipExtFile (GH-4966)John Jolly2018-01-301-0/+82
| | | | | This allows for nested zip files, tar files within zip files, zip files within tar files, etc. Contributed by: John Jolly
* bpo-21417: Add compresslevel= to the zipfile module (GH-5385)Bo Bayles2018-01-301-8/+35
| | | | | | This allows the compression level to be specified when writing zipfiles (for the entire file *and* overridden on a per-file basis). Contributed by Bo Bayles
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-071-5/+1
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.