← 返回首页
gh-88233: zipfile: refactor _strip_extra by jaraco · Pull Request #102084 · python/cpython · GitHub
Skip to content

Navigation Menu

Toggle navigation
Sign in
Appearance settings
Search or jump to...

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Resetting focus

gh-88233: zipfile: refactor _strip_extra#102084

Merged
jaraco merged 5 commits into
python:mainfrom
jaraco:refactor/zipfile-extra
Sep 25, 2023
Merged

gh-88233: zipfile: refactor _strip_extra#102084
jaraco merged 5 commits into
python:mainfrom
jaraco:refactor/zipfile-extra

Conversation

jaraco commented Feb 20, 2023
edited by bedevere-bot
Loading

Copy link
Copy Markdown
Member

While reviewing #96161, I too had difficulty fully understanding the complexities of _strip_extra function.

This PR refactors that function to use a class with methods separating the concerns (parsing, splitting, filtering, modeling) and using a higher-level abstraction to model the concept.

jaraco force-pushed the refactor/zipfile-extra branch from 6e57d1f to e6abc55 Compare February 20, 2023 17:10
Comment thread Lib/zipfile/__init__.py Show resolved Hide resolved
jaraco requested a review from serhiy-storchaka July 14, 2023 16:40

jaraco commented Jul 14, 2023

Copy link
Copy Markdown
Member Author

@serhiy-storchaka If you don't mind, would you take a look at this refactor - see if you have any concerns?

jaraco merged commit e9791ba into python:main Sep 25, 2023
jaraco deleted the refactor/zipfile-extra branch September 25, 2023 23:47

Copy link
Copy Markdown

⚠️⚠️⚠️ Buildbot failure ⚠️⚠️⚠️

Hi! The buildbot AMD64 FreeBSD 3.x has failed when building commit e9791ba.

What do you need to do:

  1. Don't panic.
  2. Check the buildbot page in the devguide if you don't know what the buildbots are or how they work.
  3. Go to the page of the buildbot that failed (https://buildbot.python.org/all/#builders/1223/builds/222) and take a look at the build logs.
  4. Check if the failure is related to this commit (e9791ba) or if it is a false positive.
  5. If the failure is related to this commit, please, reflect that on the issue and make a new Pull Request with a fix.

You can take a look at the buildbot page here:

https://buildbot.python.org/all/#builders/1223/builds/222

Failed tests:

  • test.test_concurrent_futures.test_shutdown

Failed subtests:

  • test_cancel_futures_wait_false - test.test_concurrent_futures.test_shutdown.ThreadPoolShutdownTest.test_cancel_futures_wait_false

Summary of the results of the build (if available):

==

Click to see traceback logs
Traceback (most recent call last): File "/buildbot/buildarea/3.x.ware-freebsd/build/Lib/test/test_concurrent_futures/test_shutdown.py", line 250, in test_cancel_futures_wait_false self.assertEqual(out.strip(), b"apple") AssertionError: b'' != b'apple'

csm10495 pushed a commit to csm10495/cpython that referenced this pull request Sep 28, 2023
* Refactor zipfile._strip_extra to use higher level abstractions for extras instead of a heavy-state loop. * Add blurb * Remove _strip_extra and use _Extra.strip directly. * Use memoryview to avoid unnecessary copies while splitting Extras.
Glyphack pushed a commit to Glyphack/cpython that referenced this pull request Sep 2, 2024
* Refactor zipfile._strip_extra to use higher level abstractions for extras instead of a heavy-state loop. * Add blurb * Remove _strip_extra and use _Extra.strip directly. * Use memoryview to avoid unnecessary copies while splitting Extras.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

Footer

© 2026 GitHub, Inc.