Files
python314/fix_test_generated_data.patch
Matej Cepl 0b9e0525eb - Update to 3.14.0~b1:
- Tools/Demos
    - gh-130453: Allow passing multiple keyword arguments with
      the same function name in pygettext.
    - gh-130195: Add warning messages when pygettext
      unimplemented -a/--extract-all option is called.
  - Tests
    - gh-133131: The iOS testbed will now select the most
      recently released “SE-class” device for testing if a device
      isn’t explicitly specified.
    - gh-91048: Add ability to externally inspect all pending
      asyncio tasks, even if no task is currently entered on the
      event loop.
    - gh-109981: The test helper that counts the list of open
      file descriptors now uses the optimised /dev/fd approach on
      all Apple platforms, not just macOS. This avoids crashes
      caused by guarded file descriptors.
    - gh-132678: Add --prioritize to -m test. This option allows
      the user to specify which selected tests should execute
      first, even if the order is otherwise randomized. This is
      particularly useful for tests that run the longest.
    - gh-131290: Tests in Lib/test can now be correctly executed
      as standalone scripts.
  - Security
    - gh-115322: The underlying extension modules behind
      readline:, subprocess, and ctypes now raise audit events
      on previously uncovered code paths that could lead to file
      system access related to C function calling and external
      binary execution. The ctypes.call_function audit hook has
      also been fixed to use an unsigned value for its function

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python314?expand=0&rev=53
2025-05-09 08:51:17 +00:00

35 lines
1.1 KiB
Diff

---
Lib/test/test_ctypes/test_generated_structs.py | 7 +++++++
1 file changed, 7 insertions(+)
--- a/Lib/test/test_ctypes/test_generated_structs.py
+++ b/Lib/test/test_ctypes/test_generated_structs.py
@@ -12,6 +12,7 @@ Run this module to regenerate the files:
import unittest
from test.support import import_helper
import re
+import sys
from dataclasses import dataclass
from functools import cached_property
@@ -21,6 +22,11 @@ from ctypes import sizeof, alignment, po
_ctypes_test = import_helper.import_module("_ctypes_test")
+def is_32bit():
+ # or alternatively (slightly slower)
+ # (struct.calcsize("P") * 8) == 32
+ return not (sys.maxsize > 2**32)
+
# ctypes erases the difference between `c_int` and e.g.`c_int16`.
# To keep it, we'll use custom subclasses with the C name stashed in `_c_name`:
class c_bool(ctypes.c_bool):
@@ -415,6 +421,7 @@ class AnonBitfields(Structure):
class GeneratedTest(unittest.TestCase):
+ @unittest.skipIf(is_32bit(), 'fails on 32bit platform (gh#python/cpython#121938)')
def test_generated_data(self):
"""Check that a ctypes struct/union matches its C equivalent.