Update to 4.3.4

This commit is contained in:
Matej Stuchlik 2015-03-25 14:35:47 +01:00
parent aca03e4c3a
commit 318f360969
7 changed files with 71 additions and 44 deletions

View File

@ -7,6 +7,6 @@ diff -up Python-3.2.2/Lib/distutils/tests/test_bdist_rpm.py.skip-distutils-tests
+@unittest._skipInRpmBuild("don't try to nest one rpm build inside another rpm build") +@unittest._skipInRpmBuild("don't try to nest one rpm build inside another rpm build")
class BuildRpmTestCase(support.TempdirManager, class BuildRpmTestCase(support.TempdirManager,
support.EnvironGuard,
support.LoggingSilencer, support.LoggingSilencer,
unittest.TestCase):
diff -up Python-3.2.2/Lib/distutils/tests/test_build_ext.py.skip-distutils-tests-that-fail-in-rpmbuild Python-3.2.2/Lib/distutils/tests/test_build_ext.py diff -up Python-3.2.2/Lib/distutils/tests/test_build_ext.py.skip-distutils-tests-that-fail-in-rpmbuild Python-3.2.2/Lib/distutils/tests/test_build_ext.py

View File

@ -13,31 +13,6 @@ diff -up Python-3.4.2/Lib/test/test_ssl.py.ssl Python-3.4.2/Lib/test/test_ssl.py
self.assertEqual(ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3, self.assertEqual(ssl.OP_ALL | ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3,
ctx.options) ctx.options)
if can_clear_options(): if can_clear_options():
@@ -2149,21 +2146,18 @@ else:
sys.stdout.write(
" SSL2 client to SSL23 server test unexpectedly failed:\n %s\n"
% str(x))
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True)
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True, ssl.CERT_OPTIONAL)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False, ssl.CERT_OPTIONAL)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True, ssl.CERT_OPTIONAL)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True, ssl.CERT_OPTIONAL)
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True, ssl.CERT_REQUIRED)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False, ssl.CERT_REQUIRED)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True, ssl.CERT_REQUIRED)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True, ssl.CERT_REQUIRED)
- # Server with specific SSL options
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False,
- server_options=ssl.OP_NO_SSLv3)
# Will choose TLSv1
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True,
server_options=ssl.OP_NO_SSLv2 | ssl.OP_NO_SSLv3)
@@ -2186,7 +2180,7 @@ else: @@ -2186,7 +2180,7 @@ else:
try_protocol_combo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_TLSv1, False) try_protocol_combo(ssl.PROTOCOL_SSLv3, ssl.PROTOCOL_TLSv1, False)
if no_sslv2_implies_sslv3_hello(): if no_sslv2_implies_sslv3_hello():
@ -47,3 +22,27 @@ diff -up Python-3.4.2/Lib/test/test_ssl.py.ssl Python-3.4.2/Lib/test/test_ssl.py
client_options=ssl.OP_NO_SSLv2) client_options=ssl.OP_NO_SSLv2)
@skip_if_broken_ubuntu_ssl @skip_if_broken_ubuntu_ssl
diff -up Python-3.4.3/Lib/test/test_ssl.py.foo Python-3.4.3/Lib/test/test_ssl.py
--- Python-3.4.3/Lib/test/test_ssl.py.foo 2015-03-12 10:08:58.268065970 +0100
+++ Python-3.4.3/Lib/test/test_ssl.py 2015-03-12 10:10:09.733347118 +0100
@@ -2168,17 +2168,17 @@ else:
" SSL2 client to SSL23 server test unexpectedly failed:\n %s\n"
% str(x))
if hasattr(ssl, 'PROTOCOL_SSLv3'):
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True)
if hasattr(ssl, 'PROTOCOL_SSLv3'):
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True, ssl.CERT_OPTIONAL)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False, ssl.CERT_OPTIONAL)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True, ssl.CERT_OPTIONAL)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True, ssl.CERT_OPTIONAL)
if hasattr(ssl, 'PROTOCOL_SSLv3'):
- try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, True, ssl.CERT_REQUIRED)
+ try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv3, False, ssl.CERT_REQUIRED)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_SSLv23, True, ssl.CERT_REQUIRED)
try_protocol_combo(ssl.PROTOCOL_SSLv23, ssl.PROTOCOL_TLSv1, True, ssl.CERT_REQUIRED)

View File

@ -0,0 +1,11 @@
diff -up Python-3.4.3/Lib/test/test_threading.py.mstuchli Python-3.4.3/Lib/test/test_threading.py
--- Python-3.4.3/Lib/test/test_threading.py.mstuchli 2015-03-10 10:00:42.917355215 +0100
+++ Python-3.4.3/Lib/test/test_threading.py 2015-03-10 10:00:47.735373842 +0100
@@ -988,6 +988,7 @@ class ThreadingExceptionTests(BaseTestCa
self.assertIn("ZeroDivisionError", err)
self.assertNotIn("Unhandled exception", err)
+ @unittest.skip('Fails in Koji due to mishandled signals')
def test_print_exception_stderr_is_none_1(self):
script = r"""if True:
import sys

View File

@ -139,8 +139,8 @@
# ================== # ==================
Summary: Version 3 of the Python programming language aka Python 3000 Summary: Version 3 of the Python programming language aka Python 3000
Name: python3 Name: python3
Version: %{pybasever}.2 Version: %{pybasever}.3
Release: 7%{?dist} Release: 1%{?dist}
License: Python License: Python
Group: Development/Languages Group: Development/Languages
@ -218,12 +218,12 @@ Source1: find-provides-without-python-sonames.sh
# Supply various useful macros for building python 3 modules: # Supply various useful macros for building python 3 modules:
# __python3, python3_sitelib, python3_sitearch # __python3, python3_sitelib, python3_sitearch
Source2: macros.python3 Source2: macros.python%{pybasever}
# Supply an RPM macro "py_byte_compile" for the python3-devel subpackage # Supply an RPM macro "py_byte_compile" for the python3-devel subpackage
# to enable specfiles to selectively byte-compile individual files and paths # to enable specfiles to selectively byte-compile individual files and paths
# with different Python runtimes as necessary: # with different Python runtimes as necessary:
Source3: macros.pybytecompile Source3: macros.pybytecompile%{pybasever}
# Systemtap tapset to make it easier to use the systemtap static probes # Systemtap tapset to make it easier to use the systemtap static probes
# (actually a template; LIBRARY_PATH will get fixed up during install) # (actually a template; LIBRARY_PATH will get fixed up during install)
@ -445,7 +445,8 @@ Patch150: 00150-disable-rAssertAlmostEqual-cmath-on-ppc.patch
# when running test_gdb.py; also cope with change to gdb in F17 onwards in # when running test_gdb.py; also cope with change to gdb in F17 onwards in
# which values are printed as "v@entry" rather than just "v": # which values are printed as "v@entry" rather than just "v":
# Not yet sent upstream # Not yet sent upstream
Patch153: 00153-fix-test_gdb-noise.patch # Upstream as of 3.4.3
# Patch153: 00153-fix-test_gdb-noise.patch
# 00154 # # 00154 #
# python3.spec on f15 has: # python3.spec on f15 has:
@ -461,8 +462,8 @@ Patch155: 00155-avoid-ctypes-thunks.patch
# Recent builds of gdb will only auto-load scripts from certain safe # Recent builds of gdb will only auto-load scripts from certain safe
# locations. Turn off this protection when running test_gdb in the selftest # locations. Turn off this protection when running test_gdb in the selftest
# suite to ensure that it can load our -gdb.py script (rhbz#817072): # suite to ensure that it can load our -gdb.py script (rhbz#817072):
# Not yet sent upstream # Upsream as of 3.4.3
Patch156: 00156-gdb-autoload-safepath.patch # Patch156: 00156-gdb-autoload-safepath.patch
# 00157 # # 00157 #
# Update uid/gid handling throughout the standard library: uid_t and gid_t are # Update uid/gid handling throughout the standard library: uid_t and gid_t are
@ -722,8 +723,14 @@ Patch200: 00200-gettext-plural-fix.patch
# Note: Backported from scl # Note: Backported from scl
Patch201: 00201-fix-memory-leak-in-gdbm.patch Patch201: 00201-fix-memory-leak-in-gdbm.patch
# 00202 #
# Fixes undefined behaviour in faulthandler which caused test to hang on x86_64
# http://bugs.python.org/issue23433
Patch202: 00202-fix-undefined-behaviour-in-faulthandler.patch Patch202: 00202-fix-undefined-behaviour-in-faulthandler.patch
# test_threading fails in koji dues to it's handling of signals
Patch203: 00203-disable-threading-test-koji.patch
# (New patches go here ^^^) # (New patches go here ^^^)
# #
@ -954,10 +961,10 @@ done
%endif %endif
# 00151: not for python3 # 00151: not for python3
# 00152: upstream as of Python 3.3.0b2 # 00152: upstream as of Python 3.3.0b2
%patch153 -p0 # 00153: upstream as of Python 3.4.3
# 00154: not for this branch # 00154: not for this branch
%patch155 -p1 %patch155 -p1
%patch156 -p1 # 00156: upstream as of 3.4.3
%patch157 -p1 %patch157 -p1
#00158: FIXME #00158: FIXME
#00159: FIXME #00159: FIXME
@ -1005,6 +1012,7 @@ done
# 00197: upstream as of Python 3.4.2 # 00197: upstream as of Python 3.4.2
%patch199 -p1 %patch199 -p1
%patch202 -p1 %patch202 -p1
%patch203 -p1
# Currently (2010-01-15), http://docs.python.org/library is for 2.6, and there # Currently (2010-01-15), http://docs.python.org/library is for 2.6, and there
# are many differences between 2.6 and the Python 3 library. # are many differences between 2.6 and the Python 3 library.
@ -1067,6 +1075,7 @@ BuildPython() {
SymlinkName=$3 SymlinkName=$3
ExtraConfigArgs=$4 ExtraConfigArgs=$4
PathFixWithThisBinary=$5 PathFixWithThisBinary=$5
MoreCFlags=$6
ConfDir=build/$ConfName ConfDir=build/$ConfName
@ -1104,8 +1113,7 @@ BuildPython() {
# missing symbol AnnotateRWLockDestroy # missing symbol AnnotateRWLockDestroy
# #
# Invoke the build: # Invoke the build:
# TODO: it seems that 3.4.0a4 fails with %{?_smp_flags}, have to figure out why make EXTRA_CFLAGS="$CFLAGS $MoreCFlags" %{?_smp_mflags}
make EXTRA_CFLAGS="$CFLAGS"
popd popd
echo FINISHED: BUILD OF PYTHON FOR CONFIGURATION: $ConfDir echo FINISHED: BUILD OF PYTHON FOR CONFIGURATION: $ConfDir
@ -1122,7 +1130,8 @@ BuildPython debug \
%else %else
"--with-pydebug --with-count-allocs --with-call-profile --without-ensurepip" \ "--with-pydebug --with-count-allocs --with-call-profile --without-ensurepip" \
%endif %endif
false false \
-O1
%endif # with_debug_build %endif # with_debug_build
BuildPython optimized \ BuildPython optimized \
@ -1144,6 +1153,7 @@ InstallPython() {
ConfName=$1 ConfName=$1
PyInstSoName=$2 PyInstSoName=$2
MoreCFlags=$3
ConfDir=build/$ConfName ConfDir=build/$ConfName
@ -1152,7 +1162,7 @@ InstallPython() {
pushd $ConfDir pushd $ConfDir
make install DESTDIR=%{buildroot} INSTALL="install -p" make install DESTDIR=%{buildroot} INSTALL="install -p" EXTRA_CFLAGS="$MoreCFlags"
popd popd
@ -1195,7 +1205,8 @@ make install DESTDIR=%{buildroot} INSTALL="install -p"
# Install the "debug" build first, so that we can move some files aside # Install the "debug" build first, so that we can move some files aside
%if 0%{?with_debug_build} %if 0%{?with_debug_build}
InstallPython debug \ InstallPython debug \
%{py_INSTSONAME_debug} %{py_INSTSONAME_debug} \
-O1
%endif # with_debug_build %endif # with_debug_build
# Now the optimized build: # Now the optimized build:
@ -1457,10 +1468,11 @@ CheckPython() {
WITHIN_PYTHON_RPM_BUILD= \ WITHIN_PYTHON_RPM_BUILD= \
LD_LIBRARY_PATH=$ConfDir $ConfDir/python -m test.regrtest \ LD_LIBRARY_PATH=$ConfDir $ConfDir/python -m test.regrtest \
--verbose --findleaks \ --verbose --findleaks \
-x test_distutils \
%ifarch ppc64le aarch64 %ifarch ppc64le aarch64
-x test_faulthandler \ -x test_faulthandler \
%endif %endif
%ifarch %{power64} s390 s390x %ifarch %{power64} s390 s390x armv7hl
-x test_gdb -x test_gdb
%endif %endif
@ -1733,8 +1745,8 @@ rm -fr %{buildroot}
%{_libdir}/pkgconfig/python-%{LDVERSION_optimized}.pc %{_libdir}/pkgconfig/python-%{LDVERSION_optimized}.pc
%{_libdir}/pkgconfig/python-%{pybasever}.pc %{_libdir}/pkgconfig/python-%{pybasever}.pc
%{_libdir}/pkgconfig/python3.pc %{_libdir}/pkgconfig/python3.pc
%{_rpmconfigdir}/macros.d/macros.python3 %{_rpmconfigdir}/macros.d/macros.python%{pybasever}
%{_rpmconfigdir}/macros.d/macros.pybytecompile %{_rpmconfigdir}/macros.d/macros.pybytecompile%{pybasever}
%files tools %files tools
%defattr(-,root,root,755) %defattr(-,root,root,755)
@ -1897,6 +1909,11 @@ rm -fr %{buildroot}
# ====================================================== # ======================================================
%changelog %changelog
* Thu Mar 12 2015 Matej Stuchlik <mstuchli@redhat.com> - 3.4.3-1
- Updated to 3.4.3
- BuildPython now accepts additional build options
- Temporarily disabled test_gdb on arm (rhbz#1196181)
* Wed Feb 25 2015 Matej Stuchlik <mstuchli@redhat.com> - 3.4.2-7 * Wed Feb 25 2015 Matej Stuchlik <mstuchli@redhat.com> - 3.4.2-7
- Fixed undefined behaviour in faulthandler which caused test to hang on x86_64 - Fixed undefined behaviour in faulthandler which caused test to hang on x86_64
(http://bugs.python.org/issue23433) (http://bugs.python.org/issue23433)

View File

@ -2,8 +2,8 @@ diff -up Python-3.4.0/Lib/test/test_asyncio/test_events.py.orig Python-3.4.0/Lib
--- Python-3.4.0/Lib/test/test_asyncio/test_events.py.orig 2014-04-15 13:18:49.696215288 +0200 --- Python-3.4.0/Lib/test/test_asyncio/test_events.py.orig 2014-04-15 13:18:49.696215288 +0200
+++ Python-3.4.0/Lib/test/test_asyncio/test_events.py 2014-04-15 13:18:56.104258453 +0200 +++ Python-3.4.0/Lib/test/test_asyncio/test_events.py 2014-04-15 13:18:56.104258453 +0200
@@ -1528,7 +1528,7 @@ class SubprocessTestsMixin: @@ -1528,7 +1528,7 @@ class SubprocessTestsMixin:
self.loop.run_until_complete(proto.completed)
self.check_terminated(proto.returncode) self.check_terminated(proto.returncode)
transp.close()
- @unittest.skipIf(sys.platform == 'win32', "Don't have SIGHUP") - @unittest.skipIf(sys.platform == 'win32', "Don't have SIGHUP")
+ @unittest.skipIf(True, "Temporarily skipped (rhbz#1088233)") + @unittest.skipIf(True, "Temporarily skipped (rhbz#1088233)")