Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-ligo-segments for 
openSUSE:Factory checked in at 2024-12-02 16:59:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-ligo-segments (Old)
 and      /work/SRC/openSUSE:Factory/.python-ligo-segments.new.28523 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-ligo-segments"

Mon Dec  2 16:59:47 2024 rev:6 rq:1227765 version:1.4.0

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-ligo-segments/python-ligo-segments.changes    
    2024-10-18 15:58:28.110338757 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-ligo-segments.new.28523/python-ligo-segments.changes
     2024-12-02 17:00:17.496122033 +0100
@@ -1,0 +2,9 @@
+Mon Dec  2 06:30:32 UTC 2024 - Atri Bhattacharya <badshah...@gmail.com>
+
+- Add python-3.13-compat.patch -- Compatibility for python 3.13,
+  patch taken from upstream merge request
+- Use %pyproject_* macros to build.
+- Disable testing for now as test suite is broken
+  (https://git.ligo.org/lscsoft/ligo-segments/-/issues/22).
+
+-------------------------------------------------------------------

New:
----
  python-3.13-compat.patch

BETA DEBUG BEGIN:
  New:
- Add python-3.13-compat.patch -- Compatibility for python 3.13,
  patch taken from upstream merge request
BETA DEBUG END:

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-ligo-segments.spec ++++++
--- /var/tmp/diff_new_pack.lwjWFa/_old  2024-12-02 17:00:17.984142680 +0100
+++ /var/tmp/diff_new_pack.lwjWFa/_new  2024-12-02 17:00:17.984142680 +0100
@@ -20,7 +20,9 @@
 %ifarch %ix86
 %bcond_with tests
 %else
-%bcond_without tests
+# Disable tests for all other archs since they are broken for Python 3.13 
anyway
+# https://git.ligo.org/lscsoft/ligo-segments/-/issues/22
+%bcond_with tests
 %endif
 
 %define skip_python2 1
@@ -34,8 +36,12 @@
 Source:         
https://files.pythonhosted.org/packages/source/l/ligo-segments/ligo-segments-%{version}.tar.gz
 # PATCH-FIX-UPSTREAM ligo-segments-python312-compat.patch badshah...@gmail.com 
-- Initialize PyTypeObjects with PyVarObject_HEAD_INIT for python 3.12 
compatibility; upstream commit
 Patch0:         ligo-segments-python312-compat.patch
+# PATCH-FIX-UPSTREAM python-3.13-compat.patch badshah...@gmail.com -- 
Compatibility for python 3.13
+Patch1:         python-3.13-compat.patch
 BuildRequires:  %{python_module devel}
+BuildRequires:  %{python_module pip}
 BuildRequires:  %{python_module setuptools}
+BuildRequires:  %{python_module wheel}
 BuildRequires:  fdupes
 BuildRequires:  python-rpm-macros
 # SECTION For tests
@@ -58,10 +64,10 @@
 
 %build
 export CFLAGS="%{optflags}"
-%python_build
+%pyproject_wheel
 
 %install
-%python_install
+%pyproject_install
 %python_expand %fdupes %{buildroot}%{$python_sitearch}
 
 %if %{with tests}
@@ -80,7 +86,7 @@
 %doc README.rst
 %license LICENSE
 %{python_sitearch}/ligo/
-%{python_sitearch}/ligo_segments-%{version}-py%{python_version}.egg-info
+%{python_sitearch}/ligo_segments-%{version}*.*-info
 %if 0%{?suse_version} >= 1550
 %{python_sitearch}/ligo_segments-%{version}-py%{python_version}-nspkg.pth
 %endif

++++++ python-3.13-compat.patch ++++++
>From b58680a5b2fa444ade61928bde1db7d261a05b32 Mon Sep 17 00:00:00 2001
From: Leo Singer <leo.sin...@ligo.org>
Date: Mon, 7 Oct 2024 07:53:58 -0400
Subject: [PATCH] Fix build for Python 3.13

Use PyList_Extend for Python >= 3.13, and provide replacement
using _PyList_Extend for Python < 3.13. In Python 3.13, the
function _PyList_Extend was removed and the public API method
PyList_Extend was added in its place.

Fixes #21.
---
 src/segmentlist.c |   22 ++++++++++++----------
 1 file changed, 12 insertions(+), 10 deletions(-)

Index: ligo-segments-1.4.0/src/segmentlist.c
===================================================================
--- ligo-segments-1.4.0.orig/src/segmentlist.c
+++ ligo-segments-1.4.0/src/segmentlist.c
@@ -240,34 +240,36 @@ static PyObject *make_segment(PyObject *
 }
 
 
-static int pylist_extend(PyListObject *l, PyObject *v)
+#if PY_VERSION_HEX < 0x030D0000
+static int PyList_Extend(PyObject *l, PyObject *v)
 {
        if(!PyList_Check(l)) {
-               PyErr_SetObject(PyExc_TypeError, (PyObject *) l);
+               PyErr_SetObject(PyExc_TypeError, l);
                return -1;
        }
-       PyObject *result = _PyList_Extend(l, v);
+       PyObject *result = _PyList_Extend((PyListObject *) l, v);
        if(!result)
                return -1;
        Py_DECREF(result);
        return 0;
 }
+#endif
 
 
 static PyListObject *segments_SegmentList_New(PyTypeObject *type, PyObject 
*sequence)
 {
-       PyListObject *new;
+       PyObject *new;
        if(!type->tp_alloc) {
                PyErr_SetObject(PyExc_TypeError, (PyObject *) type);
                return NULL;
        }
-       new = (PyListObject *) type->tp_alloc(type, 0);
+       new = (PyObject *) type->tp_alloc(type, 0);
        if(new && sequence)
-               if(pylist_extend(new, sequence)) {
+               if(PyList_Extend(new, sequence) >= 0) {
                        Py_DECREF(new);
                        new = NULL;
                }
-       return new;
+       return (PyListObject *) new;
 }
 
 
@@ -817,7 +819,7 @@ static PyObject *__ior__(PyObject *self,
        /* Faster algorithm when the two lists have very different sizes.
         * OK to not test size functions for error return values */
        if(PySequence_Size(other) > PyList_GET_SIZE(self) / 2) {
-               if(pylist_extend((PyListObject *) self, other))
+               if(PyList_Extend(self, other) >= 0)
                        return NULL;
                return PyObject_CallMethod(self, "coalesce", NULL);
        }
@@ -988,14 +990,14 @@ static PyObject *__xor__(PyObject *self,
                Py_XDECREF(other);
                return NULL;
        }
-       if(pylist_extend((PyListObject *) new, other)) {
+       if(PyList_Extend(new, other) >= 0) {
                Py_DECREF(new);
                Py_DECREF(other);
                return NULL;
        }
        Py_DECREF(other);
 
-       if(PyList_Sort(new) < 0) {
+       if(PyList_Sort(new) >= 0) {
                Py_DECREF(new);
                return NULL;
        }

Reply via email to