From 2ff5e3aec11d7745211aaeed6a722c6dfc752709 Mon Sep 17 00:00:00 2001 From: Alexey Pavlov Date: Wed, 27 Jun 2018 11:33:38 +0300 Subject: [PATCH] python3: Update to 3.6.5 --- python3/00189-add-rewheel-module.patch | 2 +- ...0260-require-setuptools-dependencies.patch | 57 +++++----- ...r-command-line-parsing-in-_testembed.patch | 104 ------------------ python3/3.6-ftm.patch | 14 --- python3/900-msysize.patch | 18 +-- python3/PKGBUILD | 23 ++-- 6 files changed, 45 insertions(+), 173 deletions(-) delete mode 100644 python3/00261-use-proper-command-line-parsing-in-_testembed.patch delete mode 100644 python3/3.6-ftm.patch diff --git a/python3/00189-add-rewheel-module.patch b/python3/00189-add-rewheel-module.patch index d504e92a..9b5469f9 100644 --- a/python3/00189-add-rewheel-module.patch +++ b/python3/00189-add-rewheel-module.patch @@ -18,7 +18,7 @@ diff -Nur Python-3.4.1/Lib/ensurepip/__init__.py Python-3.4.1-rewheel/Lib/ensure import pip + if args[0] in ["install", "list", "wheel"]: + args.append('--pre') - pip.main(args) + return pip.main(args) @@ -73,20 +77,39 @@ diff --git a/python3/00260-require-setuptools-dependencies.patch b/python3/00260-require-setuptools-dependencies.patch index 8bbb9407..095e7923 100644 --- a/python3/00260-require-setuptools-dependencies.patch +++ b/python3/00260-require-setuptools-dependencies.patch @@ -2,15 +2,16 @@ diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py index 9f5d151..4dfa8a1 100644 --- a/Lib/ensurepip/__init__.py +++ b/Lib/ensurepip/__init__.py -@@ -10,13 +10,25 @@ import tempfile +@@ -10,13 +10,25 @@ __all__ = ["version", "bootstrap"] - - --_SETUPTOOLS_VERSION = "28.8.0" -+_SETUPTOOLS_VERSION = "34.2.0" - - _PIP_VERSION = "9.0.1" - + + +-_SETUPTOOLS_VERSION = "39.0.1" ++_SETUPTOOLS_VERSION = "39.2.0" + +-_PIP_VERSION = "9.0.3" ++_PIP_VERSION = "10.0.1" ++ +_SIX_VERSION = "1.10.0" + +_APPDIRS_VERSION = "1.4.0" @@ -18,19 +19,17 @@ index 9f5d151..4dfa8a1 100644 +_PACKAGING_VERSION = "16.8" + +_PYPARSING_VERSION = "2.1.10" -+ + _PROJECTS = [ -- ("setuptools", _SETUPTOOLS_VERSION), -- ("pip", _PIP_VERSION), -+ ("setuptools", _SETUPTOOLS_VERSION), -+ ("pip", _PIP_VERSION), + ("setuptools", _SETUPTOOLS_VERSION), + ("pip", _PIP_VERSION), + ("six", _SIX_VERSION), + ("appdirs", _APPDIRS_VERSION), + ("packaging", _PACKAGING_VERSION), + ("pyparsing", _PYPARSING_VERSION) ] - - + + diff --git a/Lib/test/test_ensurepip.py b/Lib/test/test_ensurepip.py index 9b04c18..23664c4 100644 --- a/Lib/test/test_ensurepip.py @@ -45,11 +44,11 @@ index 9b04c18..23664c4 100644 ], unittest.mock.ANY, ) - + additional_paths = self.run_pip.call_args[0][1] - self.assertEqual(len(additional_paths), 2) + self.assertEqual(len(additional_paths), 6) - + def test_bootstrapping_with_root(self): ensurepip.bootstrap(root="/foo/bar/") @@ -55,7 +56,7 @@ class TestBootstrap(EnsurepipMixin, unittest.TestCase): @@ -112,7 +111,7 @@ index 9b04c18..23664c4 100644 unittest.mock.ANY, ) @@ -186,8 +192,8 @@ class TestUninstall(EnsurepipMixin, unittest.TestCase): - + self.run_pip.assert_called_once_with( [ - "uninstall", "-y", "--disable-pip-version-check", "pip", @@ -121,9 +120,9 @@ index 9b04c18..23664c4 100644 + "pyparsing", "packaging", "appdirs", "six", "pip", "setuptools", ] ) - + @@ -197,8 +203,8 @@ class TestUninstall(EnsurepipMixin, unittest.TestCase): - + self.run_pip.assert_called_once_with( [ - "uninstall", "-y", "--disable-pip-version-check", "-v", "pip", @@ -132,9 +131,9 @@ index 9b04c18..23664c4 100644 + "pyparsing", "packaging", "appdirs", "six", "pip", "setuptools", ] ) - + @@ -208,8 +214,8 @@ class TestUninstall(EnsurepipMixin, unittest.TestCase): - + self.run_pip.assert_called_once_with( [ - "uninstall", "-y", "--disable-pip-version-check", "-vv", "pip", @@ -152,7 +151,7 @@ index 9b04c18..23664c4 100644 + "pyparsing", "packaging", "appdirs", "six", "pip", "setuptools", ] ) - + @@ -260,13 +266,14 @@ class TestBootstrappingMainFunction(EnsurepipMixin, unittest.TestCase): self.run_pip.assert_called_once_with( [ @@ -163,15 +162,15 @@ index 9b04c18..23664c4 100644 ], unittest.mock.ANY, ) - + additional_paths = self.run_pip.call_args[0][1] - self.assertEqual(len(additional_paths), 2) + self.assertEqual(len(additional_paths), 6) - - class TestUninstallationMainFunction(EnsurepipMixin, unittest.TestCase): - + self.assertEqual(exit_code, 0) + + def test_bootstrapping_error_code(self): @@ -284,8 +291,8 @@ class TestUninstallationMainFunction(EnsurepipMixin, unittest.TestCase): - + self.run_pip.assert_called_once_with( [ - "uninstall", "-y", "--disable-pip-version-check", "pip", @@ -180,4 +179,4 @@ index 9b04c18..23664c4 100644 + "appdirs", "six", "pip", "setuptools", ] ) - + diff --git a/python3/00261-use-proper-command-line-parsing-in-_testembed.patch b/python3/00261-use-proper-command-line-parsing-in-_testembed.patch deleted file mode 100644 index 49db110a..00000000 --- a/python3/00261-use-proper-command-line-parsing-in-_testembed.patch +++ /dev/null @@ -1,104 +0,0 @@ -diff --git a/Lib/test/test_capi.py b/Lib/test/test_capi.py -index 6c3625d..2a53f3d 100644 ---- a/Lib/test/test_capi.py -+++ b/Lib/test/test_capi.py -@@ -385,7 +385,7 @@ class EmbeddingTests(unittest.TestCase): - - def test_subinterps(self): - # This is just a "don't crash" test -- out, err = self.run_embedded_interpreter() -+ out, err = self.run_embedded_interpreter("repeated_init_and_subinterpreters") - if support.verbose: - print() - print(out) -diff --git a/Programs/_testembed.c b/Programs/_testembed.c -index 3968399..a68d4fa 100644 ---- a/Programs/_testembed.c -+++ b/Programs/_testembed.c -@@ -33,7 +33,7 @@ static void print_subinterp(void) - ); - } - --static void test_repeated_init_and_subinterpreters(void) -+static int test_repeated_init_and_subinterpreters(void) - { - PyThreadState *mainstate, *substate; - #ifdef WITH_THREAD -@@ -70,6 +70,7 @@ static void test_repeated_init_and_subinterpreters(void) - PyEval_RestoreThread(mainstate); - Py_Finalize(); - } -+ return 0; - } - - /***************************************************** -@@ -103,7 +104,7 @@ static void check_stdio_details(const char *encoding, const char * errors) - Py_Finalize(); - } - --static void test_forced_io_encoding(void) -+static int test_forced_io_encoding(void) - { - /* Check various combinations */ - printf("--- Use defaults ---\n"); -@@ -122,19 +123,51 @@ static void test_forced_io_encoding(void) - printf("Unexpected success calling Py_SetStandardStreamEncoding"); - } - Py_Finalize(); -+ return 0; - } - --/* Different embedding tests */ --int main(int argc, char *argv[]) -+/* ********************************************************* -+ * List of test cases and the function that implements it. -+ * -+ * Names are compared case-sensitively with the first -+ * argument. If no match is found, or no first argument was -+ * provided, the names of all test cases are printed and -+ * the exit code will be -1. -+ * -+ * The int returned from test functions is used as the exit -+ * code, and test_capi treats all non-zero exit codes as a -+ * failed test. -+ *********************************************************/ -+struct TestCase - { -+ const char *name; -+ int (*func)(void); -+}; -+ -+static struct TestCase TestCases[] = { -+ { "forced_io_encoding", test_forced_io_encoding }, -+ { "repeated_init_and_subinterpreters", test_repeated_init_and_subinterpreters }, -+ { NULL, NULL } -+}; - -- /* TODO: Check the argument string to allow for more test cases */ -+int main(int argc, char *argv[]) -+{ - if (argc > 1) { -- /* For now: assume "forced_io_encoding */ -- test_forced_io_encoding(); -- } else { -- /* Run the original embedding test case by default */ -- test_repeated_init_and_subinterpreters(); -+ for (struct TestCase *tc = TestCases; tc && tc->name; tc++) { -+ if (strcmp(argv[1], tc->name) == 0) -+ return (*tc->func)(); -+ } - } -- return 0; -+ -+ /* No match found, or no test name provided, so display usage */ -+ printf("Python " PY_VERSION " _testembed executable for embedded interpreter tests\n" -+ "Normally executed via 'EmbeddingTests' in Lib/test/test_capi.py\n\n" -+ "Usage: %s TESTNAME\n\nAll available tests:\n", argv[0]); -+ for (struct TestCase *tc = TestCases; tc && tc->name; tc++) { -+ printf(" %s\n", tc->name); -+ } -+ -+ /* Non-zero exit code will cause test_capi.py tests to fail. -+ This is intentional. */ -+ return -1; - } diff --git a/python3/3.6-ftm.patch b/python3/3.6-ftm.patch deleted file mode 100644 index 69575fad..00000000 --- a/python3/3.6-ftm.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- origsrc/Python-3.6.1rc1/configure.ac 2017-03-12 14:28:34.395001700 -0500 -+++ src/Python-3.6.1rc1/configure.ac 2017-03-21 00:27:44.595584900 -0500 -@@ -138,11 +138,6 @@ AC_DEFINE(_GNU_SOURCE, 1, [Define on Lin - AC_DEFINE(_NETBSD_SOURCE, 1, [Define on NetBSD to activate all library features]) - - # The later defininition of _XOPEN_SOURCE and _POSIX_C_SOURCE disables --# certain features on FreeBSD, so we need __BSD_VISIBLE to re-enable --# them. --AC_DEFINE(__BSD_VISIBLE, 1, [Define on FreeBSD to activate all library features]) -- --# The later defininition of _XOPEN_SOURCE and _POSIX_C_SOURCE disables - # u_int on Irix 5.3. Defining _BSD_TYPES brings it back. - AC_DEFINE(_BSD_TYPES, 1, [Define on Irix to enable u_int]) - diff --git a/python3/900-msysize.patch b/python3/900-msysize.patch index 1c44f4c8..b617239f 100644 --- a/python3/900-msysize.patch +++ b/python3/900-msysize.patch @@ -480,15 +480,6 @@ diff -Naur Python-3.4.3-orig/setup.py Python-3.4.3/setup.py self.announce('WARNING: skipping import check for Cygwin-based "%s"' % ext.name) return -@@ -1339,7 +1339,7 @@ - exts.append( Extension('resource', ['resource.c']) ) - - # Sun yellow pages. Some systems have the functions in libc. -- if (host_platform not in ['cygwin', 'qnx6'] and -+ if (host_platform not in ['cygwin', 'msys', 'qnx6'] and - find_file('rpcsvc/yp_prot.h', inc_dirs, []) is not None): - if (self.compiler.find_library_file(lib_dirs, 'nsl')): - libs = ['nsl'] @@ -1577,6 +1577,10 @@ macros = dict() libraries = [] @@ -500,6 +491,15 @@ diff -Naur Python-3.4.3-orig/setup.py Python-3.4.3/setup.py elif host_platform in ('freebsd4', 'freebsd5', 'freebsd6', 'freebsd7', 'freebsd8'): # FreeBSD's P1003.1b semaphore support is very experimental # and has many known problems. (as of June 2008) +@@ -2223,7 +2223,7 @@ + return ext + + def _detect_nis(self, inc_dirs, lib_dirs): +- if host_platform in {'win32', 'cygwin', 'qnx6'}: ++ if host_platform in {'win32', 'cygwin', 'msys', 'qnx6'}: + return None + + libs = [] diff -aur Python-3.6.0/Lib/test/test_asyncio/test_base_events.py.orig Python-3.6.0/Lib/test/test_asyncio/test_base_events.py --- Python-3.6.0/Lib/test/test_asyncio/test_base_events.py.orig 2017-02-08 15:03:29.184676300 -0500 +++ Python-3.6.0/Lib/test/test_asyncio/test_base_events.py 2017-02-08 15:49:05.932013200 -0500 diff --git a/python3/PKGBUILD b/python3/PKGBUILD index 70a47c6c..3d0d3ade 100644 --- a/python3/PKGBUILD +++ b/python3/PKGBUILD @@ -3,7 +3,7 @@ pkgbase=python3 pkgname=python -pkgver=3.6.2 +pkgver=3.6.5 pkgrel=1 _pybasever=3.6 pkgdesc="Next generation of the python high-level scripting language" @@ -21,7 +21,6 @@ source=(https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz 002-3.1-enable-new-dtags.patch 003-3.4-tkinter-cygwin.patch 004-3.4-ctypes-cygwin.patch - 005-3.6-PATH_MAX.patch 006-3.1-ncurses-abi6.patch 007-3.2-export-PySignal_SetWakeupFd.patch 008-3.4-distutils-soname.patch @@ -32,8 +31,7 @@ source=(https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz 013-3.4-select-cygwin.patch 014-3.4-signal-cygwin.patch 015-3.4-struct-cygwin.patch - 3.6-ftm.patch - 3.6-getrandom.patch + 016-3.6-ftm.patch 025-MINGW-compiler-customize-mingw-cygwin-compilers.patch 900-msysize.patch 910-libffi-msys2.patch @@ -49,16 +47,14 @@ source=(https://www.python.org/ftp/python/${pkgver%rc*}/Python-${pkgver}.tar.xz 00243-fix-mips64-triplet.patch 00252-add-executable-option.patch 00260-require-setuptools-dependencies.patch - 00261-use-proper-command-line-parsing-in-_testembed.patch 00264-skip-test-failing-on-aarch64.patch python3-powerppc-arch.patch 016-3.6-mpdec-cygwin.patch) -sha256sums=('9229773be41ed144370f47f0f626a1579931f5a390f1e8e3853174d52edd64a9' +sha256sums=('f434053ba1b5c8a5cc597e966ead3c5143012af827fd3f0697d21450bb8d87a6' 'de52e4722a6902e09dd6f343fdac0e7d45339f89386c8096b9c582c31aeb82e7' 'b5a787f02811f46800f98bf242448770492643a4431771bb4283e6ae97016263' '4d7601b62e73c04553d22d480a873983a28b11df1f06be6898014453ce04afc3' 'edf33a790c7c0903b8edbc8e68baf91cf2d34c13e607503d1cc7f270186ea76c' - '85499ca7f1016087df48223e4712db60930aa97a2eae634d2d955fb71bdfc864' '8a138293fa5ad3a7522e00194994fecc8967c6a71822127391e4d756b2280e74' '1ab20d38926aa85e638317620c29c484fcbbc228cd7cdf9543c29b750556d23f' '7a7425b5fa28b7692bafff226981650748d7f40a42a711378b9a9c8b23a98060' @@ -70,9 +66,8 @@ sha256sums=('9229773be41ed144370f47f0f626a1579931f5a390f1e8e3853174d52edd64a9' '30564663c1f2cd7d0d10a2b07eceb139534f17bc3a38dc8daafad0d5111e8bbc' '505c736e35772835b06597de552217e4838052b759d1350b65b4cb079b6403f3' '7c4774d40b18d5a4ef4f3e05d53cc2d4d0ca3d0f970b3af7f7164ac8be0a4c56' - 'd1f4b04c59bce82532f5ff5fdae4dda7f03f87b2ab03da61bee008915ce2ddc9' '5b1083e9b50e149d623d863dee38ac1fb8d142f1bb78c8a01dcb09bfd97f4118' - '9bbe2921b16ba689472a54de8aa5921cbf7eb9a3921ae1c9697d44ffaf8f414f' + 'c196e50e029016947db4470a1339af6899722754fe8f026627fd671230852b51' '7e587d145db24fbee1c7c7b96a4d7f247d132315384d551005ffb39b51f41906' '387a2b7931fb4958e2526991760d85677f44fa13cff0aeb0f41a267f1f7fd214' 'f8b15d7079bfa1707e5bea78f600a0fca2077c25428c2bac5793b19b408f276e' @@ -81,12 +76,11 @@ sha256sums=('9229773be41ed144370f47f0f626a1579931f5a390f1e8e3853174d52edd64a9' 'e70369c7096b8204b0af968679d493bf272996df637e53ca6fad4a236f1a2b02' '4e7ce358f0650545ee9ae112b26cee4dce8f763eac5612f556e975ad38056fb8' 'd04b7bec35418c699358c8140a7213efe1a133772972715800b7a6101e0d699a' - 'f093014bf6c0b64a662ea7d41812e6bbe33726af2b607062a3dbae226691948f' + 'b5106a6a6db3ef9c0b41f34a4e0795558e2eeb268fa70333cd3eb03334d58972' 'd61273d74f734bcdef933531cbd3cc77cf79b5826837cbd40cd48e5b1bc76072' 'f81a0a0907e65a00bff1a1ede4827a33984a6f2aee3aed2ce6a2423decdfd26d' '735257fc216be2300b35dab8a97ff76199cc98d69b0bce36f099d476fb0f30e5' - 'df334d534d225587a1a90e143be7f788cc2a1b8ae30f6d378cef0ef83ef3ced4' - 'bb21618672c91f549e9ba3c9fd63f419670f9e3aa051f23e773fc08fbecac80f' + 'bd44cd6782854789ce6aad5e5b15fc05f87b6a626902551d7a509484d846660e' '843c26c4325f1d42f30f6e1fac5e6ff06122903bd37aa67683838ae49609e276' '0de3e6e67d86f7e3593c504385399537b42920aca94329424cc8b1d65ae2ac4f' 'e3ef181333d5c9d20297849a46a68271a2190b7fc611c40c68c1ae240fa7ec36') @@ -100,7 +94,6 @@ prepare() { patch -p1 -i ${srcdir}/002-3.1-enable-new-dtags.patch patch -p1 -i ${srcdir}/003-3.4-tkinter-cygwin.patch patch -p1 -i ${srcdir}/004-3.4-ctypes-cygwin.patch - patch -p1 -i ${srcdir}/005-3.6-PATH_MAX.patch patch -p1 -i ${srcdir}/006-3.1-ncurses-abi6.patch patch -p1 -i ${srcdir}/007-3.2-export-PySignal_SetWakeupFd.patch patch -p1 -i ${srcdir}/008-3.4-distutils-soname.patch @@ -111,8 +104,7 @@ prepare() { patch -p1 -i ${srcdir}/013-3.4-select-cygwin.patch patch -p1 -i ${srcdir}/014-3.4-signal-cygwin.patch patch -p1 -i ${srcdir}/015-3.4-struct-cygwin.patch - patch -p2 -i ${srcdir}/3.6-ftm.patch - patch -p2 -i ${srcdir}/3.6-getrandom.patch + patch -p2 -i ${srcdir}/016-3.6-ftm.patch patch -p1 -i ${srcdir}/025-MINGW-compiler-customize-mingw-cygwin-compilers.patch patch -p1 -i ${srcdir}/900-msysize.patch patch -p1 -i ${srcdir}/910-libffi-msys2.patch @@ -131,7 +123,6 @@ prepare() { patch -p1 -i ${srcdir}/00243-fix-mips64-triplet.patch patch -p1 -i ${srcdir}/00252-add-executable-option.patch patch -p1 -i ${srcdir}/00260-require-setuptools-dependencies.patch - patch -p1 -i ${srcdir}/00261-use-proper-command-line-parsing-in-_testembed.patch patch -p1 -i ${srcdir}/00264-skip-test-failing-on-aarch64.patch patch -p1 -i ${srcdir}/python3-powerppc-arch.patch #PiotrVV