diff --git a/Python-3.8.11.tar.xz b/Python-3.8.11.tar.xz deleted file mode 100644 index 9d1aa80..0000000 --- a/Python-3.8.11.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:fb1a1114ebfe9e97199603c6083e20b236a0e007a2c51f29283ffb50c1420fb2 -size 18437648 diff --git a/Python-3.8.11.tar.xz.asc b/Python-3.8.11.tar.xz.asc deleted file mode 100644 index 3a69223..0000000 --- a/Python-3.8.11.tar.xz.asc +++ /dev/null @@ -1,16 +0,0 @@ ------BEGIN PGP SIGNATURE----- - -iQIzBAABCgAdFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAmDZq2IACgkQsmmV4xAl -BWi57w/+NQXLn1ZoFPuESty4LEIc6Oa7WQrfzMUazzglfocM/0SK248LdIpMYA15 -tMgcI3H/YCuftg1Q9Zbij4bhY1SrwEH6mh8/l1M9RUFSQRjDB5TzibX9I1Qix1Tc -hCEl/dt1D6HwN/U8W8qv71lwz3gcSAT85zU8UTG8GdbPnrZRyjHq6vj1T5Os/N9u -pAfMob+pn8EkW8bxYldV3+514vlR2vYJUH/ZV3t+UzwiVGRJuh9cWEoH31hy4XQF -pJJX43Qh6aGQwwi1a4IFv3MhlKBT6G7SDgfaAd1LrkCAtFNOS/0CqLesItJHsdGQ -jTLVsAo9XQ5tRN3CpDZ10/UqMpFrtzRvdG0kB7cL29szqeVm1sqUlW7WyNKZJwia -8Q/8J+Od/Z30SAaGb7rVmW46ijAJr4QeXimanYZeiHEprQMOKhPz61mNYXtPHBV/ -G9J5OEIk5GIUrIumh2btAwzx5/L8NI+RJdTV8RD7z0TLHuDt7ExxcREfLMUY3dqf -0wul7/tQQLqvTZXYgQb0zyKpatGw+q89xYe7Eh0h4rkPO7WRJ0/pCaHP3DQZf3fy -D14pEVeUlK4+A6S31wKwE0wpZfK8p1m7Kl/l+tKSFhNl6sslo993wZCaBCbHjSnx -Jw0TuVLeoxR6smL/W/EEHPQ0dgG6IaEU8HC+iXFG6b3uuJdG/1Q= -=sO6f ------END PGP SIGNATURE----- diff --git a/Python-3.8.12.tar.xz b/Python-3.8.12.tar.xz new file mode 100644 index 0000000..5151ab2 --- /dev/null +++ b/Python-3.8.12.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b1d3a76420375343b5e8a22fceb1ac65b77193e9ed27146524f0a9db058728ea +size 18443568 diff --git a/Python-3.8.12.tar.xz.asc b/Python-3.8.12.tar.xz.asc new file mode 100644 index 0000000..ed5925e --- /dev/null +++ b/Python-3.8.12.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +iQIzBAABCgAdFiEE4/8oOcBIslwITevpsmmV4xAlBWgFAmEtCqkACgkQsmmV4xAl +BWiX4A/+LBc42iF/V8rob0MGnUkLNe0zmfMwk4m0ji7ukH9o+2/Qttt1cWE8Mnhl +VanXlxfctk5v4MIWo+/p3iQqjoDBCQZTuHIJZ06ZXmKvgWABrPImT2NGaWz2jQip +s28VQTax2fQrJk8fiGA59ty5qMyvLefwYMPgvFPpkk+ToBgIDGFSuKYbPQ9X+CE1 +Hwbk1Z0HfEHIMoDJ10uM5I00wX38Dbt6QaSO6v/PSowajOnBE43pjqEINBGHT7/C +il/JecPQj1bamTrZWQy6DA2+WjmNMVlXZv8Nwix9Jw5vPt/BVLLuN6whP4UKvKmc +ib/EI53sDB4WstROMngslfyR4XBg/DtCIOGZfmfnTJKvQTQlOSt1P5w7jh0NKXM4 +syDClByOXkKSf/Buu8vW1hWFgdoXW55s47tusS6ExCuBdQyo9abyq7DjkAyYu88U +bqHQoFIH+ARyr/aWVErWPlfBfVUR2Ch4V1fkszPA7rcdyWVw82R66K7cwN235zcq +oqD23aNMJ26nd5d1Xw2xoybB652S2Q+PmuT0KQn+GHbLLIquTdMYFb80f1rQDRS8 +5bMGjYhlgXB9f2Wcg62m1J1OdKKasQUE8zMVHlArW8TRV7P4xRFzmYgP63Kl9oMP +Ux64wl5hs+LLFWTjH1f8608z70ijsgfaMdVpHzfD8Q0q5mPbE2Y= +=aijj +-----END PGP SIGNATURE----- diff --git a/decimal-3.8.patch b/decimal-3.8.patch new file mode 100644 index 0000000..70051d4 --- /dev/null +++ b/decimal-3.8.patch @@ -0,0 +1,36 @@ +--- + Modules/_decimal/_decimal.c | 4 ++-- + setup.py | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +--- a/Modules/_decimal/_decimal.c ++++ b/Modules/_decimal/_decimal.c +@@ -3284,7 +3284,7 @@ dec_format(PyObject *dec, PyObject *args + } + else { + size_t n = strlen(spec.dot); +- if (n > 1 || (n == 1 && !isascii((uchar)spec.dot[0]))) { ++ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.dot[0]))) { + /* fix locale dependent non-ascii characters */ + dot = dotsep_as_utf8(spec.dot); + if (dot == NULL) { +@@ -3293,7 +3293,7 @@ dec_format(PyObject *dec, PyObject *args + spec.dot = PyBytes_AS_STRING(dot); + } + n = strlen(spec.sep); +- if (n > 1 || (n == 1 && !isascii((uchar)spec.sep[0]))) { ++ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.sep[0]))) { + /* fix locale dependent non-ascii characters */ + sep = dotsep_as_utf8(spec.sep); + if (sep == NULL) { +--- a/setup.py ++++ b/setup.py +@@ -2053,7 +2053,7 @@ class PyBuildExt(build_ext): + undef_macros = [] + if '--with-system-libmpdec' in sysconfig.get_config_var("CONFIG_ARGS"): + include_dirs = [] +- libraries = [':libmpdec.so.2'] ++ libraries = ['mpdec'] + sources = ['_decimal/_decimal.c'] + depends = ['_decimal/docstrings.h'] + else: diff --git a/python38.changes b/python38.changes index e49f0de..2274f17 100644 --- a/python38.changes +++ b/python38.changes @@ -1,3 +1,43 @@ +------------------------------------------------------------------- +Tue Aug 31 01:18:08 UTC 2021 - Fusion Future + +- Update to 3.8.12 + * Complete list of changes is available at + https://docs.python.org/release/3.8.12/whatsnew/changelog.html + * Security + - bpo-42278: Replaced usage of tempfile.mktemp() with + TemporaryDirectory to avoid a potential race condition. + - bpo-44394: Update the vendored copy of libexpat to 2.4.1 + (from 2.2.8) to get the fix for the CVE-2013-0340 “Billion + Laughs” vulnerability. This copy is most used on Windows and + macOS. + - bpo-43124: Made the internal putcmd function in smtplib + sanitize input for presence of \r and \n characters to avoid + (unlikely) command injection. + - bpo-36384: ipaddress module no longer accepts any leading + zeros in IPv4 address strings. Leading zeros are ambiguous + and interpreted as octal notation by some libraries. For + example the legacy function socket.inet_aton() treats leading + zeros as octal notation. glibc implementation of modern + inet_pton() does not accept any leading zeros. For a while + the ipaddress module used to accept ambiguous leading zeros. +- Refreshed patch: + * decimal-3.8.patch + +------------------------------------------------------------------- +Fri Aug 27 12:00:12 UTC 2021 - Matej Cepl + +- Add decimal-3.8.patch to add building with --with-system-libmpdec + option (bsc#1189356). + +------------------------------------------------------------------- +Thu Aug 26 12:00:25 UTC 2021 - Andreas Schwab + +- test_faulthandler is still problematic under qemu linux-user emulation, + disable it there +- Reenable profileopt with qemu emulation, test_faulthandler is no longer + run during profiling + ------------------------------------------------------------------- Tue Aug 10 00:25:26 UTC 2021 - Fusion Future diff --git a/python38.spec b/python38.spec index f297d45..19914db 100644 --- a/python38.spec +++ b/python38.spec @@ -75,19 +75,20 @@ %if "%{_arch}" == "arm" %define armsuffix hf %endif +# Decide whether we want to use mpdecimal +%if 0%{?suse_version} >= 1550 +%bcond_without mpdecimal +%else +%bcond_with mpdecimal +%endif # pyexpat.cpython-35m-x86_64-linux-gnu # pyexpat.cpython-35m-powerpc64le-linux-gnu # pyexpat.cpython-35m-armv7-linux-gnueabihf # _md5.cpython-38m-x86_64-linux-gnu.so %define dynlib() %{sitedir}/lib-dynload/%{1}.cpython-%{abi_tag}-%{archname}-%{_os}%{?_gnu}%{?armsuffix}.so -# deadlocks on test_faulthandler and blocks the build -%if 0%{?qemu_user_space_build} -%bcond_with profileopt -%else %bcond_without profileopt -%endif Name: %{python_pkg_name}%{psuffix} -Version: 3.8.11 +Version: 3.8.12 Release: 0 Summary: Python 3 Interpreter License: Python-2.0 @@ -125,6 +126,10 @@ Patch03: SUSE-FEDORA-multilib.patch # PATCH-FEATURE-UPSTREAM distutils-reproducible-compile.patch gh#python/cpython#8057 mcepl@suse.com # Improve reproduceability Patch06: distutils-reproducible-compile.patch +# PATCH-FEATURE-UPSTREAM decimal-3.8.patch bsc#1189356 mcepl@suse.com +# fix building with mpdecimal +# https://www.bytereef.org/contrib/decimal-3.8.diff +Patch05: decimal-3.8.patch # support finding packages in /usr/local, install to /usr/local by default Patch07: python-3.3.0b1-localpath.patch # replace DATE, TIME and COMPILER by fixed definitions to aid reproducible builds @@ -174,6 +179,9 @@ BuildRequires: pkgconfig(zlib) BuildRequires: pkgconfig(libnsl) BuildRequires: pkgconfig(libtirpc) %endif +%if %{with mpdecimal} +BuildRequires: mpdecimal-devel +%endif %if %{with doc} %if 0%{?suse_version} > 1500 BuildRequires: %{python_pkg_name}-Sphinx @@ -393,6 +401,9 @@ other applications. %if "%{_lib}" == "lib64" %patch03 -p1 %endif +%if %{with mpdecimal} +%patch05 -p1 +%endif %patch06 -p1 %patch07 -p1 @@ -464,6 +475,9 @@ sed -e 's/-fprofile-correction//' -i Makefile.pre.in --with-lto \ %if %{with profileopt} --enable-optimizations \ +%endif +%if %{with mpdecimal} + --with-system-libmpdec \ %endif --enable-loadable-sqlite-extensions @@ -506,7 +520,7 @@ EXCLUDE="$EXCLUDE test_faulthandler" %endif # some tests break in QEMU %if 0%{?qemu_user_space_build} -EXCLUDE="$EXCLUDE test_multiprocessing_forkserver test_multiprocessing_spawn test_os test_posix test_signal test_socket test_subprocess" +EXCLUDE="$EXCLUDE test_faulthandler test_multiprocessing_forkserver test_multiprocessing_spawn test_os test_posix test_signal test_socket test_subprocess" %endif # This test (part of test_uuid) requires real network interfaces