- Add --enable-experimental-jit=yes-off to the build

- Update to 3.13.0a5
  * Security
    - gh-115398: Allow controlling Expat >=2.6.0 reparse deferral
      (CVE-2023-52425) by adding five new methods:
    -     xml.etree.ElementTree.XMLParser.flush()
    -     xml.etree.ElementTree.XMLPullParser.flush()
    -     xml.parsers.expat.xmlparser.GetReparseDeferralEnabled()
    -     xml.parsers.expat.xmlparser.SetReparseDeferralEnabled()
    -     xml.sax.expatreader.ExpatParser.flush()
    - gh-114572: ssl.SSLContext.cert_store_stats() and
      ssl.SSLContext.get_ca_certs() now correctly lock access to the
      certificate store, when the ssl.SSLContext is shared across
      multiple threads.  Core-  and Builtins
    - gh-116604: Respect the status of the garbage collector when
      indirect calls are made via PyErr_CheckSignals() and the
      evaluation breaker. Patch by Pablo Galindo
    - gh-112087: list is now compatible with the implementation of PEP
      703.
    - gh-116381: Add specialization for CONTAINS_OP.
    - gh-116296: Fix possible refleak in object.__reduce__() internal
      error handling.
    - gh-115823: Properly calculate error ranges in the parser when
      raising SyntaxError exceptions caused by invalid byte sequences.
      Patch by Pablo Galindo
    - gh-115778: Add tierN annotation for instruction definition in
      interpreter DSL.
    - gh-115733: Fix crash when calling next() on exhausted list
      iterators.
    - gh-115700: The regen-cases build stage now works on Windows.
    - gh-115347: Fix bug where docstring was replaced by a redundant

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:Factory/python313?expand=0&rev=13
This commit is contained in:
2024-05-09 09:59:06 +00:00
committed by Git OBS Bridge
parent ee738c9b79
commit a4dc42ba84
6 changed files with 868 additions and 27 deletions

View File

@@ -36,6 +36,8 @@
%bcond_without general
%endif
%bcond_without experimental_jit
%define python_pkg_name python313
%if "%{python_pkg_name}" == "%{primary_python}"
%define primary_interpreter 1
@@ -105,7 +107,7 @@
%define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so
%bcond_without profileopt
Name: %{python_pkg_name}%{psuffix}
Version: 3.13.0a5
Version: 3.13.0b1
Release: 0
Summary: Python 3 Interpreter
License: Python-2.0
@@ -208,6 +210,10 @@ BuildRequires: update-desktop-files
BuildRequires: pkgconfig(ncurses)
BuildRequires: pkgconfig(tk)
BuildRequires: pkgconfig(x11)
%if %{with experimental_jit}
BuildRequires: clang => 18
BuildRequires: llvm => 18
%endif
Requires: %{python_pkg_name}-base = %{version}
Provides: %{python_pkg_name}-readline
Provides: %{python_pkg_name}-sqlite3
@@ -500,6 +506,9 @@ export CFLAGS="%{optflags} -IVendor/"
%endif
%if %{with mpdecimal}
--with-system-libmpdec \
%endif
%if %{with experimental_jit}
--enable-experimental-jit=yes-off \
%endif
--enable-loadable-sqlite-extensions
@@ -627,9 +636,10 @@ for library in \
_statistics _struct syslog termios _testbuffer _testimportmultiple \
_testmultiphase unicodedata zlib _ctypes_test _testinternalcapi _testcapi \
_testclinic _testclinic_limited xxlimited xxlimited_35 _testexternalinspection \
_testlimitedcapi _xxtestfuzz _xxsubinterpreters _elementtree pyexpat _md5 _sha1 \
_testlimitedcapi _xxtestfuzz _elementtree pyexpat _md5 _sha1 \
_interpchannels _interpqueues _interpreters \
_sha2 _blake2 _sha3 _uuid _zoneinfo \
_testsinglephase _xxinterpchannels _xxinterpqueues xxsubtype
_testsinglephase xxsubtype
do
eval rm "%{buildroot}%{sitedir}/lib-dynload/$library.*"
done
@@ -786,6 +796,7 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
%dir %{sitedir}/lib-dynload
%{sitedir}/sqlite3
%{sitedir}/pathlib
%{sitedir}/_pyrepl
%{dynlib readline}
%{dynlib _sqlite3}
@@ -872,8 +883,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
%{dynlib _testsinglephase}
%{dynlib _testexternalinspection}
%{dynlib _testlimitedcapi}
%{dynlib _xxinterpchannels}
%{dynlib _xxinterpqueues}
%{dynlib _xxtestfuzz}
# workaround for missing packages
%dir %{sitedir}/sqlite3
@@ -924,6 +933,9 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
%{dynlib grp}
%{dynlib _hashlib}
%{dynlib _heapq}
%{dynlib _interpchannels}
%{dynlib _interpqueues}
%{dynlib _interpreters}
%{dynlib _json}
%{dynlib _lsprof}
%{dynlib _lzma}
@@ -950,7 +962,6 @@ echo %{sitedir}/_import_failed > %{buildroot}/%{sitedir}/site-packages/zzzz-impo
%{dynlib _uuid}
%{dynlib xxlimited}
%{dynlib xxlimited_35}
%{dynlib _xxsubinterpreters}
%{dynlib xxsubtype}
%{dynlib zlib}
%{dynlib _zoneinfo}