public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Jitka Plesnikova <jplesnik@redhat.com>
To: git-commits@fedoraproject.org
Subject: [rpms/lttng-tools] rawhide: Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility
Date: Thu, 06 Aug 2026 14:40:29 GMT	[thread overview]
Message-ID: <178602722919.1.1684369990869016437.rpms-lttng-tools-69206a468186@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/lttng-tools
Branch : rawhide
Commit : 69206a4681862e276361cc273fdf51b201c6367f
Author : Jitka Plesnikova <jplesnik@redhat.com>
Date   : 2026-07-28T15:29:18+02:00
Stats  : +110/-1 in 2 file(s)
URL    : https://src.fedoraproject.org/rpms/lttng-tools/c/69206a4681862e276361cc273fdf51b201c6367f?branch=rawhide

Log:
Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility

---
diff --git a/lttng-tools-swig45.patch b/lttng-tools-swig45.patch
new file mode 100644
index 0000000..b483d8c
--- /dev/null
+++ b/lttng-tools-swig45.patch
@@ -0,0 +1,103 @@
+diff -up lttng-tools-2.15.1/extras/bindings/swig/python/lttng.i.in.swig45 lttng-tools-2.15.1/extras/bindings/swig/python/lttng.i.in
+--- lttng-tools-2.15.1/extras/bindings/swig/python/lttng.i.in.swig45	2026-07-28 09:46:54.910208990 +0200
++++ lttng-tools-2.15.1/extras/bindings/swig/python/lttng.i.in	2026-07-28 09:46:54.912209032 +0200
+@@ -241,9 +241,9 @@ enum lttng_event_context_type {
+ 		for(i=0; i<l; i++)
+ 		{
+ 			PyObject *tmp = PyTuple_New(4);
+-			PyObject *name = PyString_FromString((*$1)[i].name);
+-			PyObject *path = PyString_FromString((*$1)[i].path);
+-			PyObject *enabled = PyInt_FromSize_t((*$1)[i].enabled);
++			PyObject *name = PyUnicode_FromString((*$1)[i].name);
++			PyObject *path = PyUnicode_FromString((*$1)[i].path);
++			PyObject *enabled = PyLong_FromSize_t((*$1)[i].enabled);
+ 
+ 			PyTuple_SetItem(tmp, 0, name);
+ 			PyTuple_SetItem(tmp, 1, path);
+@@ -268,12 +268,12 @@ enum lttng_event_context_type {
+ 		for(i=0; i<l; i++)
+ 		{
+ 			PyObject *tmp = PyTuple_New(6);
+-			PyObject *type = PyInt_FromSize_t((*$1)[i].type);
+-			PyObject *buf_type = PyInt_FromSize_t((*$1)[i].buf_type);
+-			PyObject *execname = PyString_FromString((*$1)[i].attr.exec_name);
+-			PyObject *pid = PyInt_FromSize_t((*$1)[i].attr.pid);
+-			PyObject *padding = PyString_FromString((*$1)[i].padding);
+-			PyObject *attrpadding = PyString_FromString((*$1)[i].attr.padding);
++			PyObject *type = PyLong_FromSize_t((*$1)[i].type);
++			PyObject *buf_type = PyLong_FromSize_t((*$1)[i].buf_type);
++			PyObject *execname = PyUnicode_FromString((*$1)[i].attr.exec_name);
++			PyObject *pid = PyLong_FromSize_t((*$1)[i].attr.pid);
++			PyObject *padding = PyUnicode_FromString((*$1)[i].padding);
++			PyObject *attrpadding = PyUnicode_FromString((*$1)[i].attr.padding);
+ 
+ 			PyTuple_SetItem(tmp, 0, type);
+ 			PyTuple_SetItem(tmp, 1, buf_type);
+@@ -301,18 +301,18 @@ enum lttng_event_context_type {
+ 		for(i=0; i<l; i++)
+ 		{
+ 			PyObject *tmp = PyTuple_New(4);
+-			PyObject *name = PyString_FromString((*$1)[i].name);
+-			PyObject *enabled = PyInt_FromSize_t((*$1)[i].enabled);
+-			PyObject *padding = PyString_FromString((*$1)[i].padding);
++			PyObject *name = PyUnicode_FromString((*$1)[i].name);
++			PyObject *enabled = PyLong_FromSize_t((*$1)[i].enabled);
++			PyObject *padding = PyUnicode_FromString((*$1)[i].padding);
+ 
+ 			PyObject *attrtmp = PyTuple_New(7);
+-			PyObject *overwrite = PyInt_FromLong((*$1)[i].attr.overwrite);
+-			PyObject *subbuf = PyInt_FromSize_t((*$1)[i].attr.subbuf_size);
+-			PyObject *num = PyInt_FromSize_t((*$1)[i].attr.num_subbuf);
+-			PyObject *switchtimer = PyInt_FromSize_t((*$1)[i].attr.switch_timer_interval);
+-			PyObject *readtimer = PyInt_FromSize_t((*$1)[i].attr.read_timer_interval);
+-			PyObject *output = PyInt_FromSize_t((*$1)[i].attr.output);
+-			PyObject *attrpad = PyString_FromString((*$1)[i].attr.padding);
++			PyObject *overwrite = PyLong_FromLong((*$1)[i].attr.overwrite);
++			PyObject *subbuf = PyLong_FromSize_t((*$1)[i].attr.subbuf_size);
++			PyObject *num = PyLong_FromSize_t((*$1)[i].attr.num_subbuf);
++			PyObject *switchtimer = PyLong_FromSize_t((*$1)[i].attr.switch_timer_interval);
++			PyObject *readtimer = PyLong_FromSize_t((*$1)[i].attr.read_timer_interval);
++			PyObject *output = PyLong_FromSize_t((*$1)[i].attr.output);
++			PyObject *attrpad = PyUnicode_FromString((*$1)[i].attr.padding);
+ 
+ 			PyTuple_SetItem(attrtmp, 0, overwrite);
+ 			PyTuple_SetItem(attrtmp, 1, subbuf);
+@@ -346,24 +346,24 @@ enum lttng_event_context_type {
+ 		for(i=0; i<l; i++)
+ 		{
+ 			PyObject *tmp = PyTuple_New(10);
+-			PyObject *name = PyString_FromString((*$1)[i].name);
+-			PyObject *type = PyInt_FromSize_t((*$1)[i].type);
+-			PyObject *logleveltype = PyInt_FromSize_t((*$1)[i].loglevel_type);
+-			PyObject *loglevel = PyInt_FromLong((*$1)[i].loglevel);
+-			PyObject *enabled = PyInt_FromLong((*$1)[i].enabled);
+-			PyObject *pid = PyInt_FromSize_t((*$1)[i].pid);
+-			PyObject *padding = PyString_FromString((*$1)[i].padding);
+-			PyObject *attrpadding = PyString_FromString((*$1)[i].attr.padding);
++			PyObject *name = PyUnicode_FromString((*$1)[i].name);
++			PyObject *type = PyLong_FromSize_t((*$1)[i].type);
++			PyObject *logleveltype = PyLong_FromSize_t((*$1)[i].loglevel_type);
++			PyObject *loglevel = PyLong_FromLong((*$1)[i].loglevel);
++			PyObject *enabled = PyLong_FromLong((*$1)[i].enabled);
++			PyObject *pid = PyLong_FromSize_t((*$1)[i].pid);
++			PyObject *padding = PyUnicode_FromString((*$1)[i].padding);
++			PyObject *attrpadding = PyUnicode_FromString((*$1)[i].attr.padding);
+ 
+ 			PyObject *probe = PyTuple_New(4);
+-			PyObject *addr = PyInt_FromSize_t((*$1)[i].attr.probe.addr);
+-			PyObject *offset = PyInt_FromSize_t((*$1)[i].attr.probe.offset);
+-			PyObject *symbolname = PyString_FromString((*$1)[i].attr.probe.symbol_name);
+-			PyObject *probepad = PyString_FromString((*$1)[i].attr.probe.padding);
++			PyObject *addr = PyLong_FromSize_t((*$1)[i].attr.probe.addr);
++			PyObject *offset = PyLong_FromSize_t((*$1)[i].attr.probe.offset);
++			PyObject *symbolname = PyUnicode_FromString((*$1)[i].attr.probe.symbol_name);
++			PyObject *probepad = PyUnicode_FromString((*$1)[i].attr.probe.padding);
+ 
+ 			PyObject *function = PyTuple_New(2);
+-			PyObject *f_symbolname = PyString_FromString((*$1)[i].attr.ftrace.symbol_name);
+-			PyObject *f_pad = PyString_FromString((*$1)[i].attr.ftrace.padding);
++			PyObject *f_symbolname = PyUnicode_FromString((*$1)[i].attr.ftrace.symbol_name);
++			PyObject *f_pad = PyUnicode_FromString((*$1)[i].attr.ftrace.padding);
+ 
+ 			PyTuple_SetItem(function, 0, f_symbolname);
+ 			PyTuple_SetItem(function, 1, f_pad);

diff --git a/lttng-tools.spec b/lttng-tools.spec
index f277aaf..52bfd1c 100644
--- a/lttng-tools.spec
+++ b/lttng-tools.spec
@@ -9,7 +9,7 @@
 
 Name:           lttng-tools
 Version:        2.15.1
-Release:        3%{?dist}
+Release:        4%{?dist}
 License:        GPL-2.0-only AND LGPL-2.1-only
 URL:            http://lttng.org
 Summary:        LTTng control and utility programs
@@ -19,6 +19,9 @@ Source1:        http://lttng.org/files/lttng-tools/%{name}-%{version}.tar.bz2.as
 Source2:        gpgkey-7F49314A26E0DE78427680E05F1B2A0789F12B11.gpg
 Source3:        lttng-sessiond.service
 Source4:        lttng-tools.sysusers.conf
+# Replace removed Python 2 C API macros with Python 3 equivalents
+# for compatibility with SWIG 4.5.0
+Patch0:         lttng-tools-swig45.patch
 
 BuildRequires:  autoconf
 BuildRequires:  automake
@@ -195,6 +198,9 @@ install -m0644 -D %SOURCE4 %{buildroot}%{_sysusersdir}/lttng-tools.conf
 %endif
 
 %changelog
+* Tue Jul 28 2026 Jitka Plesnikova <jplesnik@redhat.com> - 2.15.1-4
+- Replace removed Python 2 C API macros for SWIG 4.5.0 compatibility
+
 * Wed Jul 22 2026 Python Maint <python-maint@redhat.com> - 2.15.1-3
 - Rebuilt for Python 3.15.0b4 ABI change
 

                 reply	other threads:[~2026-08-06 14:40 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178602722919.1.1684369990869016437.rpms-lttng-tools-69206a468186@fedoraproject.org \
    --to=jplesnik@redhat.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox