diff --git a/00170-gc-assertions.patch b/00170-gc-assertions.patch index c37e69c..fb3ad85 100644 --- a/00170-gc-assertions.patch +++ b/00170-gc-assertions.patch @@ -53,15 +53,16 @@ index c772dea..5729797 100644 } #endif diff --git a/Lib/test/test_gc.py b/Lib/test/test_gc.py -index 904fc7d..288e242 100644 +index 8d806db..dc8bb16 100644 --- a/Lib/test/test_gc.py +++ b/Lib/test/test_gc.py -@@ -1,10 +1,11 @@ +@@ -1,10 +1,12 @@ import unittest from test.support import (verbose, refcount_test, run_unittest, strip_python_stderr, cpython_only, start_threads, -- temp_dir, requires_type_collecting) -+ temp_dir, import_module, requires_type_collecting) +- temp_dir, requires_type_collecting, TESTFN, unlink) ++ temp_dir, requires_type_collecting, TESTFN, unlink, ++ import_module) from test.support.script_helper import assert_python_ok, make_script import sys @@ -69,7 +70,7 @@ index 904fc7d..288e242 100644 import time import gc import weakref -@@ -46,6 +47,8 @@ class GC_Detector(object): +@@ -46,6 +48,8 @@ class GC_Detector(object): # gc collects it. self.wr = weakref.ref(C1055820(666), it_happened) @@ -78,7 +79,7 @@ index 904fc7d..288e242 100644 @with_tp_del class Uncollectable(object): """Create a reference cycle with multiple __del__ methods. -@@ -863,6 +866,50 @@ class GCCallbackTests(unittest.TestCase): +@@ -878,6 +882,50 @@ class GCCallbackTests(unittest.TestCase): self.assertEqual(len(gc.garbage), 0) @@ -130,7 +131,7 @@ index 904fc7d..288e242 100644 def setUp(self): gc.enable() diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c -index 8ba1093..e795308 100644 +index 4d701cb..388dd78 100644 --- a/Modules/gcmodule.c +++ b/Modules/gcmodule.c @@ -239,7 +239,8 @@ update_refs(PyGC_Head *containers) @@ -251,7 +252,7 @@ index 8ba1093..e795308 100644 /* copy-paste of weakrefobject.c's handle_callback() */ temp = PyObject_CallFunctionObjArgs(callback, wr, NULL); -@@ -720,12 +726,14 @@ check_garbage(PyGC_Head *collectable) +@@ -717,12 +723,14 @@ check_garbage(PyGC_Head *collectable) for (gc = collectable->gc.gc_next; gc != collectable; gc = gc->gc.gc_next) { _PyGCHead_SET_REFS(gc, Py_REFCNT(FROM_GC(gc))); diff --git a/00307-allow-to-call-Py_Main-after-Py_Initialize.patch b/00307-allow-to-call-Py_Main-after-Py_Initialize.patch deleted file mode 100644 index d9c0486..0000000 --- a/00307-allow-to-call-Py_Main-after-Py_Initialize.patch +++ /dev/null @@ -1,150 +0,0 @@ -From bbd6fc7e77dbd33ae7d3670eaf7800b5d3ff42d3 Mon Sep 17 00:00:00 2001 -From: Victor Stinner -Date: Fri, 20 Jul 2018 17:34:23 +0200 -Subject: [PATCH] bpo-34008: Allow to call Py_Main() after Py_Initialize() - (GH-8043) - -Py_Main() can again be called after Py_Initialize(), as in Python -3.6. The new configuration is ignored, except of -_PyMainInterpreterConfig.argv which is used to update sys.argv. -(cherry picked from commit fb47bca9ee2d07ce96df94b4e4abafd11826eb01) - -Co-authored-by: Victor Stinner ---- - Lib/test/test_embed.py | 8 ++++++++ - .../C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst | 1 + - Modules/main.c | 10 +++++++--- - Programs/_testembed.c | 16 +++++++++++++++ - Python/pylifecycle.c | 23 +++++++++++++++++++--- - 5 files changed, 52 insertions(+), 6 deletions(-) - create mode 100644 Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst - -diff --git a/Lib/test/test_embed.py b/Lib/test/test_embed.py -index f3b60433ccc1..024c3f99a85d 100644 ---- a/Lib/test/test_embed.py -+++ b/Lib/test/test_embed.py -@@ -238,6 +238,14 @@ def test_initialize_twice(self): - self.assertEqual(out, '') - self.assertEqual(err, '') - -+ def test_initialize_pymain(self): -+ """ -+ bpo-34008: Calling Py_Main() after Py_Initialize() must not fail. -+ """ -+ out, err = self.run_embedded_interpreter("initialize_pymain") -+ self.assertEqual(out.rstrip(), "Py_Main() after Py_Initialize: sys.argv=['-c', 'arg2']") -+ self.assertEqual(err, '') -+ - - if __name__ == "__main__": - unittest.main() -diff --git a/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst b/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst -new file mode 100644 -index 000000000000..d9881b9945df ---- /dev/null -+++ b/Misc/NEWS.d/next/C API/2018-07-02-10-58-11.bpo-34008.COewz-.rst -@@ -0,0 +1 @@ -+Py_Main() can again be called after Py_Initialize(), as in Python 3.6. -diff --git a/Modules/main.c b/Modules/main.c -index 3809fa4abef5..31ebbceb83e0 100644 ---- a/Modules/main.c -+++ b/Modules/main.c -@@ -2647,9 +2647,13 @@ pymain_main(_PyMain *pymain) - - pymain_init_stdio(pymain); - -- pymain->err = _Py_InitializeCore(&pymain->config); -- if (_Py_INIT_FAILED(pymain->err)) { -- _Py_FatalInitError(pymain->err); -+ /* bpo-34008: For backward compatibility reasons, calling Py_Main() after -+ Py_Initialize() ignores the new configuration. */ -+ if (!_PyRuntime.initialized) { -+ pymain->err = _Py_InitializeCore(&pymain->config); -+ if (_Py_INIT_FAILED(pymain->err)) { -+ _Py_FatalInitError(pymain->err); -+ } - } - - if (pymain_init_python_main(pymain) < 0) { -diff --git a/Programs/_testembed.c b/Programs/_testembed.c -index b8827f074b9c..b1be682f7adc 100644 ---- a/Programs/_testembed.c -+++ b/Programs/_testembed.c -@@ -276,6 +276,21 @@ static int test_initialize_twice(void) - return 0; - } - -+static int test_initialize_pymain(void) -+{ -+ wchar_t *argv[] = {L"PYTHON", L"-c", -+ L"import sys; print(f'Py_Main() after Py_Initialize: sys.argv={sys.argv}')", -+ L"arg2"}; -+ _testembed_Py_Initialize(); -+ -+ /* bpo-34008: Calling Py_Main() after Py_Initialize() must not crash */ -+ Py_Main(Py_ARRAY_LENGTH(argv), argv); -+ -+ Py_Finalize(); -+ -+ return 0; -+} -+ - - /* ********************************************************* - * List of test cases and the function that implements it. -@@ -302,6 +317,7 @@ static struct TestCase TestCases[] = { - { "pre_initialization_sys_options", test_pre_initialization_sys_options }, - { "bpo20891", test_bpo20891 }, - { "initialize_twice", test_initialize_twice }, -+ { "initialize_pymain", test_initialize_pymain }, - { NULL, NULL } - }; - -diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c -index fdb759f480be..219a46558825 100644 ---- a/Python/pylifecycle.c -+++ b/Python/pylifecycle.c -@@ -775,6 +775,22 @@ _Py_InitializeCore(const _PyCoreConfig *core_config) - return _Py_INIT_OK(); - } - -+/* Py_Initialize() has already been called: update the main interpreter -+ configuration. Example of bpo-34008: Py_Main() called after -+ Py_Initialize(). */ -+static _PyInitError -+_Py_ReconfigureMainInterpreter(PyInterpreterState *interp, -+ const _PyMainInterpreterConfig *config) -+{ -+ if (config->argv != NULL) { -+ int res = PyDict_SetItemString(interp->sysdict, "argv", config->argv); -+ if (res < 0) { -+ return _Py_INIT_ERR("fail to set sys.argv"); -+ } -+ } -+ return _Py_INIT_OK(); -+} -+ - /* Update interpreter state based on supplied configuration settings - * - * After calling this function, most of the restrictions on the interpreter -@@ -796,9 +812,6 @@ _Py_InitializeMainInterpreter(const _PyMainInterpreterConfig *config) - if (!_PyRuntime.core_initialized) { - return _Py_INIT_ERR("runtime core not initialized"); - } -- if (_PyRuntime.initialized) { -- return _Py_INIT_ERR("main interpreter already initialized"); -- } - - /* Get current thread state and interpreter pointer */ - tstate = PyThreadState_GET(); -@@ -813,6 +826,10 @@ _Py_InitializeMainInterpreter(const _PyMainInterpreterConfig *config) - return _Py_INIT_ERR("failed to copy main interpreter config"); - } - -+ if (_PyRuntime.initialized) { -+ return _Py_ReconfigureMainInterpreter(interp, config); -+ } -+ - if (interp->core_config._disable_importlib) { - /* Special mode for freeze_importlib: run with no import system - * diff --git a/00308-tls-1.3.patch b/00308-tls-1.3.patch deleted file mode 100644 index 7cd9e59..0000000 --- a/00308-tls-1.3.patch +++ /dev/null @@ -1,182 +0,0 @@ -diff --git a/Lib/test/dh1024.pem b/Lib/test/dh1024.pem -deleted file mode 100644 -index a391176..0000000 ---- a/Lib/test/dh1024.pem -+++ /dev/null -@@ -1,7 +0,0 @@ -------BEGIN DH PARAMETERS----- --MIGHAoGBAIbzw1s9CT8SV5yv6L7esdAdZYZjPi3qWFs61CYTFFQnf2s/d09NYaJt --rrvJhIzWavqnue71qXCf83/J3nz3FEwUU/L0mGyheVbsSHiI64wUo3u50wK5Igo0 --RNs/LD0irs7m0icZ//hijafTU+JOBiuA8zMI+oZfU7BGuc9XrUprAgEC -------END DH PARAMETERS----- -- --Generated with: openssl dhparam -out dh1024.pem 1024 -diff --git a/Lib/test/ffdh3072.pem b/Lib/test/ffdh3072.pem -new file mode 100644 -index 0000000..ad69bac ---- /dev/null -+++ b/Lib/test/ffdh3072.pem -@@ -0,0 +1,41 @@ -+ DH Parameters: (3072 bit) -+ prime: -+ 00:ff:ff:ff:ff:ff:ff:ff:ff:ad:f8:54:58:a2:bb: -+ 4a:9a:af:dc:56:20:27:3d:3c:f1:d8:b9:c5:83:ce: -+ 2d:36:95:a9:e1:36:41:14:64:33:fb:cc:93:9d:ce: -+ 24:9b:3e:f9:7d:2f:e3:63:63:0c:75:d8:f6:81:b2: -+ 02:ae:c4:61:7a:d3:df:1e:d5:d5:fd:65:61:24:33: -+ f5:1f:5f:06:6e:d0:85:63:65:55:3d:ed:1a:f3:b5: -+ 57:13:5e:7f:57:c9:35:98:4f:0c:70:e0:e6:8b:77: -+ e2:a6:89:da:f3:ef:e8:72:1d:f1:58:a1:36:ad:e7: -+ 35:30:ac:ca:4f:48:3a:79:7a:bc:0a:b1:82:b3:24: -+ fb:61:d1:08:a9:4b:b2:c8:e3:fb:b9:6a:da:b7:60: -+ d7:f4:68:1d:4f:42:a3:de:39:4d:f4:ae:56:ed:e7: -+ 63:72:bb:19:0b:07:a7:c8:ee:0a:6d:70:9e:02:fc: -+ e1:cd:f7:e2:ec:c0:34:04:cd:28:34:2f:61:91:72: -+ fe:9c:e9:85:83:ff:8e:4f:12:32:ee:f2:81:83:c3: -+ fe:3b:1b:4c:6f:ad:73:3b:b5:fc:bc:2e:c2:20:05: -+ c5:8e:f1:83:7d:16:83:b2:c6:f3:4a:26:c1:b2:ef: -+ fa:88:6b:42:38:61:1f:cf:dc:de:35:5b:3b:65:19: -+ 03:5b:bc:34:f4:de:f9:9c:02:38:61:b4:6f:c9:d6: -+ e6:c9:07:7a:d9:1d:26:91:f7:f7:ee:59:8c:b0:fa: -+ c1:86:d9:1c:ae:fe:13:09:85:13:92:70:b4:13:0c: -+ 93:bc:43:79:44:f4:fd:44:52:e2:d7:4d:d3:64:f2: -+ e2:1e:71:f5:4b:ff:5c:ae:82:ab:9c:9d:f6:9e:e8: -+ 6d:2b:c5:22:36:3a:0d:ab:c5:21:97:9b:0d:ea:da: -+ 1d:bf:9a:42:d5:c4:48:4e:0a:bc:d0:6b:fa:53:dd: -+ ef:3c:1b:20:ee:3f:d5:9d:7c:25:e4:1d:2b:66:c6: -+ 2e:37:ff:ff:ff:ff:ff:ff:ff:ff -+ generator: 2 (0x2) -+ recommended-private-length: 276 bits -+-----BEGIN DH PARAMETERS----- -+MIIBjAKCAYEA//////////+t+FRYortKmq/cViAnPTzx2LnFg84tNpWp4TZBFGQz -++8yTnc4kmz75fS/jY2MMddj2gbICrsRhetPfHtXV/WVhJDP1H18GbtCFY2VVPe0a -+87VXE15/V8k1mE8McODmi3fipona8+/och3xWKE2rec1MKzKT0g6eXq8CrGCsyT7 -+YdEIqUuyyOP7uWrat2DX9GgdT0Kj3jlN9K5W7edjcrsZCwenyO4KbXCeAvzhzffi -+7MA0BM0oNC9hkXL+nOmFg/+OTxIy7vKBg8P+OxtMb61zO7X8vC7CIAXFjvGDfRaD -+ssbzSibBsu/6iGtCOGEfz9zeNVs7ZRkDW7w09N75nAI4YbRvydbmyQd62R0mkff3 -+7lmMsPrBhtkcrv4TCYUTknC0EwyTvEN5RPT9RFLi103TZPLiHnH1S/9croKrnJ32 -+nuhtK8UiNjoNq8Uhl5sN6todv5pC1cRITgq80Gv6U93vPBsg7j/VnXwl5B0rZsYu -+N///////////AgECAgIBFA== -+-----END DH PARAMETERS----- -diff --git a/Lib/test/test_ftplib.py b/Lib/test/test_ftplib.py -index f9488a9..da8ba32 100644 ---- a/Lib/test/test_ftplib.py -+++ b/Lib/test/test_ftplib.py -@@ -880,18 +880,23 @@ class TestTLS_FTPClass(TestCase): - # clear text - with self.client.transfercmd('list') as sock: - self.assertNotIsInstance(sock, ssl.SSLSocket) -+ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii')) - self.assertEqual(self.client.voidresp(), "226 transfer complete") - - # secured, after PROT P - self.client.prot_p() - with self.client.transfercmd('list') as sock: - self.assertIsInstance(sock, ssl.SSLSocket) -+ # consume from SSL socket to finalize handshake and avoid -+ # "SSLError [SSL] shutdown while in init" -+ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii')) - self.assertEqual(self.client.voidresp(), "226 transfer complete") - - # PROT C is issued, the connection must be in cleartext again - self.client.prot_c() - with self.client.transfercmd('list') as sock: - self.assertNotIsInstance(sock, ssl.SSLSocket) -+ self.assertEqual(sock.recv(1024), LIST_DATA.encode('ascii')) - self.assertEqual(self.client.voidresp(), "226 transfer complete") - - def test_login(self): -diff --git a/Lib/test/test_ssl.py b/Lib/test/test_ssl.py -index 7bbaa9f..ea528b5 100644 ---- a/Lib/test/test_ssl.py -+++ b/Lib/test/test_ssl.py -@@ -55,7 +55,6 @@ CAPATH = data_file("capath") - BYTES_CAPATH = os.fsencode(CAPATH) - CAFILE_NEURONIO = data_file("capath", "4e1295a3.0") - CAFILE_CACERT = data_file("capath", "5ed36f99.0") --WRONG_CERT = data_file("wrongcert.pem") - - CERTFILE_INFO = { - 'issuer': ((('countryName', 'XY'),), -@@ -118,7 +117,7 @@ BADKEY = data_file("badkey.pem") - NOKIACERT = data_file("nokia.pem") - NULLBYTECERT = data_file("nullbytecert.pem") - --DHFILE = data_file("dh1024.pem") -+DHFILE = data_file("ffdh3072.pem") - BYTES_DHFILE = os.fsencode(DHFILE) - - # Not defined in all versions of OpenSSL -@@ -2846,8 +2845,8 @@ class ThreadedTests(unittest.TestCase): - connect to it with a wrong client certificate fails. - """ - client_context, server_context, hostname = testing_context() -- # load client cert -- client_context.load_cert_chain(WRONG_CERT) -+ # load client cert that is not signed by trusted CA -+ client_context.load_cert_chain(CERTFILE) - # require TLS client authentication - server_context.verify_mode = ssl.CERT_REQUIRED - # TLS 1.3 has different handshake -@@ -2879,7 +2878,8 @@ class ThreadedTests(unittest.TestCase): - @unittest.skipUnless(ssl.HAS_TLSv1_3, "Test needs TLS 1.3") - def test_wrong_cert_tls13(self): - client_context, server_context, hostname = testing_context() -- client_context.load_cert_chain(WRONG_CERT) -+ # load client cert that is not signed by trusted CA -+ client_context.load_cert_chain(CERTFILE) - server_context.verify_mode = ssl.CERT_REQUIRED - server_context.minimum_version = ssl.TLSVersion.TLSv1_3 - client_context.minimum_version = ssl.TLSVersion.TLSv1_3 -diff --git a/Lib/test/wrongcert.pem b/Lib/test/wrongcert.pem -deleted file mode 100644 -index 5f92f9b..0000000 ---- a/Lib/test/wrongcert.pem -+++ /dev/null -@@ -1,32 +0,0 @@ -------BEGIN RSA PRIVATE KEY----- --MIICXAIBAAKBgQC89ZNxjTgWgq7Z1g0tJ65w+k7lNAj5IgjLb155UkUrz0XsHDnH --FlbsVUg2Xtk6+bo2UEYIzN7cIm5ImpmyW/2z0J1IDVDlvR2xJ659xrE0v5c2cB6T --f9lnNTwpSoeK24Nd7Jwq4j9vk95fLrdqsBq0/KVlsCXeixS/CaqqduXfvwIDAQAB --AoGAQFko4uyCgzfxr4Ezb4Mp5pN3Npqny5+Jey3r8EjSAX9Ogn+CNYgoBcdtFgbq --1yif/0sK7ohGBJU9FUCAwrqNBI9ZHB6rcy7dx+gULOmRBGckln1o5S1+smVdmOsW --7zUVLBVByKuNWqTYFlzfVd6s4iiXtAE2iHn3GCyYdlICwrECQQDhMQVxHd3EFbzg --SFmJBTARlZ2GKA3c1g/h9/XbkEPQ9/RwI3vnjJ2RaSnjlfoLl8TOcf0uOGbOEyFe --19RvCLXjAkEA1s+UE5ziF+YVkW3WolDCQ2kQ5WG9+ccfNebfh6b67B7Ln5iG0Sbg --ky9cjsO3jbMJQtlzAQnH1850oRD5Gi51dQJAIbHCDLDZU9Ok1TI+I2BhVuA6F666 --lEZ7TeZaJSYq34OaUYUdrwG9OdqwZ9sy9LUav4ESzu2lhEQchCJrKMn23QJAReqs --ZLHUeTjfXkVk7dHhWPWSlUZ6AhmIlA/AQ7Payg2/8wM/JkZEJEPvGVykms9iPUrv --frADRr+hAGe43IewnQJBAJWKZllPgKuEBPwoEldHNS8nRu61D7HzxEzQ2xnfj+Nk --2fgf1MAzzTRsikfGENhVsVWeqOcijWb6g5gsyCmlRpc= -------END RSA PRIVATE KEY----- -------BEGIN CERTIFICATE----- --MIICsDCCAhmgAwIBAgIJAOqYOYFJfEEoMA0GCSqGSIb3DQEBBQUAMEUxCzAJBgNV --BAYTAkFVMRMwEQYDVQQIEwpTb21lLVN0YXRlMSEwHwYDVQQKExhJbnRlcm5ldCBX --aWRnaXRzIFB0eSBMdGQwHhcNMDgwNjI2MTgxNTUyWhcNMDkwNjI2MTgxNTUyWjBF --MQswCQYDVQQGEwJBVTETMBEGA1UECBMKU29tZS1TdGF0ZTEhMB8GA1UEChMYSW50 --ZXJuZXQgV2lkZ2l0cyBQdHkgTHRkMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKB --gQC89ZNxjTgWgq7Z1g0tJ65w+k7lNAj5IgjLb155UkUrz0XsHDnHFlbsVUg2Xtk6 --+bo2UEYIzN7cIm5ImpmyW/2z0J1IDVDlvR2xJ659xrE0v5c2cB6Tf9lnNTwpSoeK --24Nd7Jwq4j9vk95fLrdqsBq0/KVlsCXeixS/CaqqduXfvwIDAQABo4GnMIGkMB0G --A1UdDgQWBBTctMtI3EO9OjLI0x9Zo2ifkwIiNjB1BgNVHSMEbjBsgBTctMtI3EO9 --OjLI0x9Zo2ifkwIiNqFJpEcwRTELMAkGA1UEBhMCQVUxEzARBgNVBAgTClNvbWUt --U3RhdGUxITAfBgNVBAoTGEludGVybmV0IFdpZGdpdHMgUHR5IEx0ZIIJAOqYOYFJ --fEEoMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAQwa7jya/DfhaDn7E --usPkpgIX8WCL2B1SqnRTXEZfBPPVq/cUmFGyEVRVATySRuMwi8PXbVcOhXXuocA+ --43W+iIsD9pXapCZhhOerCq18TC1dWK98vLUsoK8PMjB6e5H/O8bqojv0EeC+fyCw --eSHj5jpC8iZKjCHBn+mAi4cQ514= -------END CERTIFICATE----- -diff --git a/Lib/test/test_poplib.py b/Lib/test/test_poplib.py -index 20d4eeac12..a0c683bbcf 100644 ---- a/Lib/test/test_poplib.py -+++ b/Lib/test/test_poplib.py -@@ -178,7 +178,8 @@ class DummyPOP3Handler(asynchat.async_chat): - return self.handle_close() - # TODO: SSLError does not expose alert information - elif ("SSLV3_ALERT_BAD_CERTIFICATE" in err.args[1] or -- "SSLV3_ALERT_CERTIFICATE_UNKNOWN" in err.args[1]): -+ "SSLV3_ALERT_CERTIFICATE_UNKNOWN" in err.args[1] or -+ "bad record type" in err.args[1]): - return self.handle_close() - raise - except OSError as err: diff --git a/python3.spec b/python3.spec index 6bc5a64..2e2ee57 100644 --- a/python3.spec +++ b/python3.spec @@ -13,8 +13,8 @@ URL: https://www.python.org/ # WARNING When rebasing to a new Python version, # remember to update the python3-docs package as well -Version: %{pybasever}.0 -Release: 10%{?dist} +Version: %{pybasever}.1 +Release: 1%{?dist} License: Python @@ -196,7 +196,7 @@ BuildRequires: python-pip-wheel # Source code and patches # ======================= -Source: https://www.python.org/ftp/python/%{version}/Python-%{version}.tar.xz +Source: https://www.python.org/ftp/python/%{version}/Python-%{version}%{?prerel}.tar.xz # A simple script to check timestamps of bytecode files # Run in check section with Python that is currently being built @@ -305,21 +305,6 @@ Patch274: 00274-fix-arch-names.patch # and: https://src.fedoraproject.org/rpms/redhat-rpm-config/c/078af19 Patch291: 00291-setup-Link-ctypes-against-dl-explicitly.patch -# 00307 # -# Allow to call Py_Main() after Py_Initialize() -# See: https://bugzilla.redhat.com/show_bug.cgi?id=1595421 -# and: https://bugs.python.org/issue34008 -Patch307: 00307-allow-to-call-Py_Main-after-Py_Initialize.patch - -# 00308 # -# TLS 1.3 related fixes from upstream: -# https://github.com/python/cpython/pull/8762 -# https://github.com/python/cpython/pull/8787 -# And a workaround before openssl is 1.1.1-pre9: -# https://bugzilla.redhat.com/show_bug.cgi?id=1609291#c12 -# See: https://bugzilla.redhat.com/show_bug.cgi?id=1609291 -Patch308: 00308-tls-1.3.patch - # (New patches go here ^^^) # # When adding new patches to "python" and "python3" in Fedora, EL, etc., @@ -650,8 +635,6 @@ rm Lib/ensurepip/_bundled/*.whl %patch251 -p1 %patch274 -p1 %patch291 -p1 -%patch307 -p1 -%patch308 -p1 # Remove files that should be generated by the build @@ -1551,6 +1534,9 @@ CheckPython optimized # ====================================================== %changelog +* Mon Oct 22 2018 Miro HronĨok - 3.7.1-1 +- Update to 3.7.1 + * Thu Sep 27 2018 Petr Viktorin - 3.7.0-10 - Compile the debug build with -Og rather than -O0 diff --git a/sources b/sources index 099b345..4d40818 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (Python-3.7.0.tar.xz) = 8bb11233fb67ee9ab8ed1b72f8fdc62f66e26a6beaaeb92448bce681cf065269833b1658d3ed2459127f25ba43adb0eab73cf27c59834a2a803fb529b4216739 +SHA512 (Python-3.7.1.tar.xz) = 3eb62a0127609b14420a47442727702f396519c649625aca59883d04f4c02e5f37ba1d58ac8e93c49d14a63f17ae7909315c33fc813293dbcdb6127f39a148b0