From f1b016feec9972fb46823404a8202685e4bbfef2 Mon Sep 17 00:00:00 2001 From: DistroBaker Date: Tue, 27 Oct 2020 22:00:31 +0100 Subject: [PATCH] Merged update from upstream sources This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/python-pycurl.git#2492f5a67e10bcf646360336a5212cbca2acd57f --- 0001-python-pycurl-7.43.0.6-python-3.10.patch | 56 +++++++++++++++++++ python-pycurl.spec | 8 ++- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 0001-python-pycurl-7.43.0.6-python-3.10.patch diff --git a/0001-python-pycurl-7.43.0.6-python-3.10.patch b/0001-python-pycurl-7.43.0.6-python-3.10.patch new file mode 100644 index 0000000..c5e81f2 --- /dev/null +++ b/0001-python-pycurl-7.43.0.6-python-3.10.patch @@ -0,0 +1,56 @@ +From b3a1ff559c28f71702248cae317fa83baaa086a0 Mon Sep 17 00:00:00 2001 +From: Kamil Dudka +Date: Mon, 26 Oct 2020 17:26:23 +0100 +Subject: [PATCH] src/module.c: make the code compile against python-3.10.0a1 + +src/module.c:353:25: error: lvalue required as left operand of assignment + 353 | Py_TYPE(&Curl_Type) = &PyType_Type; + | ^ +src/module.c:354:30: error: lvalue required as left operand of assignment + 354 | Py_TYPE(&CurlMulti_Type) = &PyType_Type; + | ^ +src/module.c:355:30: error: lvalue required as left operand of assignment + 355 | Py_TYPE(&CurlShare_Type) = &PyType_Type; + | ^ + +Bug: https://bugzilla.redhat.com/1890442 + +Upstream-commit: c4036bdcb5dd01420a451cf02efac7c3fdf9e41f +Signed-off-by: Kamil Dudka +--- + src/module.c | 12 +++++++++--- + 1 file changed, 9 insertions(+), 3 deletions(-) + +diff --git a/src/module.c b/src/module.c +index 65e8c3a..9204ee0 100644 +--- a/src/module.c ++++ b/src/module.c +@@ -11,6 +11,12 @@ + + #define PYCURL_VERSION_PREFIX "PycURL/" PYCURL_VERSION_STRING + ++/* needed for compatibility with python < 3.10, as suggested at: ++ * https://docs.python.org/3.10/whatsnew/3.10.html#id2 */ ++#if PY_VERSION_HEX < 0x030900A4 ++# define Py_SET_TYPE(obj, type) ((Py_TYPE(obj) = (type)), (void)0) ++#endif ++ + PYCURL_INTERNAL char *empty_keywords[] = { NULL }; + + PYCURL_INTERNAL PyObject *bytesio = NULL; +@@ -412,9 +418,9 @@ initpycurl(void) + p_Curl_Type = &Curl_Type; + p_CurlMulti_Type = &CurlMulti_Type; + p_CurlShare_Type = &CurlShare_Type; +- Py_TYPE(&Curl_Type) = &PyType_Type; +- Py_TYPE(&CurlMulti_Type) = &PyType_Type; +- Py_TYPE(&CurlShare_Type) = &PyType_Type; ++ Py_SET_TYPE(&Curl_Type, &PyType_Type); ++ Py_SET_TYPE(&CurlMulti_Type, &PyType_Type); ++ Py_SET_TYPE(&CurlShare_Type, &PyType_Type); + + /* Create the module and add the functions */ + if (PyType_Ready(&Curl_Type) < 0) +-- +2.25.4 + diff --git a/python-pycurl.spec b/python-pycurl.spec index bba910e..8904bb9 100644 --- a/python-pycurl.spec +++ b/python-pycurl.spec @@ -16,7 +16,7 @@ Name: python-%{modname} Version: 7.43.0.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: A Python interface to libcurl License: LGPLv2+ or MIT @@ -25,6 +25,9 @@ URL: http://pycurl.sourceforge.net/ # Source0: https://dl.bintray.com/pycurl/pycurl/pycurl-%%{version}.tar.gz Source0: https://github.com/pycurl/pycurl/archive/REL_7_43_0_6.tar.gz#/pycurl-%{version}.tar.gz +# make the code compile against python-3.10.0a1 (#1890442) +Patch1: 0001-python-pycurl-7.43.0.6-python-3.10.patch + # drop link-time vs. run-time TLS backend check (#1446850) Patch2: 0002-python-pycurl-7.43.0-tls-backend.patch @@ -166,6 +169,9 @@ rm -fv tests/fake-curl/libcurl/*.so %endif %changelog +* Tue Oct 27 2020 Kamil Dudka - 7.43.0.6-2 +- make the code compile against python-3.10.0a1 (#1890442) + * Thu Sep 03 2020 Kamil Dudka - 7.43.0.6-1 - update to 7.43.0.6