Commit graph

101 commits

Author SHA1 Message Date
Miss Islington (bot)
2caae152b9
[3.14] gh-86608: Improve and restructure tarfile examples (GH-121771) (#136866)
gh-86608: Improve and restructure tarfile examples (GH-121771)

Add an example on how to write a tarfile to stdout; general improvements.
(cherry picked from commit cc81b4e501)

Co-authored-by: Dominic H <dom@dominic.sk>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
2025-07-20 14:16:19 +01:00
Miss Islington (bot)
1a2898a383
[3.14] Docs: Move "or" outside monospace syntax in tarfile.rst (GH-136263) (GH-136290)
Docs: Move "or" outside monospace syntax in `tarfile.rst` (GH-136263)
(cherry picked from commit ade1988094)

Co-authored-by: Rafael Fontenelle <rffontenelle@users.noreply.github.com>
2025-07-04 14:46:57 +00:00
Miss Islington (bot)
e39f33259e
[3.14] gh-135252: Document Zstandard integration across zipfile, shutil, and tarfile (GH-135311) (#136254)
gh-135252: Document Zstandard integration across zipfile, shutil, and tarfile (GH-135311)

Document Zstandard integration across zipfile, shutil, and tarfile
(cherry picked from commit 938a5d7e62)

Co-authored-by: Emma Smith <emma@emmatyping.dev>
2025-07-03 20:34:38 +00:00
Hugo van Kemenade
26d485d122 Python 3.14.0b3 2025-06-17 18:40:54 +03:00
Łukasz Langa
9e0ac76d96
[3.14] gh-135034: Normalize link targets in tarfile, add os.path.realpath(strict='allow_missing') (gh-135037) (gh-135065)
Addresses CVEs 2024-12718, 2025-4138, 2025-4330, and 2025-4517.

(cherry picked from commit 3612d8f517)

Signed-off-by: Łukasz Langa <lukasz@langa.pl>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
Co-authored-by: Seth Michael Larson <seth@python.org>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
2025-06-03 14:05:00 +02:00
Hugo van Kemenade
b092705907 Python 3.14.0b1 2025-05-06 18:33:52 +03:00
Michał Górny
019ee49d50
gh-133005: Support tarfile.open(mode="w|xz", preset=...) (GH-133007)
* gh-133005: Support `tarfile.open(mode="w|xz", preset=...)`

Support passing the `preset` option to `tarfile.open` when the file
is open with `mode="w|xz"`.  This aligns the behavior with `"w:xz"`
mode.

* Also raise an error for `compresslevel` or `preset` with wrong mode

Raise an error if `compresslevel` or `preset` argument is specified
for stream mode with incorrect compression. This should reduce the risk
of mistakes and align the stream modes with regular modes, that raise
an implicit TypeError on unsupported arguments.

* Apply suggestions from code review

Co-authored-by: Brian Schubert <brianm.schubert@gmail.com>
2025-04-27 22:19:59 +00:00
Wei-Hsiang (Matt) Wang
103a0470e3
gh-123492: Remove unnecessary :func: parentheses (#123493) 2024-08-30 14:34:09 +03:00
WilliamRoyNelson
dcafb362f7
gh-121999: Change default tarfile filter to 'data' (GH-122002)
Co-authored-by: Tomas R <tomas.roun8@gmail.com>
Co-authored-by: Scott Odle <scott@sjodle.com>
Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
Co-authored-by: Petr Viktorin <encukou@gmail.com>
2024-07-26 16:34:13 +02:00
Ned Batchelder
bcb435ee8f
docs: module page titles should not start with a link to themselves (#117099) 2024-05-08 20:34:40 +01:00
Serhiy Storchaka
51ef89cd9a
gh-115961: Add name and mode attributes for compressed file-like objects (GH-116036)
* Add name and mode attributes for compressed and archived file-like objects
  in modules bz2, lzma, tarfile and zipfile.
* Change the value of the mode attribute of GzipFile from integer (1 or 2)
  to string ('rb' or 'wb').
* Change the value of the mode attribute of ZipExtFile from 'r' to 'rb'.
2024-04-21 11:46:39 +03:00
lyc8503
15b3555e4a
gh-116931: Add fileobj parameter check for Tarfile.addfile (GH-117988)
Tarfile.addfile now throws an ValueError when the user passes
in a non-zero size tarinfo but does not provide a fileobj,
instead of writing an incomplete entry.
2024-04-19 11:41:51 +00:00
Stanley
d7d0d13cd3
gh-89159: Add some TarFile attribute types (GH-114520)
Co-authored-by: Stanley <46876382+slateny@users.noreply.github.com>
2024-01-29 09:19:22 +00:00
Stanley
3aa4b839e4
gh-89159: Document missing TarInfo members (#91564) 2024-01-12 23:19:57 +00:00
Stanley
0651936ae2
gh-67641: Clarify documentation on bytes vs text with non-seeking tarfile stream (GH-31610) 2023-12-27 17:16:36 +00:00
Hugo van Kemenade
f428c4dafb
gh-101100: Fix Sphinx warnings in library/tarfile.rst (#113237)
Fix Sphinx warnings in library/tarfile.rst
2023-12-18 08:57:45 +02:00
Adam Turner
77e9aae383
Docs: Avoid the deprecated `.. cmdoption::` directive (#110292) 2023-10-03 17:38:12 +00:00
Petr Viktorin
acbd3f9c5c
gh-107845: Fix symlink handling for tarfile.data_filter (GH-107846)
Co-authored-by: Victor Stinner <vstinner@python.org>
Co-authored-by: Lumír 'Frenzy' Balhar <frenzy.madness@gmail.com>
2023-08-21 12:56:46 +02:00
Serhiy Storchaka
d036db728e
gh-106892: Use roles :data: and :const: for referencing module variables (GH-106894) 2023-07-21 12:34:30 +03:00
Jelle Zijlstra
5cdd5ba49d
tarfile: Fix positional-only syntax in docs (GH-105770)
The syntax used in the current docs (a / before any args) is invalid.

I think the right approach is for the arguments to arbitrary
filter functions to be treated as positional-only, meaning that users
can supply filter functions with any names for the argument. tarfile.py
only calls the filter function with positional arguments.
2023-06-14 09:26:48 +02:00
Robert O'Shea
50fce89d12
gh-102120: [TarFile] Add an iter function that doesn't cache (GH-102128) 2023-05-23 13:44:40 -07:00
Petr Viktorin
af53046995
gh-102950: Implement PEP 706 – Filter for tarfile.extractall (#102953) 2023-04-24 10:58:06 +02:00
Owain Davies
ea232716d3
gh-101422: (docs) TarFile default errorlevel argument is 1, not 0 (GH-101424) 2023-01-30 09:56:33 -08:00
Ned Batchelder
3440d197a5
Docs: remove redundant "adverb-adjective" hyphens from compound modifiers (GH-94551)
Discussion: https://discuss.python.org/t/slight-grammar-fix-throughout-adverbs-dont-need-hyphen/17021
2022-07-05 11:16:10 +02:00
Yaron de Leeuw
50cd4b6959
bpo-26253: Add compressionlevel to tarfile stream (GH-2962)
`tarfile` already accepts a compressionlevel argument for creating
files. This patch adds the same for stream-based tarfile usage.
The default is 9, the value that was previously hard-coded.
2022-06-25 11:43:54 +03:00
Kumar Aditya
71ef0b4c2b
bpo-46157: fix typo in docs (GH-30237) 2021-12-23 11:17:31 +02:00
Zackery Spytz
eb2d4a66ff
bpo-32695: Docs and tests for compresslevel and preset kwargs in tarfile (GH-21470)
Co-Authored-By: Bo Bayles <bbayles@gmail.com>
2021-08-09 12:05:31 +02:00
Andre Delfino
dcc997cd28
[doc] Fix erroneous backslashes in signatures and names (GH-23658)
The issue being resolved is shown in the 3.10 docs (if you select docs for older versions you won't see a visual glitch).

The newer sphinx version that produces the 3.10 docs doesn't treat the backslash to escape things in some situations it previously did.
2020-12-16 17:37:28 -08:00
Andrey Doroschenko
ec42789e6e
bpo-39693: mention KeyError in tarfile extractfile documentation (GH-18639)
Co-authored-by: Andrey Darascheka <andrei.daraschenka@leverx.com>
2020-10-20 10:05:01 -04:00
Victor Stinner
d3ded08048
bpo-40204: Add :noindex: in the documentation (GH-21859)
Add :noindex: to duplicated documentation to fix "duplicate object
description" errors.

For example, fix this Sphinx 3 issue:

Doc/library/configparser.rst:1146: WARNING: duplicate object
description of configparser.ConfigParser.optionxform, other instance
in library/configparser, use :noindex: for one of them
2020-08-13 21:41:54 +02:00
Harsha Laxman
7a280197f4
Fix spacing in docs for tarfile (GH-20629)
Before
```
content.txt is 42 bytes in size and isa regular file.
folder is 420 bytes in size and isa directory.
magic is 4200 bytes in size and issomething else.
```

After:
```
content.txt is 42 bytes in size and is a regular file.
folder is 420 bytes in size and is a directory.
magic is 4200 bytes in size and is something else.
```

Automerge-Triggered-By: @orsenthil
2020-06-04 12:58:10 -07:00
William Woodruff
dd754caf14 bpo-29435: Allow is_tarfile to take a filelike obj (GH-18090)
`is_tarfile()` now supports `name` being a file or file-like object.
2020-01-22 18:24:16 -08:00
Pascal Chambon
c5a7e0ce19 bpo-37408: Precise that Tarfile "format" argument only concerns writing. (GH-14389) 2019-09-28 08:04:44 -07:00
CAM Gerlach
89a894403c bpo-30661: Improve docs for tarfile pax change and effect on shutil (GH-12635)
The shutil archive creation helpers use the default tarfile format,
so that API is also switching to use `pax` by default.
2019-04-07 14:47:49 +10:00
CAM Gerlach
e680c3db80 bpo-36268: Change default tar format to pax from GNU. (GH-12355) 2019-03-21 16:44:51 +02:00
Bernhard M. Wiedemann
84521047e4 bpo-30693: zip+tarfile: sort directory listing (#2263)
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.
2018-01-31 11:17:10 +01:00
Serhiy Storchaka
c45cd167d4 bpo-28230: Document the pathlib support in tarfile and add tests. (#512) 2017-03-08 10:32:44 +02:00
Serhiy Storchaka
4f76fb16b7 Issue #29210: Removed support of deprecated argument "exclude" in
tarfile.TarFile.add().
2017-01-13 13:25:24 +02:00
Martin Panter
efbf20f3a3 Issue #28678: Fix references to numeric_owner parameter 2016-11-13 23:25:06 +00:00
Serhiy Storchaka
72b34439bc Fixed hyperlinks for tarfile CLI options. 2016-11-02 21:04:45 +02:00
Martin Panter
1050d2d0c7 Issue #26462: Doc: reduce literal_block warnings, fix syntax highlighting.
Patch by Julien Palard.
2016-07-26 11:18:21 +02:00
Berker Peksag
9748478086 Issue #27306: Fix typo in tarfile documentation
Patch by Gareth Rees.
2016-06-14 00:48:35 +03:00
Terry Jan Reedy
fa089b9b0b Issue #22558: Add remaining doc links to source code for Python-coded modules.
Reformat header above separator line (added if missing) to a common format.
Patch by Yoni Lavi.
2016-06-11 15:02:54 -04:00
Serhiy Storchaka
6dff0205b7 Issue #26736: Used HTTPS for external links in the documentation if possible. 2016-05-07 10:49:07 +03:00
Serhiy Storchaka
6a7b3a77b4 Issue #26778: Fixed "a/an/and" typos in code comment and documentation. 2016-04-17 08:32:47 +03:00
Martin Panter
7f7c605f29 Issue #25496: Document compresslevel defaults to 9, by Hamza T Khan 2016-04-13 03:24:06 +00:00
Martin Panter
f817a48d17 Issues #22468, #21996, #22208: Clarify gettarinfo() and TarInfo usage
* The Windows-specific binary notice was probably a Python 2 thing
* Make it more obvious gettarinfo() is based on stat(), and that non-ordinary
  files may need special care
* The file name must be text; suggest dummy arcname as a workaround
* Indicate TarInfo may be used directly, not just via gettarinfo()
2016-02-19 23:34:56 +00:00
Martin Panter
c04fb56e36 Issue #26304: Change "allows to <verb>" to "allows <verb>ing" or similar
The original form is incorrect grammar and feels awkward, even though the
meaning is clear.
2016-02-10 05:44:01 +00:00
Berker Peksag
662738980a Mark TarInfo.frombuf() and TarInfo.fromtarfile() as classmethods. 2015-04-19 04:38:01 +03:00
Berker Peksag
37de910b52 Mark TarInfo.frombuf() and TarInfo.fromtarfile() as classmethods. 2015-04-19 04:37:35 +03:00