]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-127146: Emscripten: Set umask to zero in python.sh (#136740)
authorHood Chatham <roberthoodchatham@gmail.com>
Thu, 17 Jul 2025 15:39:01 +0000 (17:39 +0200)
committerGitHub <noreply@github.com>
Thu, 17 Jul 2025 15:39:01 +0000 (15:39 +0000)
Clears the umask used during a test of pydoc.apropos when testing on
Emscripten. This is to work around a known issue in Emscripten; but it's not
clear if the chmod call that is causing the problem is actually testing
anything of significance.

Lib/test/test_pydoc/test_pydoc.py

index d1d6f4987def0c81756e5310ee3c0c3f2683a208..005526d994bd6236c312826bf80d8e2a8951862b 100644 (file)
@@ -1303,6 +1303,11 @@ class PydocImportTest(PydocBaseTest):
     @os_helper.skip_unless_working_chmod
     def test_apropos_empty_doc(self):
         pkgdir = os.path.join(TESTFN, 'walkpkg')
+        if support.is_emscripten:
+            # Emscripten's readdir implementation is buggy on directories
+            # with read permission but no execute permission.
+            old_umask = os.umask(0)
+            self.addCleanup(os.umask, old_umask)
         os.mkdir(pkgdir)
         self.addCleanup(rmtree, pkgdir)
         init_path = os.path.join(pkgdir, '__init__.py')