[neon/forks/sip6/Neon/release] /: New upstream version 6.11.1

Dmitry Shachnev null at kde.org
Sun Aug 17 07:48:50 BST 2025


Git commit 1911fe33dc38f6a477cfb839217ac2bbf859e65b by Dmitry Shachnev.
Committed on 25/05/2025 at 07:16.
Pushed by carlosdem into branch 'Neon/release'.

New upstream version 6.11.1

M  +3    -3    .git_archival.txt
M  +1    -1    docs/conf.py
M  +9    -0    docs/releases.md
M  +2    -2    sipbuild/builder.py
M  +1    -1    sipbuild/module/source/13/10/sip.h.in
M  +1    -1    sipbuild/module/source/13/10/sip_core.c
M  +3    -3    sipbuild/tools/sdist.py
M  +3    -3    sipbuild/tools/wheel.py
A  +3    -0    test/py_properties/__init__.py
A  +37   -0    test/py_properties/py_properties_module.sip
A  +22   -0    test/py_properties/test_py_properties.py

https://invent.kde.org/neon/forks/sip6/-/commit/1911fe33dc38f6a477cfb839217ac2bbf859e65b

diff --git a/.git_archival.txt b/.git_archival.txt
index 3f3a819..7556300 100644
--- a/.git_archival.txt
+++ b/.git_archival.txt
@@ -1,3 +1,3 @@
-node: b066f3f87f6e969b972f049cc752e09b3f609811
-node-date: 2025-05-16T12:57:02+01:00
-describe-name: 6.11.0
+node: e9b5cb9242fb39e1edf3bcd9b2dc09d359318775
+node-date: 2025-05-23T12:36:52+01:00
+describe-name: 6.11.1
diff --git a/docs/conf.py b/docs/conf.py
index b902c26..37c0ae7 100644
--- a/docs/conf.py
+++ b/docs/conf.py
@@ -13,7 +13,7 @@ project = 'sip'
 copyright = '{0} Phil Thompson <phil at riverbankcomputing.com>'.format(
         date.today().year)
 author = 'Phil Thompson'
-version = 'v6.11.0'
+version = 'v6.11.1'
 
 
 # -- General configuration ---------------------------------------------------
diff --git a/docs/releases.md b/docs/releases.md
index b0fd1e3..36bc2e4 100644
--- a/docs/releases.md
+++ b/docs/releases.md
@@ -1,5 +1,14 @@
 # Release Notes
 
+## v6.11.1
+
+### Bug fixes
+
+- The PEP 517 `build_wheel()` hook has been fixed after it regressed in
+  v6.11.0.  Resolves [#73](https://github.com/Python-SIP/sip/issues/73)
+- The handling of calls where `self` is passed as an argument in ABI v13 was
+  fixed.  Resolves [#74](https://github.com/Python-SIP/sip/issues/74)
+
 
 ## v6.11.0
 
diff --git a/sipbuild/builder.py b/sipbuild/builder.py
index 171d057..4f6ad30 100644
--- a/sipbuild/builder.py
+++ b/sipbuild/builder.py
@@ -169,8 +169,8 @@ class Builder(AbstractBuilder):
             wheel_file.append(project.build_tag)
 
         wheel_file.append(wheel_tag)
-        wheel_path = os.path.abspath(
-                os.path.join(wheel_directory, '-'.join(wheel_file) + '.whl'))
+        wheel_file = '-'.join(wheel_file) + '.whl'
+        wheel_path = os.path.abspath(os.path.join(wheel_directory, wheel_file))
 
         # Create the .whl file.
         saved_cwd = os.getcwd()
diff --git a/sipbuild/module/source/13/10/sip.h.in b/sipbuild/module/source/13/10/sip.h.in
index 75f8f52..25faeb6 100644
--- a/sipbuild/module/source/13/10/sip.h.in
+++ b/sipbuild/module/source/13/10/sip.h.in
@@ -36,7 +36,7 @@ extern "C" {
 /* The version of the ABI. */
 #define SIP_ABI_MAJOR_VERSION       13
 #define SIP_ABI_MINOR_VERSION       10
-#define SIP_MODULE_PATCH_VERSION    1
+#define SIP_MODULE_PATCH_VERSION    2
 
 
 /*
diff --git a/sipbuild/module/source/13/10/sip_core.c b/sipbuild/module/source/13/10/sip_core.c
index ba72f7c..a3ce01e 100644
--- a/sipbuild/module/source/13/10/sip_core.c
+++ b/sipbuild/module/source/13/10/sip_core.c
@@ -3549,7 +3549,7 @@ static int parsePass1(PyObject **parseErrp, PyObject **selfp, int *selfargp,
             td = va_arg(va, sipTypeDef *);
             va_arg(va, void **);
 
-            if (PyObject_TypeCheck(self, (PyTypeObject *)&sipSimpleWrapper_Type))
+            if (self != NULL && PyObject_TypeCheck(self, (PyTypeObject *)&sipSimpleWrapper_Type))
             {
                 /* The call was self.method(...). */
                 *selfp = self;
diff --git a/sipbuild/tools/sdist.py b/sipbuild/tools/sdist.py
index 5587a98..1a72cf5 100644
--- a/sipbuild/tools/sdist.py
+++ b/sipbuild/tools/sdist.py
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: BSD-2-Clause
 
-# Copyright (c) 2024 Phil Thompson <phil at riverbankcomputing.com>
+# Copyright (c) 2025 Phil Thompson <phil at riverbankcomputing.com>
 
 
 from ..abstract_project import AbstractProject
@@ -13,8 +13,8 @@ def main():
     try:
         project = AbstractProject.bootstrap('sdist',
                 "Build an sdist for the project.")
-        project.build_sdist('.')
-        project.progress("The sdist has been built.")
+        sdist_file = project.build_sdist('.')
+        project.progress(f"{sdist_file} has been built.")
     except Exception as e:
         handle_exception(e)
 
diff --git a/sipbuild/tools/wheel.py b/sipbuild/tools/wheel.py
index 36fd7f9..f23bf8d 100644
--- a/sipbuild/tools/wheel.py
+++ b/sipbuild/tools/wheel.py
@@ -1,6 +1,6 @@
 # SPDX-License-Identifier: BSD-2-Clause
 
-# Copyright (c) 2024 Phil Thompson <phil at riverbankcomputing.com>
+# Copyright (c) 2025 Phil Thompson <phil at riverbankcomputing.com>
 
 
 from ..abstract_project import AbstractProject
@@ -13,8 +13,8 @@ def main():
     try:
         project = AbstractProject.bootstrap('wheel',
                 "Build a wheel for the project.")
-        project.build_wheel('.')
-        project.progress("The wheel has been built.")
+        wheel_file = project.build_wheel('.')
+        project.progress(f"{wheel_file} has been built.")
     except Exception as e:
         handle_exception(e)
 
diff --git a/test/py_properties/__init__.py b/test/py_properties/__init__.py
new file mode 100644
index 0000000..8827df8
--- /dev/null
+++ b/test/py_properties/__init__.py
@@ -0,0 +1,3 @@
+# SPDX-License-Identifier: BSD-2-Clause
+
+# Copyright (c) 2024 Phil Thompson <phil at riverbankcomputing.com>
diff --git a/test/py_properties/py_properties_module.sip b/test/py_properties/py_properties_module.sip
new file mode 100644
index 0000000..2a5b527
--- /dev/null
+++ b/test/py_properties/py_properties_module.sip
@@ -0,0 +1,37 @@
+// The SIP implementation of the py_properties_module test module.
+
+
+%Module(name=py_properties_module)
+
+
+%ModuleHeaderCode
+class AnObject
+{
+public:
+    AnObject(int int_val) : _int_val(int_val) {}
+
+    int get_int_val() const
+    {
+        return _int_val;
+    }
+
+    void set_int_val(int int_val)
+    {
+        _int_val = int_val;
+    }
+
+private:
+    int _int_val;
+};
+%End
+
+
+class AnObject
+{
+public:
+    AnObject(int int_val);
+
+    int get_int_val() const;
+    void set_int_val(int int_val);
+    %Property(name=int_val, get=get_int_val, set=set_int_val)
+};
diff --git a/test/py_properties/test_py_properties.py b/test/py_properties/test_py_properties.py
new file mode 100644
index 0000000..1776be4
--- /dev/null
+++ b/test/py_properties/test_py_properties.py
@@ -0,0 +1,22 @@
+# SPDX-License-Identifier: BSD-2-Clause
+
+# Copyright (c) 2025 Phil Thompson <phil at riverbankcomputing.com>
+
+
+from utils import SIPTestCase
+
+
+class PyPropertiesTestCase(SIPTestCase):
+    """ Test the support for the %Property directive.  (See issue/74.)
+    """
+
+    def test_PyProperties(self):
+        """ Test the support for %Property. """
+
+        from py_properties_module import AnObject
+
+        ao = AnObject(3)
+        self.assertEqual(ao.int_val, 3)
+
+        ao.int_val = 100
+        self.assertEqual(ao.int_val, 100)



More information about the Neon-commits mailing list