[Python-checkins] gh-101334: Don't force USTAR format in test_tarfile. (GH-101572)

miss-islington webhook-mailer at python.org
Sun Feb 5 14:47:17 EST 2023


https://github.com/python/cpython/commit/6ae80323dfec893726d05319f77c65e78b62d2cd
commit: 6ae80323dfec893726d05319f77c65e78b62d2cd
branch: 3.11
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: miss-islington <31488909+miss-islington at users.noreply.github.com>
date: 2023-02-05T11:47:12-08:00
summary:

gh-101334: Don't force USTAR format in test_tarfile. (GH-101572)


That causes the test to fail when run using a high UID as that ancient format
cannot represent it. The current default (PAX) and the old default (GNU) both
support high UIDs.
(cherry picked from commit ffcb8220d7a8c8ca169b467d9e4a752874f68af2)

Co-authored-by: Gregory P. Smith <greg at krypto.org>

files:
A Misc/NEWS.d/next/Tests/2023-02-04-17-24-33.gh-issue-101334._yOqwg.rst
M Lib/test/test_tarfile.py

diff --git a/Lib/test/test_tarfile.py b/Lib/test/test_tarfile.py
index cdfd426807bc..7a0830f68602 100644
--- a/Lib/test/test_tarfile.py
+++ b/Lib/test/test_tarfile.py
@@ -225,6 +225,11 @@ def test_add_dir_getmember(self):
         self.add_dir_and_getmember('bar')
         self.add_dir_and_getmember('a'*101)
 
+    @unittest.skipIf(
+        (hasattr(os, 'getuid') and os.getuid() > 0o777_7777) or
+        (hasattr(os, 'getgid') and os.getgid() > 0o777_7777),
+        "uid or gid too high for USTAR format."
+    )
     def add_dir_and_getmember(self, name):
         with os_helper.temp_cwd():
             with tarfile.open(tmpname, 'w') as tar:
diff --git a/Misc/NEWS.d/next/Tests/2023-02-04-17-24-33.gh-issue-101334._yOqwg.rst b/Misc/NEWS.d/next/Tests/2023-02-04-17-24-33.gh-issue-101334._yOqwg.rst
new file mode 100644
index 000000000000..2a95fd9ae53c
--- /dev/null
+++ b/Misc/NEWS.d/next/Tests/2023-02-04-17-24-33.gh-issue-101334._yOqwg.rst
@@ -0,0 +1 @@
+``test_tarfile`` has been updated to pass when run as a high UID.



More information about the Python-checkins mailing list