forked from pool/python312
- Security
- gh-118486: os.mkdir() on Windows now accepts mode of 0o700
to restrict the new directory to the current user. This
fixes CVE-2024-4030 affecting tempfile.mkdtemp() in
scenarios where the base temporary directory is more
permissive than the default.
- gh-116741: Update bundled libexpat to 2.6.2
- gh-117233: Detect BLAKE2, SHA3, Shake, & truncated SHA512
support in the OpenSSL-ish libcrypto library at build
time. This allows hashlib to be used with libraries that do
not to support every algorithm that upstream OpenSSL does.
- Core and Builtins
- gh-119821: Fix execution of annotation scopes within
classes when globals is set to a non-dict. Patch by Jelle
Zijlstra.
- gh-118263: Speed up os.path.normpath() with a direct C
call.
- gh-119311: Fix bug where names are unexpectedly mangled in
the bases of generic classes.
- gh-119395: Fix bug where names appearing after a generic
class are mangled as if they are in the generic class.
- gh-118507: Fix os.path.isfile() on Windows for pipes.
- gh-119213: Non-builtin modules built with argument clinic
were crashing if used in a subinterpreter before the main
interpreter. The objects that were causing the problem by
leaking between interpreters carelessly have been fixed.
- gh-119011: Fixes type.__type_params__ to return an empty
tuple instead of a descriptor.
- gh-118997: Fix _Py_ClearImmortal() assertion: use
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python312?expand=0&rev=47
31 lines
1.3 KiB
Diff
31 lines
1.3 KiB
Diff
Index: Python-3.12.3/Lib/test/test_compile.py
|
|
===================================================================
|
|
--- Python-3.12.3.orig/Lib/test/test_compile.py
|
|
+++ Python-3.12.3/Lib/test/test_compile.py
|
|
@@ -14,6 +14,9 @@ from test.support import (script_helper,
|
|
requires_specialization, C_RECURSION_LIMIT)
|
|
from test.support.os_helper import FakePath
|
|
|
|
+IS_SLE_15_6 = os.environ.get("SLE_VERSION", "") == "0150600"
|
|
+IS_32bit = hasattr(os, "uname") and os.uname().machine in ["i386", "i486", "i586", "i686"]
|
|
+
|
|
class TestSpecifics(unittest.TestCase):
|
|
|
|
def compile_single(self, source):
|
|
@@ -110,6 +113,7 @@ class TestSpecifics(unittest.TestCase):
|
|
self.assertEqual(d['z'], 12)
|
|
|
|
@unittest.skipIf(support.is_wasi, "exhausts limited stack on WASI")
|
|
+ @unittest.skipIf(IS_SLE_15_6 and IS_32bit, "fails on 15.6 i586")
|
|
def test_extended_arg(self):
|
|
repeat = int(C_RECURSION_LIMIT * 0.9)
|
|
longexpr = 'x = x or ' + '-x' * repeat
|
|
@@ -603,6 +607,7 @@ class TestSpecifics(unittest.TestCase):
|
|
|
|
@support.cpython_only
|
|
@unittest.skipIf(support.is_wasi, "exhausts limited stack on WASI")
|
|
+ @unittest.skipIf(IS_SLE_15_6 and IS_32bit, "fails on 15.6 i586")
|
|
def test_compiler_recursion_limit(self):
|
|
# Expected limit is C_RECURSION_LIMIT * 2
|
|
# Duplicating the limit here is a little ugly.
|