12 Commits

Author SHA256 Message Date
ab9ddc540e Accepting request 1314368 from KDE:Qt:PyQt
- Update to 6.14.0
  * sip-sdist now has a --abi-version command line option to be
    used if a value is not specified in pyproject.toml.
  * Bugs in the handling of the default target ABI have been fixed.
  * Fixed a regression in v6.13.1 in the handling of composite
    modules. Resolves #95
- Drop sip-issue95.patch

OBS-URL: https://build.opensuse.org/request/show/1314368
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-sip6?expand=0&rev=25
2025-10-30 16:09:42 +00:00
f881917271 - Update to 6.14.0
* sip-sdist now has a --abi-version command line option to be
    used if a value is not specified in pyproject.toml.
  * Bugs in the handling of the default target ABI have been fixed.
  * Fixed a regression in v6.13.1 in the handling of composite
    modules. Resolves #95
- Drop sip-issue95.patch

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=57
2025-10-29 09:33:00 +00:00
f6a1354813 Accepting request 1311795 from KDE:Qt:PyQt
- Add sip-issue95.patch
  gh#Python-SIP/sip#95
- Declare just BSD-2-Clause in specfile (see v6.10)
- Update to 6.13.1
  * Fixed a regression in v6.13.0 in the handling of mapped types
    for C++ templates with `typedef`ed arguments.
- Revert to 6.12.0: Regression, failing to compile PyQt6-3D
  https://www.riverbankcomputing.com/pipermail/pyqt/2025-October/046338.html
- Update to 6.13.0:
  * `/ExportDerivedLocally/` class annotation
  * `%TypeDerivedCode` directive
  * Support for SBOMs
  * Support for bool-based enums
  * Non-public super-classes not supported
  * Fixed the code generated for operator casts.
  * Fixed the handling of mapped types for C++ templates with `typedef`ed
    arguments.
  * Fixed the test for the `/Movable/` annotation so that it works with
    Python v3.14.
  * A mis-named enum member was corrected.
  * Specifying `%Docstring` as a sub-directive of the `%Module` directive
    generated invalid code.

OBS-URL: https://build.opensuse.org/request/show/1311795
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-sip6?expand=0&rev=24
2025-10-18 12:36:03 +00:00
193b992739 - Add sip-issue95.patch
gh#Python-SIP/sip#95

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=55
2025-10-16 19:21:58 +00:00
8084cbd29d - Update to 6.13.1
* Fixed a regression in v6.13.0 in the handling of mapped types
    for C++ templates with `typedef`ed arguments.

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=54
2025-10-11 17:17:27 +00:00
fa2c5d3f09 - Revert to 6.12.0: Regression, failing to compile PyQt6-3D
https://www.riverbankcomputing.com/pipermail/pyqt/2025-October/046338.html

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=53
2025-10-09 14:13:27 +00:00
373aa4b158 - Update to 6.13.0:
* `/ExportDerivedLocally/` class annotation
  * `%TypeDerivedCode` directive
  * Support for SBOMs
  * Support for bool-based enums
  * Non-public super-classes not supported
  * Fixed the code generated for operator casts.
  * Fixed the handling of mapped types for C++ templates with `typedef`ed
    arguments.
  * Fixed the test for the `/Movable/` annotation so that it works with
    Python v3.14.
  * A mis-named enum member was corrected.
  * Specifying `%Docstring` as a sub-directive of the `%Module` directive
    generated invalid code.

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=52
2025-10-09 11:17:52 +00:00
d5e462ee75 Accepting request 1301381 from KDE:Qt:PyQt
OBS-URL: https://build.opensuse.org/request/show/1301381
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-sip6?expand=0&rev=23
2025-08-27 19:33:46 +00:00
6c73f8c0f1 - Convert to libalternatives on SLE-16-based and newer systems
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=50
2025-08-26 08:23:30 +00:00
abccc080cd Accepting request 1284341 from KDE:Qt:PyQt
- Update to 6.12.0
  * Support was added for C++11 enum base types. At the moment this
    is limited to base types no larger than ints. Prior to this
    support, all enums were assumed to be int which breaks on
    big-endian systems. Resolves #75
  * Fixed a regression in v6.11.0 affecting class names as template
    arguments. Resolves #77
- Release v6.11.1
  * The PEP 517 build_wheel() hook has been fixed after it
    regressed in v6.11.0. Resolves #73
  * The handling of calls where self is passed as an argument in
    ABI v13 was fixed. Resolves #74
- Release 6.11.0
  * Added the /Movable/ mapped type annotation. When the /Movable/
    annotation is specified for a mapped type, values of that type
    are wrapped in calls to std::move() when passing them as
    arguments to a C++ callable. In addition the /Transfer/
    argument annotation is automatically applied. Resolves #60
  * Support for template arguments in super-classes. It is now
    possible to invoke a class template as a super-class in a class
    template. Resolves #12
  * Determining the version of the limited API to use. The version
    of the limited API to use is now taken from the requires-python
    field of the metadata in a project's pyproject.toml file. If
    this is not specified then (as with previous versions of SIP)
    the version of the oldest supported version of Python is used.
    Resolves #58
  * %Docstring support for namespaces. The %Docstring directive can
    now be specified for C++ namespaces. Resolves #11
  * Support for operator~() in the global scope. operator~() can
    now be specified in the global scope. Resolves #9
  * Use consistent timestamps when creating wheel files. The value
    of the environment variable SOURCE_DATE_EPOCH, if defined, will
    be used as the timestamp for all files included in a wheel.
    This ensures wheel building is repeatable. Pull request #70
  * Bindings support for PEP 639. The project section of
    pyproject.toml files may now use license to specify a valid
    SPDX license expression. license-files, if specified, is a list
    of glob patterns describing the files containing licensing
    information. The old style of license is deprecated. The
    metadata format of the generated PKG-INFO file of an sdist will
    normally be v2.4. If the deprecated form of license is used in
    pyproject.toml then it will be v2.2. License files will be
    installed in the licenses sub-directory of the generated
    .dist-info directory of a wheel. packaging v24.2 is now
    required. Resolves #69
  * Normalised wheel names. The names of wheel files (both those
    generated by sip-wheel and indirectly from the sdists created
    by sip-module) now conform to current PyPA standards. Resolves
    #68
  * pyproject.toml now conforms to PEP 639 The licensing
    information in SIP's pyproject.toml now conforms to PEP 639.
    This means that the minimum setuptools version is v77.
  ## Bug fixes
  * The handling of unknown %Timeline tags in %If directives has
    been fixed. An unknown tag is assumed to refer to a later
    version than all the known tags. Therefore (unknown -) will
    always be false, and (- unknown) will always be true.
  * Generated code will not contain digraphs. This usually affects
    C++ extensions being built with the default setuptools builder.
  * Long deprecation messages are now handled correctly. Pull
    request #67
- Update to 6.10.0
  * Introspection of the sip module ABI version
  * SIP_ABI_VERSION has been added as a module attribute of the sip
    module. This is an integer that represents the ABI version that
    the module implements as a 3 part hexadecimal number.
  * This has been implemented in ABIs v12.17 and v13.10. Resolves
    #62
  * sip-module support for older ABI versions. The ability of
    sip-module to generate sdists for older ABI versions has been
    restored. The oldest that can be generated are v12.9 and v13.1
    which are the oldest non-deprecated versions. The documentation
    now contains brief histories of these versions. Resolves #61
  * Default ABI version. The default minor ABI version to use is
    now the latest minor version for a particular major version
    (rather than 0 as it was previously). Resolves #63
  * Specify the ABI version on the command line. The --abi-version
    command line option has been added to sip-build, sip-install
    and sip-wheel to specify the ABI version of the sip module to
    generate code for. Resolves #64
  * Added the %MinimumABIVersion directive. The %MinimumABIVersion
    directive is used to specify the minimum sip module ABI to
    target in order to ensure that all calls to the public API from
    handwritten code are available. A consequence of this change is
    that passing string values to the /Deprecated/ annotation no
    longer requires an ABI version that supports them to be
    targeted. If the targeted ABI version does not support them
    they are simply ignored. Resolves #65
  * Escaping special characters in string annotations. The value of
    a string annotation uses the ; and : characters to allow
    platform- and feature-specific values to be defined. These
    special characters can now be escaped using a leading \\. This
    capability has now been documented. Resolves #59
  ## Bug fixes
  * The license designator in setup.py for the latest versions of
    the sip module are now correctly specified as BSD-2-Clause.
  * The code generation has been fixed for classes created by
    instantiating mapped type templates using a typedef with the
    /NoTypeName/ annotation. Resolves #66

OBS-URL: https://build.opensuse.org/request/show/1284341
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-sip6?expand=0&rev=22
2025-06-18 20:28:31 +00:00
9a36e6b5b2 - Update to 6.12.0
* Support was added for C++11 enum base types. At the moment this
    is limited to base types no larger than ints. Prior to this
    support, all enums were assumed to be int which breaks on
    big-endian systems. Resolves #75
  * Fixed a regression in v6.11.0 affecting class names as template
    arguments. Resolves #77
- Release v6.11.1
  * The PEP 517 build_wheel() hook has been fixed after it
    regressed in v6.11.0. Resolves #73
  * The handling of calls where self is passed as an argument in
    ABI v13 was fixed. Resolves #74
- Release 6.11.0
  * Added the /Movable/ mapped type annotation. When the /Movable/
    annotation is specified for a mapped type, values of that type
    are wrapped in calls to std::move() when passing them as
    arguments to a C++ callable. In addition the /Transfer/
    argument annotation is automatically applied. Resolves #60
  * Support for template arguments in super-classes. It is now
    possible to invoke a class template as a super-class in a class
    template. Resolves #12
  * Determining the version of the limited API to use. The version
    of the limited API to use is now taken from the requires-python
    field of the metadata in a project's pyproject.toml file. If
    this is not specified then (as with previous versions of SIP)
    the version of the oldest supported version of Python is used.
    Resolves #58
  * %Docstring support for namespaces. The %Docstring directive can
    now be specified for C++ namespaces. Resolves #11
  * Support for operator~() in the global scope. operator~() can

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=48
2025-06-09 17:21:13 +00:00
46c519dcb5 - Update to 6.10.0
* Introspection of the sip module ABI version
  * SIP_ABI_VERSION has been added as a module attribute of the sip
    module. This is an integer that represents the ABI version that
    the module implements as a 3 part hexadecimal number.
  * This has been implemented in ABIs v12.17 and v13.10. Resolves
    #62
  * sip-module support for older ABI versions. The ability of
    sip-module to generate sdists for older ABI versions has been
    restored. The oldest that can be generated are v12.9 and v13.1
    which are the oldest non-deprecated versions. The documentation
    now contains brief histories of these versions. Resolves #61
  * Default ABI version. The default minor ABI version to use is
    now the latest minor version for a particular major version
    (rather than 0 as it was previously). Resolves #63
  * Specify the ABI version on the command line. The --abi-version
    command line option has been added to sip-build, sip-install
    and sip-wheel to specify the ABI version of the sip module to
    generate code for. Resolves #64
  * Added the %MinimumABIVersion directive. The %MinimumABIVersion
    directive is used to specify the minimum sip module ABI to
    target in order to ensure that all calls to the public API from
    handwritten code are available. A consequence of this change is
    that passing string values to the /Deprecated/ annotation no
    longer requires an ABI version that supports them to be
    targeted. If the targeted ABI version does not support them
    they are simply ignored. Resolves #65
  * Escaping special characters in string annotations. The value of
    a string annotation uses the ; and : characters to allow
    platform- and feature-specific values to be defined. These

OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:PyQt/python-sip6?expand=0&rev=47
2025-04-03 18:18:36 +00:00
4 changed files with 203 additions and 21 deletions

View File

@@ -1,3 +1,165 @@
-------------------------------------------------------------------
Wed Oct 29 09:27:08 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Update to 6.14.0
* sip-sdist now has a --abi-version command line option to be
used if a value is not specified in pyproject.toml.
* Bugs in the handling of the default target ABI have been fixed.
* Fixed a regression in v6.13.1 in the handling of composite
modules. Resolves #95
- Drop sip-issue95.patch
-------------------------------------------------------------------
Thu Oct 16 19:15:45 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Add sip-issue95.patch
gh#Python-SIP/sip#95
- Declare just BSD-2-Clause in specfile (see v6.10)
-------------------------------------------------------------------
Sat Oct 11 17:15:59 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Update to 6.13.1
* Fixed a regression in v6.13.0 in the handling of mapped types
for C++ templates with `typedef`ed arguments.
-------------------------------------------------------------------
Thu Oct 9 14:11:43 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Revert to 6.12.0: Regression, failing to compile PyQt6-3D
https://www.riverbankcomputing.com/pipermail/pyqt/2025-October/046338.html
-------------------------------------------------------------------
Thu Oct 9 04:24:13 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 6.13.0:
* `/ExportDerivedLocally/` class annotation
* `%TypeDerivedCode` directive
* Support for SBOMs
* Support for bool-based enums
* Non-public super-classes not supported
* Fixed the code generated for operator casts.
* Fixed the handling of mapped types for C++ templates with `typedef`ed
arguments.
* Fixed the test for the `/Movable/` annotation so that it works with
Python v3.14.
* A mis-named enum member was corrected.
* Specifying `%Docstring` as a sub-directive of the `%Module` directive
generated invalid code.
-------------------------------------------------------------------
Mon Aug 25 12:21:14 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to libalternatives on SLE-16-based and newer systems
-------------------------------------------------------------------
Mon Jun 9 17:07:52 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Update to 6.12.0
* Support was added for C++11 enum base types. At the moment this
is limited to base types no larger than ints. Prior to this
support, all enums were assumed to be int which breaks on
big-endian systems. Resolves #75
* Fixed a regression in v6.11.0 affecting class names as template
arguments. Resolves #77
- Release v6.11.1
* The PEP 517 build_wheel() hook has been fixed after it
regressed in v6.11.0. Resolves #73
* The handling of calls where self is passed as an argument in
ABI v13 was fixed. Resolves #74
- Release 6.11.0
* Added the /Movable/ mapped type annotation. When the /Movable/
annotation is specified for a mapped type, values of that type
are wrapped in calls to std::move() when passing them as
arguments to a C++ callable. In addition the /Transfer/
argument annotation is automatically applied. Resolves #60
* Support for template arguments in super-classes. It is now
possible to invoke a class template as a super-class in a class
template. Resolves #12
* Determining the version of the limited API to use. The version
of the limited API to use is now taken from the requires-python
field of the metadata in a project's pyproject.toml file. If
this is not specified then (as with previous versions of SIP)
the version of the oldest supported version of Python is used.
Resolves #58
* %Docstring support for namespaces. The %Docstring directive can
now be specified for C++ namespaces. Resolves #11
* Support for operator~() in the global scope. operator~() can
now be specified in the global scope. Resolves #9
* Use consistent timestamps when creating wheel files. The value
of the environment variable SOURCE_DATE_EPOCH, if defined, will
be used as the timestamp for all files included in a wheel.
This ensures wheel building is repeatable. Pull request #70
* Bindings support for PEP 639. The project section of
pyproject.toml files may now use license to specify a valid
SPDX license expression. license-files, if specified, is a list
of glob patterns describing the files containing licensing
information. The old style of license is deprecated. The
metadata format of the generated PKG-INFO file of an sdist will
normally be v2.4. If the deprecated form of license is used in
pyproject.toml then it will be v2.2. License files will be
installed in the licenses sub-directory of the generated
.dist-info directory of a wheel. packaging v24.2 is now
required. Resolves #69
* Normalised wheel names. The names of wheel files (both those
generated by sip-wheel and indirectly from the sdists created
by sip-module) now conform to current PyPA standards. Resolves
#68
* pyproject.toml now conforms to PEP 639 The licensing
information in SIP's pyproject.toml now conforms to PEP 639.
This means that the minimum setuptools version is v77.
## Bug fixes
* The handling of unknown %Timeline tags in %If directives has
been fixed. An unknown tag is assumed to refer to a later
version than all the known tags. Therefore (unknown -) will
always be false, and (- unknown) will always be true.
* Generated code will not contain digraphs. This usually affects
C++ extensions being built with the default setuptools builder.
* Long deprecation messages are now handled correctly. Pull
request #67
-------------------------------------------------------------------
Thu Apr 3 16:56:27 UTC 2025 - Ben Greiner <code@bnavigator.de>
- Update to 6.10.0
* Introspection of the sip module ABI version
* SIP_ABI_VERSION has been added as a module attribute of the sip
module. This is an integer that represents the ABI version that
the module implements as a 3 part hexadecimal number.
* This has been implemented in ABIs v12.17 and v13.10. Resolves
#62
* sip-module support for older ABI versions. The ability of
sip-module to generate sdists for older ABI versions has been
restored. The oldest that can be generated are v12.9 and v13.1
which are the oldest non-deprecated versions. The documentation
now contains brief histories of these versions. Resolves #61
* Default ABI version. The default minor ABI version to use is
now the latest minor version for a particular major version
(rather than 0 as it was previously). Resolves #63
* Specify the ABI version on the command line. The --abi-version
command line option has been added to sip-build, sip-install
and sip-wheel to specify the ABI version of the sip module to
generate code for. Resolves #64
* Added the %MinimumABIVersion directive. The %MinimumABIVersion
directive is used to specify the minimum sip module ABI to
target in order to ensure that all calls to the public API from
handwritten code are available. A consequence of this change is
that passing string values to the /Deprecated/ annotation no
longer requires an ABI version that supports them to be
targeted. If the targeted ABI version does not support them
they are simply ignored. Resolves #65
* Escaping special characters in string annotations. The value of
a string annotation uses the ; and : characters to allow
platform- and feature-specific values to be defined. These
special characters can now be escaped using a leading \\. This
capability has now been documented. Resolves #59
## Bug fixes
* The license designator in setup.py for the latest versions of
the sip module are now correctly specified as BSD-2-Clause.
* The code generation has been fixed for classes created by
instantiating mapped type templates using a typedef with the
/NoTypeName/ annotation. Resolves #66
-------------------------------------------------------------------
Wed Jan 8 15:41:11 UTC 2025 - Ben Greiner <code@bnavigator.de>

View File

@@ -1,7 +1,7 @@
#
# spec file for package python-sip6
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,31 +17,39 @@
%{?sle15_python_module_pythons}
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
Name: python-sip6
Version: 6.9.1
Version: 6.14.0
Release: 0
Summary: A Python bindings generator for C/C++ libraries
License: BSD-2-Clause AND BSD-3-Clause
License: BSD-2-Clause
Group: Development/Libraries/Python
URL: https://github.com/Python-SIP/sip
Source0: https://github.com/Python-SIP/sip/archive/refs/tags/%{version}.tar.gz#/sip-%{version}-gh.tar.gz
BuildRequires: %{python_module base >= 3.9}
BuildRequires: %{python_module packaging}
BuildRequires: %{python_module packaging >= 24.2}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools >= 69.5}
# Technically >= 8, but we make it compatible in prep.
BuildRequires: %{python_module setuptools_scm >= 7}
BuildRequires: %{python_module tomli if %python-base < 3.11}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildArch: noarch
%if 0%{?suse_version} < 1600
BuildRequires: %{python_module setuptools >= 75.8.1}
BuildRequires: %{python_module setuptools_scm >= 7}
%else
BuildRequires: %{python_module setuptools >= 77}
BuildRequires: %{python_module setuptools_scm >= 8}
%endif
# SECTION test
BuildRequires: %{python_module testsuite}
BuildRequires: %{python_module devel}
BuildRequires: %{python_module testsuite}
BuildRequires: c++_compiler
# /SECTION
BuildArch: noarch
%python_subpackages
%description
@@ -56,11 +64,9 @@ Summary: A Python bindings generator for C/C++ libraries
Group: Development/Libraries/Python
Requires: c++_compiler
Requires: python-base >= 3.9
Requires: python-packaging
Requires: python-setuptools >= 69.5
Requires: python-packaging >= 24.2
Requires: python-setuptools >= 75.8.1
Requires: (python-tomli if python-base < 3.11)
Requires(post): update-alternatives
Requires(postun): update-alternatives
Conflicts: python-sip-impl
# boo#1190441: remove erroneously created non-devel python3X-sip metapackages.
# In order not to remove SIPv4 and possible future packages, we have to explicitly
@@ -68,6 +74,13 @@ Conflicts: python-sip-impl
Obsoletes: python-sip = 6.1.1
Provides: python-sip-devel = %{version}-%{release}
Provides: python-sip-impl = %{version}-%{release}
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
%description devel
SIP is a collection of tools that makes it very easy to create Python
@@ -81,9 +94,12 @@ own sip bindings.
%prep
%autosetup -p1 -n sip-%{version}
# Make it work with setuptools_scm < 8
%if 0%{suse_version} < 1600
sed -i s/version_file/write_to/ pyproject.toml
# Make it work with setuptools < 77 and setuptools_scm < 8
%if 0%{?suse_version} < 1600
sed -i pyproject.toml \
-e 's/version_file/write_to/' \
-e 's/license = .*/license = { file = "LICENSE" }/' \
-e '/license-files/d'
%endif
%build
@@ -97,11 +113,15 @@ sed -i s/version_file/write_to/ pyproject.toml
%python_clone -a %{buildroot}%{_bindir}/sip-module
%python_clone -a %{buildroot}%{_bindir}/sip-sdist
%python_clone -a %{buildroot}%{_bindir}/sip-wheel
%python_group_libalternatives sip-build sip-distinfo sip-install sip-module sip-sdist sip-wheel
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
%pyunittest discover -v test
%pre devel
%python_libalternatives_reset_alternative sip-build
%post devel
%python_install_alternative sip-build sip-distinfo sip-install sip-module sip-sdist sip-wheel
@@ -109,7 +129,7 @@ sed -i s/version_file/write_to/ pyproject.toml
%python_uninstall_alternative sip-build
%files %{python_files devel}
%license LICENSE*
%license LICENSE
%python_alternative %{_bindir}/sip-build
%python_alternative %{_bindir}/sip-distinfo
%python_alternative %{_bindir}/sip-install

3
sip-6.14.0-gh.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:040ca52f1a9f264c9856dd3172dbaccc6f562de5e0a251917bfe881f46a7468d
size 2461525

Binary file not shown.