From 256657e991ae32687939ba4ac1998baa5179647c Mon Sep 17 00:00:00 2001 From: Petr Viktorin Date: Jul 01 2020 11:46:04 +0000 Subject: Update to 3.7.8 final All patches are now taken from Git, so they have more detailed metadata and some parts are reordered. Versions of possible bundled wheels are updated. --- diff --git a/00001-rpath.patch b/00001-rpath.patch index 9fae54c..3394544 100644 --- a/00001-rpath.patch +++ b/00001-rpath.patch @@ -1,7 +1,18 @@ -diff -up Python-3.1.1/Lib/distutils/unixccompiler.py.rpath Python-3.1.1/Lib/distutils/unixccompiler.py ---- Python-3.1.1/Lib/distutils/unixccompiler.py.rpath 2009-09-04 17:29:34.000000000 -0400 -+++ Python-3.1.1/Lib/distutils/unixccompiler.py 2009-09-04 17:49:54.000000000 -0400 -@@ -141,6 +141,15 @@ class UnixCCompiler(CCompiler): +From 9911113c75b8a446b11009362205b40f011a4700 Mon Sep 17 00:00:00 2001 +From: David Malcolm +Date: Wed, 13 Jan 2010 21:25:18 +0000 +Subject: [PATCH] 00001: Fixup distutils/unixccompiler.py to remove standard + library path from rpath Was Patch0 in ivazquez' python3000 specfile + +--- + Lib/distutils/unixccompiler.py | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py +index 4d7a6de740..353086a648 100644 +--- a/Lib/distutils/unixccompiler.py ++++ b/Lib/distutils/unixccompiler.py +@@ -82,6 +82,15 @@ class UnixCCompiler(CCompiler): if sys.platform == "cygwin": exe_extension = ".exe" @@ -17,3 +28,6 @@ diff -up Python-3.1.1/Lib/distutils/unixccompiler.py.rpath Python-3.1.1/Lib/dist def preprocess(self, source, output_file=None, macros=None, include_dirs=None, extra_preargs=None, extra_postargs=None): fixed_args = self._fix_compile_args(None, macros, include_dirs) +-- +2.26.2 + diff --git a/00102-lib64.patch b/00102-lib64.patch index 2b952ed..4e6f6e2 100644 --- a/00102-lib64.patch +++ b/00102-lib64.patch @@ -1,5 +1,38 @@ +From bf40f2be75ddde2deb9e33cc6ffe828b83cfc8d8 Mon Sep 17 00:00:00 2001 +From: David Malcolm +Date: Wed, 13 Jan 2010 21:25:18 +0000 +Subject: [PATCH] 00102: Change the various install paths to use /usr/lib64/ + instead or /usr/lib/ +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Only used when "%{_lib}" == "lib64". + +Co-authored-by: David Malcolm +Co-authored-by: Thomas Spura +Co-authored-by: Slavek Kabrda +Co-authored-by: Matej Stuchlik +Co-authored-by: Tomas Orsava +Co-authored-by: Charalampos Stratakis +Co-authored-by: Petr Viktorin +Co-authored-by: Miro Hrončok +Co-authored-by: Iryna Shcherbina +--- + Lib/distutils/command/install.py | 4 ++-- + Lib/distutils/sysconfig.py | 6 +++++- + Lib/distutils/tests/test_install.py | 3 ++- + Lib/site.py | 4 ++++ + Lib/sysconfig.py | 12 ++++++------ + Lib/test/test_site.py | 4 ++-- + Makefile.pre.in | 2 +- + Modules/getpath.c | 6 +++--- + configure.ac | 4 ++-- + setup.py | 6 +++--- + 10 files changed, 30 insertions(+), 21 deletions(-) + diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py -index 0258d3d..4b969bf 100644 +index 0258d3deae..4b969bf809 100644 --- a/Lib/distutils/command/install.py +++ b/Lib/distutils/command/install.py @@ -30,14 +30,14 @@ WINDOWS_SCHEME = { @@ -20,7 +53,7 @@ index 0258d3d..4b969bf 100644 'scripts': '$base/bin', 'data' : '$base', diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py -index 0a034ee..3ce0dc1 100644 +index 0a034ee09b..3ce0dc1645 100644 --- a/Lib/distutils/sysconfig.py +++ b/Lib/distutils/sysconfig.py @@ -147,8 +147,12 @@ def get_python_lib(plat_specific=0, standard_lib=0, prefix=None): @@ -38,7 +71,7 @@ index 0a034ee..3ce0dc1 100644 return libpython else: diff --git a/Lib/distutils/tests/test_install.py b/Lib/distutils/tests/test_install.py -index 287ab19..d4c05e0 100644 +index 287ab1989e..d4c05e0ab1 100644 --- a/Lib/distutils/tests/test_install.py +++ b/Lib/distutils/tests/test_install.py @@ -57,8 +57,9 @@ class InstallTestCase(support.TempdirManager, @@ -53,7 +86,7 @@ index 287ab19..d4c05e0 100644 check_path(cmd.install_headers, os.path.join(destination, "include", "python", "foopkg")) diff --git a/Lib/site.py b/Lib/site.py -index 8786588..78bb790 100644 +index 878658827c..78bb7905f2 100644 --- a/Lib/site.py +++ b/Lib/site.py @@ -334,11 +334,15 @@ def getsitepackages(prefixes=None): @@ -73,7 +106,7 @@ index 8786588..78bb790 100644 return sitepackages diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py -index d15cec8..159c78b 100644 +index d15cec8dbf..159c78bb99 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -20,10 +20,10 @@ __all__ = [ @@ -105,10 +138,10 @@ index d15cec8..159c78b 100644 'scripts': '{userbase}/bin', 'data': '{userbase}', diff --git a/Lib/test/test_site.py b/Lib/test/test_site.py -index 568f81d..234cff8 100644 +index 6def4e59f4..6e427bf6e2 100644 --- a/Lib/test/test_site.py +++ b/Lib/test/test_site.py -@@ -269,8 +269,8 @@ class HelperFunctionsTests(unittest.TestCase): +@@ -270,8 +270,8 @@ class HelperFunctionsTests(unittest.TestCase): dirs = site.getsitepackages() if os.sep == '/': # OS X, Linux, FreeBSD, etc @@ -120,7 +153,7 @@ index 568f81d..234cff8 100644 'site-packages') self.assertEqual(dirs[0], wanted) diff --git a/Makefile.pre.in b/Makefile.pre.in -index beaccf5..bba49ca 100644 +index 35ca1a8684..78152c1e2f 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -144,7 +144,7 @@ LIBDIR= @libdir@ @@ -133,7 +166,7 @@ index beaccf5..bba49ca 100644 # Detailed destination directories diff --git a/Modules/getpath.c b/Modules/getpath.c -index ba8d74b..198e8f0 100644 +index ba8d74b4a0..198e8f086e 100644 --- a/Modules/getpath.c +++ b/Modules/getpath.c @@ -535,7 +535,7 @@ calculate_exec_prefix(const _PyCoreConfig *core_config, @@ -163,8 +196,24 @@ index ba8d74b..198e8f0 100644 if (!calculate->lib_python) { return DECODE_LOCALE_ERR("EXEC_PREFIX define", len); } +diff --git a/configure.ac b/configure.ac +index 805c0bba08..6f11a6df5b 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -4772,9 +4772,9 @@ AC_MSG_RESULT($LDVERSION) + dnl define LIBPL after ABIFLAGS and LDVERSION is defined. + AC_SUBST(PY_ENABLE_SHARED) + if test x$PLATFORM_TRIPLET = x; then +- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}" ++ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}" + else +- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" ++ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" + fi + AC_SUBST(LIBPL) + diff --git a/setup.py b/setup.py -index 88cff61..ecbf798 100644 +index bf90600eaa..8070b86c2f 100644 --- a/setup.py +++ b/setup.py @@ -585,7 +585,7 @@ class PyBuildExt(build_ext): @@ -190,19 +239,6 @@ index 88cff61..ecbf798 100644 extra_link_args=readline_extra_link_args, libraries=readline_libs) ) else: -diff --git a/configure.ac b/configure.ac -index 01c66fe..1e6d515 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -4772,9 +4772,9 @@ AC_MSG_RESULT($LDVERSION) - dnl define LIBPL after ABIFLAGS and LDVERSION is defined. - AC_SUBST(PY_ENABLE_SHARED) - if test x$PLATFORM_TRIPLET = x; then -- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}" -+ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}" - else -- LIBPL='$(prefix)'"/lib/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" -+ LIBPL='$(prefix)'"/lib64/python${VERSION}/config-${LDVERSION}-${PLATFORM_TRIPLET}" - fi - AC_SUBST(LIBPL) +-- +2.26.2 diff --git a/00111-no-static-lib.patch b/00111-no-static-lib.patch index 4cce364..4f0e5fd 100644 --- a/00111-no-static-lib.patch +++ b/00111-no-static-lib.patch @@ -1,8 +1,30 @@ +From 43f81ea5b092c46d7386866e7e1a86c548185662 Mon Sep 17 00:00:00 2001 +From: David Malcolm +Date: Mon, 18 Jan 2010 17:59:07 +0000 +Subject: [PATCH] 00111: Don't try to build a libpythonMAJOR.MINOR.a +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Downstream only: not appropriate for upstream. + +See https://bugzilla.redhat.com/show_bug.cgi?id=556092 + +Co-authored-by: David Malcolm +Co-authored-by: Bohuslav Kabrda +Co-authored-by: Matej Stuchlik +Co-authored-by: Robert Kuska +Co-authored-by: Charalampos Stratakis +Co-authored-by: Miro Hrončok +--- + Makefile.pre.in | 21 ++------------------- + 1 file changed, 2 insertions(+), 19 deletions(-) + diff --git a/Makefile.pre.in b/Makefile.pre.in -index 0db0dd0..bd8f769 100644 +index 78152c1e2f..648729586a 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in -@@ -574,7 +574,7 @@ clinic: check-clean-src $(srcdir)/Modules/_blake2/blake2s_impl.c +@@ -577,7 +577,7 @@ clinic: check-clean-src $(srcdir)/Modules/_blake2/blake2s_impl.c $(PYTHON_FOR_REGEN) $(srcdir)/Tools/clinic/clinic.py --make --srcdir $(srcdir) # Build the interpreter @@ -11,7 +33,7 @@ index 0db0dd0..bd8f769 100644 $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) platform: $(BUILDPYTHON) pybuilddir.txt -@@ -622,12 +622,6 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o +@@ -625,12 +625,6 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build @@ -24,7 +46,7 @@ index 0db0dd0..bd8f769 100644 libpython$(LDVERSION).so: $(LIBRARY_OBJS) if test $(INSTSONAME) != $(LDLIBRARY); then \ $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ -@@ -715,7 +709,7 @@ Modules/Setup: $(srcdir)/Modules/Setup.dist +@@ -718,7 +712,7 @@ Modules/Setup: $(srcdir)/Modules/Setup.dist echo "-----------------------------------------------"; \ fi @@ -33,7 +55,7 @@ index 0db0dd0..bd8f769 100644 $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) ############################################################################ -@@ -1483,17 +1477,6 @@ libainstall: @DEF_MAKE_RULE@ python-config +@@ -1494,17 +1488,6 @@ libainstall: @DEF_MAKE_RULE@ python-config else true; \ fi; \ done @@ -51,3 +73,6 @@ index 0db0dd0..bd8f769 100644 $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c $(INSTALL_DATA) Programs/python.o $(DESTDIR)$(LIBPL)/python.o $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in +-- +2.26.2 + diff --git a/00155-avoid-ctypes-thunks.patch b/00155-avoid-ctypes-thunks.patch index f03890e..d427208 100644 --- a/00155-avoid-ctypes-thunks.patch +++ b/00155-avoid-ctypes-thunks.patch @@ -1,7 +1,22 @@ -diff -up Python-3.2.3/Lib/ctypes/__init__.py.rhbz814391 Python-3.2.3/Lib/ctypes/__init__.py ---- Python-3.2.3/Lib/ctypes/__init__.py.rhbz814391 2012-04-20 15:12:49.017867692 -0400 -+++ Python-3.2.3/Lib/ctypes/__init__.py 2012-04-20 15:15:09.501111408 -0400 -@@ -275,11 +275,6 @@ def _reset_cache(): +From 5d496d5bb9c8e0207e6b22f015180b252868ce03 Mon Sep 17 00:00:00 2001 +From: David Malcolm +Date: Fri, 19 Jun 2020 16:02:24 +0200 +Subject: [PATCH] 00155: avoid allocating thunks in ctypes unless absolutely + necessary + +Avoid allocating thunks in ctypes unless absolutely necessary, to avoid +generating SELinux denials on "import ctypes" and "import uuid" when +embedding Python within httpd +See https://bugzilla.redhat.com/show_bug.cgi?id=814391 +--- + Lib/ctypes/__init__.py | 5 ----- + 1 file changed, 5 deletions(-) + +diff --git a/Lib/ctypes/__init__.py b/Lib/ctypes/__init__.py +index dae408a867..f4178c0731 100644 +--- a/Lib/ctypes/__init__.py ++++ b/Lib/ctypes/__init__.py +@@ -266,11 +266,6 @@ def _reset_cache(): # _SimpleCData.c_char_p_from_param POINTER(c_char).from_param = c_char_p.from_param _pointer_type_cache[None] = c_void_p @@ -13,3 +28,6 @@ diff -up Python-3.2.3/Lib/ctypes/__init__.py.rhbz814391 Python-3.2.3/Lib/ctypes/ def create_unicode_buffer(init, size=None): """create_unicode_buffer(aString) -> character array +-- +2.26.2 + diff --git a/00170-gc-assertions.patch b/00170-gc-assertions.patch index fb3ad85..a6d7a3b 100644 --- a/00170-gc-assertions.patch +++ b/00170-gc-assertions.patch @@ -1,8 +1,32 @@ +From 41d74cb6f168994477400503d97257ad02976080 Mon Sep 17 00:00:00 2001 +From: David Malcolm +Date: Fri, 19 Jun 2020 16:05:07 +0200 +Subject: [PATCH] 00170: In debug builds, try to print repr() when a C-level + assert fails + +In debug builds, try to print repr() when a C-level assert fails in the +garbage collector (typically indicating a reference-counting error +somewhere else e.g in an extension module) +The new macros/functions within gcmodule.c are hidden to avoid exposing +them within the extension API. +Sent upstream: http://bugs.python.org/issue9263 +See https://bugzilla.redhat.com/show_bug.cgi?id=614680 + +Co-Authored-By: David Malcolm +Co-Authored-By: Charalampos Stratakis +Co-Authored-By: Robert Kuska +--- + Include/object.h | 43 ++++++++++++++++++++++++++++++++++++++ + Lib/test/test_gc.py | 50 ++++++++++++++++++++++++++++++++++++++++++++- + Modules/gcmodule.c | 44 +++++++++++++++++++++++---------------- + Objects/object.c | 29 ++++++++++++++++++++++++++ + 4 files changed, 147 insertions(+), 19 deletions(-) + diff --git a/Include/object.h b/Include/object.h -index c772dea..5729797 100644 +index e212fca12a..91dcf55d7f 100644 --- a/Include/object.h +++ b/Include/object.h -@@ -1098,6 +1098,49 @@ PyAPI_FUNC(void) +@@ -1099,6 +1099,49 @@ PyAPI_FUNC(void) _PyObject_DebugTypeStats(FILE *out); #endif /* ifndef Py_LIMITED_API */ @@ -53,7 +77,7 @@ index c772dea..5729797 100644 } #endif diff --git a/Lib/test/test_gc.py b/Lib/test/test_gc.py -index 8d806db..dc8bb16 100644 +index a2fa8bbace..d46da949ea 100644 --- a/Lib/test/test_gc.py +++ b/Lib/test/test_gc.py @@ -1,10 +1,12 @@ @@ -79,7 +103,7 @@ index 8d806db..dc8bb16 100644 @with_tp_del class Uncollectable(object): """Create a reference cycle with multiple __del__ methods. -@@ -878,6 +882,50 @@ class GCCallbackTests(unittest.TestCase): +@@ -949,6 +953,50 @@ class GCCallbackTests(unittest.TestCase): self.assertEqual(len(gc.garbage), 0) @@ -131,7 +155,7 @@ index 8d806db..dc8bb16 100644 def setUp(self): gc.enable() diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c -index 4d701cb..388dd78 100644 +index 32586031c0..916ae390ca 100644 --- a/Modules/gcmodule.c +++ b/Modules/gcmodule.c @@ -239,7 +239,8 @@ update_refs(PyGC_Head *containers) @@ -270,10 +294,10 @@ index 4d701cb..388dd78 100644 return -1; } diff --git a/Objects/object.c b/Objects/object.c -index 220aa90..f6c7161 100644 +index 21fa7b5660..71c960ecf1 100644 --- a/Objects/object.c +++ b/Objects/object.c -@@ -2177,6 +2177,35 @@ _PyTrash_thread_destroy_chain(void) +@@ -2218,6 +2218,35 @@ _PyTrash_thread_destroy_chain(void) --tstate->trash_delete_nesting; } @@ -309,3 +333,6 @@ index 220aa90..f6c7161 100644 #ifndef Py_TRACE_REFS /* For Py_LIMITED_API, we need an out-of-line version of _Py_Dealloc. Define this here, so we can undefine the macro. */ +-- +2.26.2 + diff --git a/00189-use-rpm-wheels.patch b/00189-use-rpm-wheels.patch index 050e679..f6a4aaa 100644 --- a/00189-use-rpm-wheels.patch +++ b/00189-use-rpm-wheels.patch @@ -1,25 +1,33 @@ +From 82210eabe82e891337e9a71a46212c9c1e844d20 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= +Date: Wed, 15 Aug 2018 15:36:29 +0200 +Subject: [PATCH] 00189: Instead of bundled wheels, use our RPM packaged wheels + +We keep them in /usr/share/python-wheels +--- + Lib/ensurepip/__init__.py | 31 ++++++++++++++++++++++--------- + 1 file changed, 22 insertions(+), 9 deletions(-) + diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py -index 4748ba4..fc02255 100644 +index 94d40b0c8d..87d262814e 100644 --- a/Lib/ensurepip/__init__.py +++ b/Lib/ensurepip/__init__.py -@@ -1,16 +1,31 @@ +@@ -1,3 +1,5 @@ +import distutils.version +import glob import os import os.path --import pkgutil - import sys - import tempfile - + import pkgutil +@@ -8,10 +10,24 @@ import tempfile __all__ = ["version", "bootstrap"] +_WHEEL_DIR = "/usr/share/python-wheels/" --_SETUPTOOLS_VERSION = "41.2.0" +-_SETUPTOOLS_VERSION = "47.1.0" +_wheels = {} --_PIP_VERSION = "19.2.3" +-_PIP_VERSION = "20.1.1" +def _get_most_recent_wheel_version(pkg): + prefix = os.path.join(_WHEEL_DIR, "{}-".format(pkg)) + _wheels[pkg] = {} @@ -36,11 +44,12 @@ index 4748ba4..fc02255 100644 +_PIP_VERSION = _get_most_recent_wheel_version("pip") _PROJECTS = [ - ("setuptools", _SETUPTOOLS_VERSION), -@@ -94,12 +105,9 @@ def _bootstrap(*, root=None, upgrade=False, user=False, + ("setuptools", _SETUPTOOLS_VERSION, "py3"), +@@ -103,13 +119,10 @@ def _bootstrap(*, root=None, upgrade=False, user=False, + # additional paths that need added to sys.path additional_paths = [] - for project, version in _PROJECTS: -- wheel_name = "{}-{}-py2.py3-none-any.whl".format(project, version) + for project, version, py_tag in _PROJECTS: +- wheel_name = "{}-{}-{}-none-any.whl".format(project, version, py_tag) - whl = pkgutil.get_data( - "ensurepip", - "_bundled/{}".format(wheel_name), @@ -54,3 +63,6 @@ index 4748ba4..fc02255 100644 additional_paths.append(os.path.join(tmpdir, wheel_name)) +-- +2.26.2 + diff --git a/00251-change-user-install-location.patch b/00251-change-user-install-location.patch index 4104449..5b66d63 100644 --- a/00251-change-user-install-location.patch +++ b/00251-change-user-install-location.patch @@ -1,11 +1,26 @@ +From 77c0df3cf9975a9b4214d091cb36fbf775d42403 Mon Sep 17 00:00:00 2001 +From: Michal Cyprian +Date: Mon, 26 Jun 2017 16:32:56 +0200 +Subject: [PATCH] 00251: Change user install location + +Set values of prefix and exec_prefix in distutils install command +to /usr/local if executable is /usr/bin/python* and RPM build +is not detected to make pip and distutils install into separate location. + +Fedora Change: https://fedoraproject.org/wiki/Changes/Making_sudo_pip_safe +--- + Lib/distutils/command/install.py | 15 +++++++++++++-- + Lib/site.py | 9 ++++++++- + 2 files changed, 21 insertions(+), 3 deletions(-) + diff --git a/Lib/distutils/command/install.py b/Lib/distutils/command/install.py -index 0258d3d..4ebf50a 100644 +index 4b969bf809..fa0cde25e3 100644 --- a/Lib/distutils/command/install.py +++ b/Lib/distutils/command/install.py @@ -418,8 +418,19 @@ class install(Command): raise DistutilsOptionError( "must not supply exec-prefix without prefix") - + - self.prefix = os.path.normpath(sys.prefix) - self.exec_prefix = os.path.normpath(sys.exec_prefix) + # self.prefix is set to sys.prefix + /local/ @@ -21,16 +36,16 @@ index 0258d3d..4ebf50a 100644 + + self.prefix = os.path.normpath(sys.prefix) + addition + self.exec_prefix = os.path.normpath(sys.exec_prefix) + addition - + else: if self.exec_prefix is None: diff --git a/Lib/site.py b/Lib/site.py -index 0fc9200..c95202e 100644 +index 78bb7905f2..5665689eb9 100644 --- a/Lib/site.py +++ b/Lib/site.py -@@ -322,7 +322,14 @@ def getsitepackages(prefixes=None): +@@ -347,7 +347,14 @@ def getsitepackages(prefixes=None): return sitepackages - + def addsitepackages(known_paths, prefixes=None): - """Add site-packages to sys.path""" + """Add site-packages to sys.path @@ -44,3 +59,6 @@ index 0fc9200..c95202e 100644 for sitedir in getsitepackages(prefixes): if os.path.isdir(sitedir): addsitedir(sitedir, known_paths) +-- +2.26.2 + diff --git a/00274-fix-arch-names.patch b/00274-fix-arch-names.patch index ee15930..cdf01aa 100644 --- a/00274-fix-arch-names.patch +++ b/00274-fix-arch-names.patch @@ -1,19 +1,25 @@ -From 3b0d3a25576e74c2ac1eb25136ae811bdbdd7c6c Mon Sep 17 00:00:00 2001 -From: Tomas Orsava -Date: Thu, 14 Feb 2019 16:08:57 +0100 -Subject: [PATCH] Upstream uses Debian-style architecture naming. Change to - match Fedora / RHEL +From 3816c7f58e0f30209519636b1fd1d9d41ec7e4f6 Mon Sep 17 00:00:00 2001 +From: Petr Viktorin +Date: Mon, 28 Aug 2017 17:16:46 +0200 +Subject: [PATCH] 00274: Upstream uses Debian-style architecture naming, change + to match Fedora +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +Co-authored-by: Petr Viktorin +Co-authored-by: Miro Hrončok +Co-authored-by: Tomas Orsava --- config.sub | 2 +- configure.ac | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/config.sub b/config.sub -index 40ea5df..932128b 100755 +index ba37cf99e2..52a9ec6662 100755 --- a/config.sub +++ b/config.sub -@@ -1045,7 +1045,7 @@ case $basic_machine in +@@ -1042,7 +1042,7 @@ case $basic_machine in ;; ppc64) basic_machine=powerpc64-unknown ;; @@ -23,10 +29,10 @@ index 40ea5df..932128b 100755 ppc64le | powerpc64little) basic_machine=powerpc64le-unknown diff --git a/configure.ac b/configure.ac -index a075ce3..b7f2ee3 100644 +index 6f11a6df5b..13340da7c8 100644 --- a/configure.ac +++ b/configure.ac -@@ -788,9 +788,9 @@ cat >> conftest.c <> conftest.c <> conftest.c <> conftest.c <> conftest.c <> conftest.c < +Date: Fri, 19 Jun 2020 16:16:41 +0200 +Subject: [PATCH] 00316: Mark bdist_wininst unsupported + +We remove the exe files from distutil's bdist_wininst +So we mark the command as unsupported - and the tests are skipped +--- + Lib/distutils/command/bdist_wininst.py | 2 ++ + 1 file changed, 2 insertions(+) + diff --git a/Lib/distutils/command/bdist_wininst.py b/Lib/distutils/command/bdist_wininst.py -index 0871a4f..8796b68 100644 +index 15434c3a98..829c1c6803 100644 --- a/Lib/distutils/command/bdist_wininst.py +++ b/Lib/distutils/command/bdist_wininst.py @@ -12,6 +12,8 @@ from distutils.sysconfig import get_python_version @@ -11,3 +22,6 @@ index 0871a4f..8796b68 100644 description = "create an executable installer for MS Windows" +-- +2.26.2 + diff --git a/00328-pyc-timestamp-invalidation-mode.patch b/00328-pyc-timestamp-invalidation-mode.patch index 87515c4..71752f3 100644 --- a/00328-pyc-timestamp-invalidation-mode.patch +++ b/00328-pyc-timestamp-invalidation-mode.patch @@ -1,6 +1,6 @@ -From 746a45acd333174c3174230833b45f537bd92889 Mon Sep 17 00:00:00 2001 +From 8efb4775f9be49024b428d779dea2ad2966a58db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= -Date: Thu, 11 Jul 2019 13:44:13 +0200 +Date: Fri, 19 Jun 2020 16:18:39 +0200 Subject: [PATCH] 00328: Restore pyc to TIMESTAMP invalidation mode as default in rpmbuild @@ -9,15 +9,13 @@ Since Fedora 31, the $SOURCE_DATE_EPOCH is set in rpmbuild to the latest invalidation mode, bringing more reproducible builds traded for an import performance decrease. To avoid that, we don't default to CHECKED_HASH when $RPM_BUILD_ROOT is set (i.e. when we are building RPM packages). - -See https://src.fedoraproject.org/rpms/redhat-rpm-config/pull-request/57#comment-27426 --- Lib/py_compile.py | 3 ++- Lib/test/test_py_compile.py | 2 ++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Lib/py_compile.py b/Lib/py_compile.py -index 21736896af..310bed5620 100644 +index 8e9dd57a54..5e9a16a203 100644 --- a/Lib/py_compile.py +++ b/Lib/py_compile.py @@ -70,7 +70,8 @@ class PycInvalidationMode(enum.Enum): @@ -31,7 +29,7 @@ index 21736896af..310bed5620 100644 else: return PycInvalidationMode.TIMESTAMP diff --git a/Lib/test/test_py_compile.py b/Lib/test/test_py_compile.py -index d6677ab45f..88059b127e 100644 +index df45764f04..a0afd878d8 100644 --- a/Lib/test/test_py_compile.py +++ b/Lib/test/test_py_compile.py @@ -17,6 +17,7 @@ def without_source_date_epoch(fxn): @@ -51,5 +49,5 @@ index d6677ab45f..88059b127e 100644 return wrapper -- -2.21.0 +2.26.2 diff --git a/python3.spec b/python3.spec index ff93a0c..0f8845e 100644 --- a/python3.spec +++ b/python3.spec @@ -13,7 +13,7 @@ URL: https://www.python.org/ # WARNING When rebasing to a new Python version, # remember to update the python3-docs package as well -%global general_version %{pybasever}.7 +%global general_version %{pybasever}.8 #global prerel ... %global upstream_version %{general_version}%{?prerel} Version: %{general_version}%{?prerel:~%{prerel}} @@ -395,8 +395,8 @@ Summary: Python runtime libraries Requires: python-setuptools-wheel Requires: python-pip-wheel %else -Provides: bundled(python3-pip) = 19.2.3 -Provides: bundled(python3-setuptools) = 41.2.0 +Provides: bundled(python3-pip) = 20.1.1 +Provides: bundled(python3-setuptools) = 47.1.0 %endif %{?python_provide:%python_provide python3-libs} @@ -1532,6 +1532,9 @@ CheckPython optimized # ====================================================== %changelog +* Wed Jul 01 2020 Petr Viktorin - 3.7.8-1 +- Update to 3.7.8 final + * Wed Mar 11 2020 Marcel Plch - 3.7.7-1 - Update to 3.7.7 - Update the ensurepip module to work with setuptools >= 45 diff --git a/sources b/sources index 56ebbd0..55c4736 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (Python-3.7.7.tar.xz) = ddc838a7b0c442c2e465616f20231f2b703ed6b69ed2dc17858aac8760814fdf7cff43d350d359300e47b6bb1f0bd38c31126b855e423a3a65ed06a8fa16d136 -SHA512 (Python-3.7.7.tar.xz.asc) = e6437eec497aaa5c50e03d48f0e9fe7ed73b898b8eb4284878a774de2711979850469db80c20dbdf53f18a132f445ca3b06ee59fff2e138ca78e84cad50cdc5f +SHA512 (Python-3.7.8.tar.xz) = d2ba299e3cf8ed0f8fed9317f42bcd8d9af7e0e6175939b4be1be289c1658418bed17899e2608d762ffb15575021956cf6bf2054d7863c04b3bd7642f5b8c7ea +SHA512 (Python-3.7.8.tar.xz.asc) = 83bb0f3a9543af90f932bb06a47dae1e1c08221aaaf2ff0b68ca26cee19f687239549771d6cc97c82d6e3bf9ae7f580ac42f8525596f3c2fdce3b69db578c25c