Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

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

Provide feedback

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

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

gh-102950: Implement PEP 706 – Filter for tarfile.extractall#102953

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
encukou merged 16 commits intopython:mainfromencukou:tarfile-dir-traversal-sqsq
Apr 24, 2023
Merged
Show file tree
Hide file tree
Changes from2 commits
Commits
Show all changes
16 commits
Select commitHold shift + click to select a range
cde089c
Implement PEP 706 – Filter for tarfile.extractall
encukouJan 31, 2023
2395c92
Add a blurb
encukouMar 23, 2023
561a9d4
Remove unneeded backslashes in docs
encukouMar 27, 2023
54b5644
Fix typos in docs & comments
encukouMar 27, 2023
7867fc3
Clarify the arguments to register_unpack_format's +function* argument
encukouMar 27, 2023
734190d
tests: Clean up unused variables and unnecessary f-strings
encukouMar 27, 2023
d55ae42
Make filter keyword-only in shutil
encukouApr 6, 2023
c795bb3
Address documentation review
encukouApr 6, 2023
5d850cc
Fix ReST syntax
encukouApr 6, 2023
81e9050
Merge main branch to resolve conflict in Whatsnew
encukouApr 11, 2023
de11090
Remove typo
encukouApr 11, 2023
b0c0674
Improve errorlevel handling
encukouApr 18, 2023
3796fdf
Fix the tests to match the PEP update
encukouApr 19, 2023
08ab551
Document type of errorlevel
encukouApr 19, 2023
0474842
Skip symlink-related test failures on WASI
encukouApr 20, 2023
a255634
Ignore unrelated errors in NoneInfoTests_Misc.test_add
encukouApr 20, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletionDoc/library/shutil.rst
View file
Open in desktop
Original file line numberDiff line numberDiff line change
Expand Up@@ -642,7 +642,7 @@ provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules.
Remove the archive format *name* from the list of supported formats.


.. function:: unpack_archive(filename[, extract_dir[, format]])
.. function:: unpack_archive(filename[, extract_dir[, format[, filter]]])

Unpack an archive. *filename* is the full path of the archive.

Expand All@@ -656,6 +656,14 @@ provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules.
registered for that extension. In case none is found,
a :exc:`ValueError` is raised.

*filter* is passed to the underlying unpacking function.
For zip files, *filter* is not accepted.
For tar files, it is recommended to set it to ``'data'``,
unless using features specific to tar and UNIX filesystems.
(See :ref:`tarfile-extraction-filter` for details.)
The ``'data'`` filter will become the default for tar files
in Python 3.14.

.. audit-event:: shutil.unpack_archive filename,extract_dir,format shutil.unpack_archive

.. warning::
Expand All@@ -668,6 +676,9 @@ provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules.
.. versionchanged:: 3.7
Accepts a :term:`path-like object` for *filename* and *extract_dir*.

.. versionchanged:: 3.12
Added the *filter* argument.

.. function:: register_unpack_format(name, extensions, function[, extra_args[, description]])

Registers an unpack format. *name* is the name of the format and
Expand All@@ -678,6 +689,9 @@ provided. They rely on the :mod:`zipfile` and :mod:`tarfile` modules.
callable will receive the path of the archive, followed by the directory
the archive must be extracted to.

If *filter* is used with ``unpack_archive``, it will be passed to *function*
as an additional named argument.

When provided, *extra_args* is a sequence of ``(name, value)`` tuples that
will be passed as keywords arguments to the callable.

Expand Down
Loading

[8]ページ先頭

©2009-2025 Movatter.jp