Title: gh-103861: Fix Zip64 extensions not being properly applied in some cases by pR0Ps · Pull Request #103863 · python/cpython · GitHub
Open Graph Title: gh-103861: Fix Zip64 extensions not being properly applied in some cases by pR0Ps · Pull Request #103863 · python/cpython
X Title: gh-103861: Fix Zip64 extensions not being properly applied in some cases by pR0Ps · Pull Request #103863 · python/cpython
Description: This commit fixes an issue where adding a small file to a ZipFile object while forcing zip64 extensions causes an extra Zip64 record to be added to the zip, but doesn't update the min_version or file sizes. To create a file that reproduces the issue (copied from #103861): import zipfile with zipfile.ZipFile("out.zip", mode="w", allowZip64=True) as zf: with zf.open("text.txt", mode="w", force_zip64=True) as zi: zi.write(b"some data") Diff of information extracted by zipdetails from running the above script before and after this commit. 0000 LOCAL HEADER #1 04034B50 -0004 Extract Zip Spec 14 '2.0' +0004 Extract Zip Spec 2D '4.5' 0005 Extract OS 00 'MS-DOS' 0006 General Purpose Flag 0000 0008 Compression Method 0000 'Stored' 000A Last Mod Time 00210000 'Mon Dec 31 19:00:00 1979' 000E CRC D9C2E91E -0012 Compressed Length 00000009 -0016 Uncompressed Length 00000009 +0012 Compressed Length FFFFFFFF +0016 Uncompressed Length FFFFFFFF 001A Filename Length 0008 001C Extra Length 0014 001E Filename 'text.txt' 0026 Extra ID #0001 0001 'ZIP64' 0028 Length 0010 002A Uncompressed Size 0000000000000009 0032 Compressed Size 0000000000000009 003A PAYLOAD some data 0043 CENTRAL HEADER #1 02014B50 -0047 Created Zip Spec 14 '2.0' +0047 Created Zip Spec 2D '4.5' 0048 Created OS 03 'Unix' -0049 Extract Zip Spec 14 '2.0' +0049 Extract Zip Spec 2D '4.5' 004A Extract OS 00 'MS-DOS' 004B General Purpose Flag 0000 004D Compression Method 0000 'Stored' 004F Last Mod Time 00210000 'Mon Dec 31 19:00:00 1979' 0053 CRC D9C2E91E 0057 Compressed Length 00000009 005B Uncompressed Length 00000009 005F Filename Length 0008 0061 Extra Length 0000 0063 Comment Length 0000 0065 Disk Start 0000 0067 Int File Attributes 0000 [Bit 0] 0 'Binary Data' 0069 Ext File Attributes 01800000 006D Local Header Offset 00000000 0071 Filename 'text.txt' 0079 END CENTRAL HEADER 06054B50 007D Number of this disk 0000 007F Central Dir Disk no 0000 0081 Entries in this disk 0001 0083 Total Entries 0001 0085 Size of Central Dir 00000036 0089 Offset to Central Dir 00000043 008D Comment Length 0000 A test has also been added that checks that these properties are correctly set. Issue: gh-103861 Potential reviewer based on the git blame of the changed lines: @serhiy-storchaka (182d7cd) Potential reviewers based on the experts index: @Yhg1s, @gpshead
Open Graph Description: This commit fixes an issue where adding a small file to a ZipFile object while forcing zip64 extensions causes an extra Zip64 record to be added to the zip, but doesn't update the min_version o...
X Description: This commit fixes an issue where adding a small file to a ZipFile object while forcing zip64 extensions causes an extra Zip64 record to be added to the zip, but doesn't update the min_versi...
Opengraph URL: https://github.com/python/cpython/pull/103863
X: @github
Domain: github.com
| route-pattern | /:user_id/:repository/pull/:id/checks(.:format) |
| route-controller | pull_requests |
| route-action | checks |
| fetch-nonce | v2:bbb4e7ab-2f71-8c48-9bc9-a3de7526c0b8 |
| current-catalog-service-hash | 87dc3bc62d9b466312751bfd5f889726f4f1337bdff4e8be7da7c93d6c00a25a |
| request-id | 8464:1D70BE:1661FAF:1DF0FBC:6969B864 |
| html-safe-nonce | 9feb717b864f0e49841ac07508921b653bdc5a6c48d2402549624e3e37efe3db |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4NDY0OjFENzBCRToxNjYxRkFGOjFERjBGQkM6Njk2OUI4NjQiLCJ2aXNpdG9yX2lkIjoiNzY2OTA5MjMyMTMxMDkxNDY2MCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 757123891b5a2522925d2eadb8f6857bc391ce3864d4c22bbc7b87e465b35699 |
| hovercard-subject-tag | pull_request:1327897446 |
| github-keyboard-shortcuts | repository,pull-request-list,pull-request-conversation,pull-request-files-changed,checks,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/python/cpython/pull/103863/checks |
| twitter:image | https://avatars.githubusercontent.com/u/466941?s=400&v=4 |
| twitter:card | summary_large_image |
| og:image | https://avatars.githubusercontent.com/u/466941?s=400&v=4 |
| og:image:alt | This commit fixes an issue where adding a small file to a ZipFile object while forcing zip64 extensions causes an extra Zip64 record to be added to the zip, but doesn't update the min_version o... |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | acedec8b5f975d9e3d494ddd8f949b0b8a0de59d393901e26f73df9dcba80056 |
| turbo-cache-control | no-preview |
| go-import | github.com/python/cpython git https://github.com/python/cpython.git |
| octolytics-dimension-user_id | 1525981 |
| octolytics-dimension-user_login | python |
| octolytics-dimension-repository_id | 81598961 |
| octolytics-dimension-repository_nwo | python/cpython |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 81598961 |
| octolytics-dimension-repository_network_root_nwo | python/cpython |
| turbo-body-classes | logged-out env-production page-responsive full-width full-width-p-0 |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 83c08c21cdda978090dc44364b71aa5bc6dcea79 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width