From 93d3c08eebe6254a504e644db37363e6e7043aa8180a350962cf94428a0c24a7 Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Sat, 20 Aug 2022 14:25:45 +0000 Subject: [PATCH 1/2] =?UTF-8?q?-=20Update=20to=203.11.0rc1:=20=20=20-=20Co?= =?UTF-8?q?re=20and=20Builtins=20=20=20=20=20-=20Update=20code=20object=20?= =?UTF-8?q?hashing=20and=20equality=20to=20consider=20all=20=20=20=20=20?= =?UTF-8?q?=20=20debugging=20and=20exception=20handling=20tables.=20This?= =?UTF-8?q?=20fixes=20an=20=20=20=20=20=20=20issue=20where=20certain=20non?= =?UTF-8?q?-identical=20code=20objects=20could=20be=20=20=20=20=20=20=20?= =?UTF-8?q?=E2=80=9Cdeduplicated=E2=80=9D=20during=20compilation.=20=20=20?= =?UTF-8?q?=20=20-=20=5FPyPegen=5FParser=5FNew=20now=20properly=20detects?= =?UTF-8?q?=20token=20memory=20=20=20=20=20=20=20allocation=20errors.=20Pa?= =?UTF-8?q?tch=20by=20Honglin=20Zhu.=20=20=20=20=20-=20Run=20Python=20code?= =?UTF-8?q?=20in=20tracer/profiler=20function=20at=20full=20=20=20=20=20?= =?UTF-8?q?=20=20speed.=20Fixes=20slowdown=20in=20earlier=20versions=20of?= =?UTF-8?q?=203.11.=20=20=20=20=20-=20Emit=20a=20warning=20in=20debug=20mo?= =?UTF-8?q?de=20if=20an=20object=20does=20not=20call=20=20=20=20=20=20=20P?= =?UTF-8?q?yObject=5FGC=5FUnTrack()=20before=20deallocation.=20Patch=20by?= =?UTF-8?q?=20Pablo=20=20=20=20=20=20=20Galindo.=20=20=20=20=20-=20Prevent?= =?UTF-8?q?ed=20crashes=20in=20the=20AST=20constructor=20when=20=20=20=20?= =?UTF-8?q?=20=20=20compiling=20some=20absurdly=20long=20expressions=20lik?= =?UTF-8?q?e=20=20=20=20=20=20=20"+0"*1000000.=20RecursionError=20is=20now?= =?UTF-8?q?=20raised=20instead.=20Patch=20=20=20=20=20=20=20by=20Pablo=20G?= =?UTF-8?q?alindo=20=20=20=20=20-=20ast.AST=20node=20positions=20are=20now?= =?UTF-8?q?=20validated=20when=20provided=20to=20=20=20=20=20=20=20compile?= =?UTF-8?q?()=20and=20other=20related=20functions.=20If=20invalid=20positi?= =?UTF-8?q?ons=20=20=20=20=20=20=20are=20detected,=20a=20ValueError=20will?= =?UTF-8?q?=20be=20raised.=20=20=20=20=20-=20Fix=20error=20detection=20in?= =?UTF-8?q?=20some=20builtin=20functions=20when=20keyword=20=20=20=20=20?= =?UTF-8?q?=20=20argument=20name=20is=20an=20instance=20of=20a=20str=20sub?= =?UTF-8?q?class=20with=20=20=20=20=20=20=20overloaded=20=5F=5Feq=5F=5F=20?= =?UTF-8?q?and=20=5F=5Fhash=5F=5F.=20Previously=20it=20could=20cause=20=20?= =?UTF-8?q?=20=20=20=20=20SystemError=20or=20other=20undesired=20behavior.?= =?UTF-8?q?=20=20=20-=20Library=20=20=20=20=20-=20Update=20bundled=20pip?= =?UTF-8?q?=20to=2022.2.2.=20=20=20=20=20-=20Fix=20asyncio.TaskGroup=20to?= =?UTF-8?q?=20propagate=20exception=20when=20=20=20=20=20=20=20asyncio.Can?= =?UTF-8?q?celledError=20was=20replaced=20with=20another=20exception=20=20?= =?UTF-8?q?=20=20=20=20=20by=20a=20context=20manger.=20Patch=20by=20Kumar?= =?UTF-8?q?=20Aditya=20and=20Guido=20van=20=20=20=20=20=20=20Rossum.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python311?expand=0&rev=27 --- Python-3.11.0b5.tar.xz | 3 - Python-3.11.0b5.tar.xz.asc | 16 --- Python-3.11.0rc1.tar.xz | 3 + Python-3.11.0rc1.tar.xz.asc | 16 +++ bpo-31046_ensurepip_honours_prefix.patch | 12 +-- fix_configure_rst.patch | 2 +- python-3.3.0b1-fix_date_time_compiler.patch | 2 +- python311.changes | 107 ++++++++++++++++++++ python311.spec | 2 +- skip-test_pyobject_freed_is_freed.patch | 2 +- 10 files changed, 136 insertions(+), 29 deletions(-) delete mode 100644 Python-3.11.0b5.tar.xz delete mode 100644 Python-3.11.0b5.tar.xz.asc create mode 100644 Python-3.11.0rc1.tar.xz create mode 100644 Python-3.11.0rc1.tar.xz.asc diff --git a/Python-3.11.0b5.tar.xz b/Python-3.11.0b5.tar.xz deleted file mode 100644 index 873945c..0000000 --- a/Python-3.11.0b5.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:3810bd22f7dc34a99c2a2eb4b85264a4df4f05ef59c4e0ccc2ea82ee9c491698 -size 19792136 diff --git a/Python-3.11.0b5.tar.xz.asc b/Python-3.11.0b5.tar.xz.asc deleted file mode 100644 index b07b357..0000000 --- a/Python-3.11.0b5.tar.xz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmLfF4gACgkQ/+h0BBaL -2EcLCw//SioQXu5dZm+yDZT7JrdJyPt0e6q5OtcFNXucPlHu0ywwVcPtf2YsQLsm -O+5OCui9rxdhxHWnuzvOmnl/OuI8wzxms+vIFiLF968Bz+hsFgSQFMM8urPQQSjW -B7EjgNEQMEo8t2zlgDCB+9UmoyTmW3dkWltB91x55kEpRft20fOl/4UN4CNzz9lV -2VIq3oi/A2zAj1Av2oUtFrswYrmY6u2razndAEoKLb1NriskkANGRSX33+uy7Jgq -vGvACiTtJV0B5HW3s3//h9kLTBzSyFh2bm0nKSfw//MC9wpTExObnvjyI5JqdBZ0 -WjFZr6vYVWALSc6dhA1sAnCC0YrGAdmGSA/KDaFCj0wMre4zWzx6rL2HhQuqtBmX -6veV2jrEwks+3m/Gue8R9Yx959YvDrIOTArAwXezKsg/VzMiFd10Nm4Zop35tD8W -y2sz/nMcXmiK4UT73IvpV1/wmElfkEmA869uVwhHPg+lcweXTYKMjrDdnjb8Pe+u -kX7DY3SGXWrxQ4Ev78LVnDlWgeqig4lHwb1CairXa0xE710o/bC/3cj0CB2j9dYV -QPS21DRcJA5ioLL+d9hYXLWePYemSu2MvPONvk4j35B5onTPtbXh6A3kSpbrzGCf -CfkgGowIAd5LLBvKsepx9phVUHaK9SJkrJlVGnGBjYI+YkKuGcI= -=gAHw ------END PGP SIGNATURE----- diff --git a/Python-3.11.0rc1.tar.xz b/Python-3.11.0rc1.tar.xz new file mode 100644 index 0000000..6f78839 --- /dev/null +++ b/Python-3.11.0rc1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:53a5377c37a8a2c6da075b14eb9d63374579f7f3c718fa20f0a1fbb0e94a922b +size 19815524 diff --git a/Python-3.11.0rc1.tar.xz.asc b/Python-3.11.0rc1.tar.xz.asc new file mode 100644 index 0000000..50ca3e1 --- /dev/null +++ b/Python-3.11.0rc1.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCAAdFiEEz9yiRbEEPPKl+Xhl/+h0BBaL2EcFAmLtMGcACgkQ/+h0BBaL +2Eeirw//ZSjlvrUAouGGLbWal2CnJ8qmR7eAuSQQpwftmj++JhiQfKfIoWH8WYn9 +FTYVcVD/seXKGUK+ydj8ZDRoSA59sS+zVNnca/BaxPeqScZVbFTOB/o1tlE5g4h+ +WxSCRXfYmkIqXag3ZOZ/A+EXjgfAl/DrYtYKAafjH2nF9R9j4+w8YZ/ENELQ8Fd5 +thHyxNPDFeTK56ClR2QIZHdqCZHHNk1sO+FaB1Na/uZ5dD7snc+T7CjN1/Dlcs75 +oye5HAU35FHxV5nzk8uieatwW0q6/BtFWE3g8LbxECPRbLCo6bBySj2TA2LuwroR +fhn+r093y6NIJBLPIYjpFl5HlDnxDyOvFvKrJ1hZI9DC9VHPyeYP9hzHYQ2yBMwx +SD3djAPVJnwESM25MdZ5oaYrQu8e13+zA2l6Hnk5tsIjPI6CelO/xyPdWeSzBQEg +SaJke+QakoLXKoBSJhkIskwhCX6m+vmoiZFFSpemr3k13e3jTObyDRilh8eGkQtN +EFNp2KPBn8NM7udBNI4zxGr6kviEt4R+8nfQ2VmdnlU2XIMW7pwMfoPmWI1yXpl2 +JNo9o9EbeuawY7I/j+ryHV40b2wx9UA8DXHJg0iTiQT2IMvwPy18eiQJoVg4nJqH +tH6/zUw2yqFd9G7/uoYcGhk5PlalrZO7Ufeb/vUEUqvrISYu2QE= +=jjd6 +-----END PGP SIGNATURE----- diff --git a/bpo-31046_ensurepip_honours_prefix.patch b/bpo-31046_ensurepip_honours_prefix.patch index 24d46ae..5552c60 100644 --- a/bpo-31046_ensurepip_honours_prefix.patch +++ b/bpo-31046_ensurepip_honours_prefix.patch @@ -15,7 +15,7 @@ Co-Authored-By: Xavier de Gaye --- a/Doc/library/ensurepip.rst +++ b/Doc/library/ensurepip.rst -@@ -56,8 +56,9 @@ is at least as recent as the one availab +@@ -57,8 +57,9 @@ is at least as recent as the one availab By default, ``pip`` is installed into the current virtual environment (if one is active) or into the system site packages (if there is no active virtual environment). The installation location can be controlled @@ -26,7 +26,7 @@ Co-Authored-By: Xavier de Gaye * ``--root ``: Installs ``pip`` relative to the given root directory rather than the root of the currently active virtual environment (if any) or the default root for the current Python installation. -@@ -89,7 +90,7 @@ Module API +@@ -90,7 +91,7 @@ Module API Returns a string specifying the available version of pip that will be installed when bootstrapping an environment. @@ -35,7 +35,7 @@ Co-Authored-By: Xavier de Gaye altinstall=False, default_pip=False, \ verbosity=0) -@@ -99,6 +100,8 @@ Module API +@@ -100,6 +101,8 @@ Module API If *root* is ``None``, then installation uses the default install location for the current environment. @@ -44,7 +44,7 @@ Co-Authored-By: Xavier de Gaye *upgrade* indicates whether or not to upgrade an existing installation of an earlier version of ``pip`` to the available version. -@@ -119,6 +122,8 @@ Module API +@@ -120,6 +123,8 @@ Module API *verbosity* controls the level of output to :data:`sys.stdout` from the bootstrapping operation. @@ -139,7 +139,7 @@ Co-Authored-By: Xavier de Gaye --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1749,7 +1749,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni +@@ -1751,7 +1751,7 @@ install: @FRAMEWORKINSTALLFIRST@ commoni install|*) ensurepip="" ;; \ esac; \ $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ @@ -148,7 +148,7 @@ Co-Authored-By: Xavier de Gaye fi altinstall: commoninstall -@@ -1759,7 +1759,7 @@ altinstall: commoninstall +@@ -1761,7 +1761,7 @@ altinstall: commoninstall install|*) ensurepip="--altinstall" ;; \ esac; \ $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ diff --git a/fix_configure_rst.patch b/fix_configure_rst.patch index 7fc3159..6b40cea 100644 --- a/fix_configure_rst.patch +++ b/fix_configure_rst.patch @@ -29,7 +29,7 @@ Create a Python.framework rather than a traditional Unix install. Optional --- a/Misc/NEWS +++ b/Misc/NEWS -@@ -6147,7 +6147,7 @@ C API +@@ -6464,7 +6464,7 @@ C API - bpo-40939: Removed documentation for the removed ``PyParser_*`` C API. - bpo-43795: The list in :ref:`stable-abi-list` now shows the public name diff --git a/python-3.3.0b1-fix_date_time_compiler.patch b/python-3.3.0b1-fix_date_time_compiler.patch index a3fd005..c336a7f 100644 --- a/python-3.3.0b1-fix_date_time_compiler.patch +++ b/python-3.3.0b1-fix_date_time_compiler.patch @@ -4,7 +4,7 @@ --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -1233,11 +1233,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ +@@ -1234,11 +1234,18 @@ Modules/getbuildinfo.o: $(PARSER_OBJS) \ $(DTRACE_OBJS) \ $(srcdir)/Modules/getbuildinfo.c $(CC) -c $(PY_CORE_CFLAGS) \ diff --git a/python311.changes b/python311.changes index a0b3684..ec81bc4 100644 --- a/python311.changes +++ b/python311.changes @@ -1,3 +1,110 @@ +------------------------------------------------------------------- +Sat Aug 20 14:05:21 UTC 2022 - Matej Cepl + +- Update to 3.11.0rc1: + - Core and Builtins + - Update code object hashing and equality to consider all + debugging and exception handling tables. This fixes an + issue where certain non-identical code objects could be + “deduplicated” during compilation. + - _PyPegen_Parser_New now properly detects token memory + allocation errors. Patch by Honglin Zhu. + - Run Python code in tracer/profiler function at full + speed. Fixes slowdown in earlier versions of 3.11. + - Emit a warning in debug mode if an object does not call + PyObject_GC_UnTrack() before deallocation. Patch by Pablo + Galindo. + - Prevented crashes in the AST constructor when + compiling some absurdly long expressions like + "+0"*1000000. RecursionError is now raised instead. Patch + by Pablo Galindo + - ast.AST node positions are now validated when provided to + compile() and other related functions. If invalid positions + are detected, a ValueError will be raised. + - Fix error detection in some builtin functions when keyword + argument name is an instance of a str subclass with + overloaded __eq__ and __hash__. Previously it could cause + SystemError or other undesired behavior. + - Library + - Update bundled pip to 22.2.2. + - Fix asyncio.TaskGroup to propagate exception when + asyncio.CancelledError was replaced with another exception + by a context manger. Patch by Kumar Aditya and Guido van + Rossum. + - Update bundled pip to 22.2.1. + - Fix GC crash when deallocating _lsprof.Profiler by + untracking it before calling any callbacks. Patch by Kumar + Aditya. + - Fix asyncio.run() for asyncio.Task implementations without + uncancel() method. Patch by Kumar Aditya. + - Fix check for existence of os.EFD_CLOEXEC, os.EFD_NONBLOCK + and os.EFD_SEMAPHORE flags on older kernel versions where + these flags are not present. Patch by Kumar Aditya. + - Fix concurrent.futures.Executor.map() to cancel the + currently waiting on future on an error - e.g. TimeoutError + or KeyboardInterrupt. + - Ensure that timeouts scheduled with asyncio.Timeout that + have already expired are delivered promptly. + - Suppress writing an XML declaration in open files + in ElementTree.write() with encoding='unicode' and + xml_declaration=None. + - Fix findtext in the xml module to only give an empty string + when the text attribute is set to None. + - Documentation + - Fix stylesheet not working in Windows CHM htmlhelp docs + and add warning that they are deprecated. Contributed by + C.A.M. Gerlach. + - Update library documentation with availability information + on WebAssembly platforms wasm32-emscripten and wasm32-wasi. + - Use consistent syntax for platform availability. The + directive now supports a content body and emits a warning + when it encounters an unknown platform. + - Document a limitation in ThreadPoolExecutor where its exit + handler is executed before any handlers in atexit. + - Tests + - Lib/test/test_asyncio/test_ssl.py exposed a bug in the + macOS kernel where intense concurrent load on non-blocking + sockets occasionally causes errno.ENOBUFS (“No buffer space + available”) to be emitted. FB11063974 filed with Apple, in + the mean time as a workaround buffer size used in tests on + macOS is decreased to avoid intermittent failures. Patch by + Fantix King. + - Fix problem with test_ssl test_get_ciphers on systems that + require perfect forward secrecy (PFS) ciphers. + - Add a regression test for re exponentional slowdown when + using rjsmin. + - Build + - Fix a regression in configure script that caused some + header checks to ignore custom CPPFLAGS. The regression was + introduced in gh-94802. + - wasm32-wasi builds no longer depend on WASIX’s pthread + stubs. Python now has its own stubbed pthread API. + - Python now detects missing dup function in WASI and works + around some missing errno, select, and socket constants. + - Python now skips missing socket functions and methods on + WASI. WASI can only create sockets from existing fd / + accept and has no netdb. + - Platforms wasm32-unknown-emscripten and wasm32-unknown-wasi + have been promoted to PEP 11 tier 3 platform support. + - IDLE + - Document handling of extensions in Save As dialogs. + - Include prompts when saving Shell (interactive input and + output). + - Fix the Shell context menu copy-with-prompts bug of copying + an extra line when one selects whole lines. + - In the Edit menu, move Select All and add a new separator. + - Enable using IDLE’s module browser with .pyw files. + - Add .pyi as a recognized extension for IDLE on macOS. This + allows opening stub files by double clicking on them in the + Finder. + - C API + - Restore the 3.10 behavior for multiple inheritance of C + extension classes that store their dictionary at the end of + the struct. + - Added PyCode_GetVarnames(), PyCode_GetCellvars() and + PyCode_GetFreevars() for accessing co_varnames, co_cellvars + and co_freevars respectively via the C API. + ------------------------------------------------------------------- Tue Jul 26 10:37:31 UTC 2022 - Matej Cepl diff --git a/python311.spec b/python311.spec index af02322..e766700 100644 --- a/python311.spec +++ b/python311.spec @@ -103,7 +103,7 @@ Obsoletes: python39%{?1:-%{1}} %define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so %bcond_without profileopt Name: %{python_pkg_name}%{psuffix} -Version: 3.11.0b5 +Version: 3.11.0rc1 Release: 0 Summary: Python 3 Interpreter License: Python-2.0 diff --git a/skip-test_pyobject_freed_is_freed.patch b/skip-test_pyobject_freed_is_freed.patch index 1525256..b6883dd 100644 --- a/skip-test_pyobject_freed_is_freed.patch +++ b/skip-test_pyobject_freed_is_freed.patch @@ -4,7 +4,7 @@ --- a/Lib/test/test_capi.py +++ b/Lib/test/test_capi.py -@@ -1016,6 +1016,7 @@ class PyMemDebugTests(unittest.TestCase) +@@ -1035,6 +1035,7 @@ class PyMemDebugTests(unittest.TestCase) def test_pyobject_forbidden_bytes_is_freed(self): self.check_pyobject_is_freed('check_pyobject_forbidden_bytes_is_freed') From 3931fb9f0932eb6e132173f08f31d48cf3cf5bbc38eb4cec49f4896ffc2bb07b Mon Sep 17 00:00:00 2001 From: Matej Cepl Date: Sat, 20 Aug 2022 21:31:49 +0000 Subject: [PATCH 2/2] - fix import_failed.map to refer to the python 3.11 package versions OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python311?expand=0&rev=28 --- import_failed.map | 14 +++++++------- python311.changes | 5 +++++ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/import_failed.map b/import_failed.map index 9f01f41..f33690c 100644 --- a/import_failed.map +++ b/import_failed.map @@ -1,7 +1,7 @@ -python39-curses: curses _curses _curses_panel -python39-dbm: dbm _dbm _gdbm -python39-idle: idlelib -python39-testsuite: test _ctypes_test _testbuffer _testcapi _testinternalcapi _testimportmultiple _testmultiphase xxlimited -python39-tk: tkinter _tkinter -python39-tools: turtledemo -python39: sqlite3 readline _sqlite3 nis +python311-curses: curses _curses _curses_panel +python311-dbm: dbm _dbm _gdbm +python311-idle: idlelib +python311-testsuite: test _ctypes_test _testbuffer _testcapi _testinternalcapi _testimportmultiple _testmultiphase xxlimited +python311-tk: tkinter _tkinter +python311-tools: turtledemo +python311: sqlite3 readline _sqlite3 nis diff --git a/python311.changes b/python311.changes index ec81bc4..3aab91c 100644 --- a/python311.changes +++ b/python311.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sat Aug 20 21:31:40 UTC 2022 - Matej Cepl + +- fix import_failed.map to refer to the python 3.11 package versions + ------------------------------------------------------------------- Sat Aug 20 14:05:21 UTC 2022 - Matej Cepl