public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/nordugrid-arc] rawhide: Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility
@ 2026-08-11 7:59 Jitka Plesnikova
0 siblings, 0 replies; only message in thread
From: Jitka Plesnikova @ 2026-08-11 7:59 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/nordugrid-arc
Branch : rawhide
Commit : c8098325c3394ae3e4d80de46ca357c797360bdb
Author : Jitka Plesnikova <jplesnik@redhat.com>
Date : 2026-07-28T15:29:18+02:00
Stats : +118/-1 in 2 file(s)
URL : https://src.fedoraproject.org/rpms/nordugrid-arc/c/c8098325c3394ae3e4d80de46ca357c797360bdb?branch=rawhide
Log:
Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility
---
diff --git a/nordugrid-arc-swig45.patch b/nordugrid-arc-swig45.patch
new file mode 100644
index 0000000..df15128
--- /dev/null
+++ b/nordugrid-arc-swig45.patch
@@ -0,0 +1,110 @@
+diff -up nordugrid-arc-7.1.2/src/hed/acc/PythonBroker/PythonBrokerPlugin.cpp.swig45 nordugrid-arc-7.1.2/src/hed/acc/PythonBroker/PythonBrokerPlugin.cpp
+--- nordugrid-arc-7.1.2/src/hed/acc/PythonBroker/PythonBrokerPlugin.cpp.swig45 2026-07-28 10:13:28.445651632 +0200
++++ nordugrid-arc-7.1.2/src/hed/acc/PythonBroker/PythonBrokerPlugin.cpp 2026-07-28 10:13:28.454210671 +0200
+@@ -126,7 +126,7 @@ namespace Arc {
+ #if PY_MAJOR_VERSION >= 3
+ PyObjectP py_arc_module_name = PyUnicode_FromString("arc");
+ #else
+- PyObjectP py_arc_module_name = PyString_FromString("arc");
++ PyObjectP py_arc_module_name = PyUnicode_FromString("arc");
+ #endif
+ if (!py_arc_module_name) {
+ logger.msg(ERROR, "Cannot convert ARC module name to Python string");
+@@ -201,7 +201,7 @@ namespace Arc {
+ #if PY_MAJOR_VERSION >= 3
+ PyObjectP py_module_name = PyUnicode_FromString(module_name.c_str());
+ #else
+- PyObjectP py_module_name = PyString_FromString(module_name.c_str());
++ PyObjectP py_module_name = PyUnicode_FromString(module_name.c_str());
+ #endif
+ if (!py_module_name) {
+ logger.msg(ERROR, "Cannot convert module name to Python string");
+diff -up nordugrid-arc-7.1.2/src/services/wrappers/python/pythonwrapper.cpp.swig45 nordugrid-arc-7.1.2/src/services/wrappers/python/pythonwrapper.cpp
+--- nordugrid-arc-7.1.2/src/services/wrappers/python/pythonwrapper.cpp.swig45 2026-07-28 10:13:28.447651675 +0200
++++ nordugrid-arc-7.1.2/src/services/wrappers/python/pythonwrapper.cpp 2026-07-28 10:13:28.455079702 +0200
+@@ -151,7 +151,7 @@ Service_PythonWrapper::Service_PythonWra
+ #if PY_MAJOR_VERSION >= 3
+ py_module_name = PyUnicode_FromString(module_name.c_str());
+ #else
+- py_module_name = PyString_FromString(module_name.c_str());
++ py_module_name = PyUnicode_FromString(module_name.c_str());
+ #endif
+ if (py_module_name == NULL) {
+ logger.msg(Arc::ERROR, "Cannot convert module name to Python string");
+@@ -172,7 +172,7 @@ Service_PythonWrapper::Service_PythonWra
+ #if PY_MAJOR_VERSION >= 3
+ py_arc_module_name = PyUnicode_FromString("arc");
+ #else
+- py_arc_module_name = PyString_FromString("arc");
++ py_arc_module_name = PyUnicode_FromString("arc");
+ #endif
+ if (py_arc_module_name == NULL) {
+ logger.msg(Arc::ERROR, "Cannot convert ARC module name to Python string");
+diff -up nordugrid-arc-7.1.2/swig/Arc.i.swig45 nordugrid-arc-7.1.2/swig/Arc.i
+--- nordugrid-arc-7.1.2/swig/Arc.i.swig45 2026-07-28 10:13:28.449651717 +0200
++++ nordugrid-arc-7.1.2/swig/Arc.i 2026-07-28 10:13:28.456239355 +0200
+@@ -90,7 +90,7 @@ class StaticPropertyWrapper(object):
+ %typemap(in) time_t
+ {
+ if (PyLong_Check($input)) $1 = (time_t) PyLong_AsLong($input);
+- else if (PyInt_Check($input)) $1 = (time_t) PyInt_AsLong($input);
++ else if (PyLong_Check($input)) $1 = (time_t) PyLong_AsLong($input);
+ else if (PyFloat_Check($input)) $1 = (time_t) PyFloat_AsDouble($input);
+ else {
+ PyErr_SetString(PyExc_TypeError,"Expected a large type");
+@@ -107,7 +107,7 @@ class StaticPropertyWrapper(object):
+
+ %typemap(in) uint32_t
+ {
+- if (PyInt_Check($input)) $1 = (uint32_t) PyInt_AsLong($input);
++ if (PyLong_Check($input)) $1 = (uint32_t) PyLong_AsLong($input);
+ else if (PyFloat_Check($input)) $1 = (uint32_t) PyFloat_AsDouble($input);
+ else {
+ PyErr_SetString(PyExc_TypeError,"Unable to convert type to 32bit number (int/float)");
+@@ -118,7 +118,7 @@ class StaticPropertyWrapper(object):
+
+ %typemap(out) uint32_t
+ {
+- $result = PyInt_FromLong((int)$1);
++ $result = PyLong_FromLong((int)$1);
+ }
+ #endif
+
+diff -up nordugrid-arc-7.1.2/swig/data.i.swig45 nordugrid-arc-7.1.2/swig/data.i
+--- nordugrid-arc-7.1.2/swig/data.i.swig45 2026-07-28 10:13:28.450651739 +0200
++++ nordugrid-arc-7.1.2/swig/data.i 2026-07-28 10:13:28.456694868 +0200
+@@ -121,10 +121,10 @@ typedef struct {
+
+ %typemap(out) Arc::DataBufferForWriteResult {
+ $result = PyTuple_New(5);
+- PyTuple_SetItem($result,0,PyInt_FromLong($1.result));
+- PyTuple_SetItem($result,1,PyInt_FromLong($1.handle));
+- PyTuple_SetItem($result,2,PyInt_FromLong($1.size));
+- PyTuple_SetItem($result,3,PyInt_FromLong($1.offset));
++ PyTuple_SetItem($result,0,PyLong_FromLong($1.result));
++ PyTuple_SetItem($result,1,PyLong_FromLong($1.handle));
++ PyTuple_SetItem($result,2,PyLong_FromLong($1.size));
++ PyTuple_SetItem($result,3,PyLong_FromLong($1.offset));
+ %#if PY_VERSION_HEX>=0x03000000
+ PyTuple_SetItem($result,4,$1.buffer?PyUnicode_FromStringAndSize($1.buffer,$1.size):Py_None);
+ %#else
+@@ -133,7 +133,7 @@ typedef struct {
+ }
+
+ %typemap(out) Arc::DataBufferForReadResult {
+- $result = PyTuple_Pack(3, PyInt_FromLong($1.result), PyInt_FromLong($1.handle), PyInt_FromLong($1.size));
++ $result = PyTuple_Pack(3, PyLong_FromLong($1.result), PyLong_FromLong($1.handle), PyLong_FromLong($1.size));
+ }
+
+ %typemap(in) (char* DataBufferIsReadBuf, unsigned int DataBufferIsReadSize) {
+@@ -142,8 +142,8 @@ typedef struct {
+ $1 = PyBytes_AsString($input);
+ $2 = ($1)?PyBytes_Size($input):0;
+ %#else
+- $1 = PyString_AsString($input);
+- $2 = ($1)?PyString_Size($input):0;
++ $1 = PyBytes_AsString($input);
++ $2 = ($1)?PyBytes_Size($input):0;
+ %#endif
+ }
+
diff --git a/nordugrid-arc.spec b/nordugrid-arc.spec
index df1c153..13bb470 100644
--- a/nordugrid-arc.spec
+++ b/nordugrid-arc.spec
@@ -23,7 +23,7 @@
Name: nordugrid-arc
Version: 7.1.2
-Release: 6%{?dist}
+Release: 7%{?dist}
Summary: Advanced Resource Connector Middleware
# Apache-2.0: most files
# MIT: src/external/cJSON/cJSON.c src/external/cJSON/cJSON.h
@@ -38,6 +38,9 @@ Patch0: 0001-Handle-Python-multi-phase-initialization-support-in-.patch
Patch1: 0001-Fix-compilation-with-Python-3.15.patch
# https://source.coderefinery.org/nordugrid/arc/-/merge_requests/1997
Patch2: 0001-Support-OpenSSL-4.patch
+# Replace removed Python 2 C API macros with Python 3 equivalents
+# for compatibility with SWIG 4.5.0
+Patch3: nordugrid-arc-swig45.patch
# Packages dropped without replacements
Obsoletes: %{name}-arcproxyalt < 6.0.0
@@ -562,6 +565,7 @@ publishes metrics about jobs and datastaging on the ARC-CE.
%patch -P0 -p1
%patch -P1 -p1
%patch -P2 -p1
+%patch -P3 -p1
%build
autoreconf -v -f -i
@@ -1140,6 +1144,9 @@ semanage fcontext -a -t slapd_var_run_t "/var/run/arc/bdii/db(/.*)?" 2>/dev/null
%{_sbindir}/arc-exporter
%changelog
+* Tue Jul 28 2026 Jitka Plesnikova <jplesnik@redhat.com> - 7.1.2-7
+- Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility
+
* Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 7.1.2-6
- Rebuilt for Python 3.15.0b4 ABI change
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-08-11 7:59 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-11 7:59 [rpms/nordugrid-arc] rawhide: Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility Jitka Plesnikova
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox