#1060728 tulip: Please port from sip4 to sip6

Package:
tulip
Source:
tulip
Description:
System dedicated to the visualization of huge data sets as graphs
Submitter:
Dmitry Shachnev
Date:
2025-08-19 10:25:03 UTC
Severity:
normal
Tags:
#1060728#5
Date:
2024-01-13 12:47:21 UTC
From:
To:
Dear Maintainer,

Your package currently builds with sip4, which is a deprecated version of SIP.
The modern version of SIP is packaged as sip6.

The documentation on how to use modern SIP is available in sip6-doc package,
or on the SIP website [1]. The recommended approach is using SIP's own
PEP 517-compliant build system (i.e. pyproject.toml and project.py files),
however some projects (e.g. krita upstream) have successfully integrated SIP 6
into their CMake-based build systems.

SIP 4 has an RC bug related to Python 3.12 [2] and it's unlikely to be fixed.

Please port this package to SIP 6, and after that is done, remove build-dep
on python3-sip-dev and runtime dependency on python3-sip.

[1]: https://www.riverbankcomputing.com/static/Docs/sip/
[2]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1059648

#1060728#10
Date:
2024-02-21 12:37:34 UTC
From:
To:
Hi,

I verified that the current upstream version of tulip 5.6.3 verifies
in for sipconfig module[1] which is only part of SIP4.  Thus I opened
an upstream issue asking for porting to SIP6.

Kind regards
    Andreas.

[1] https://salsa.debian.org/science-team/tulip/-/blob/master/cmake/FindSIP.py?ref_type=heads#L7

#1060728#19
Date:
2025-02-13 12:21:34 UTC
From:
To:
tags 1060728 fixed-upstream
thanks

The entire 5.7 branch still uses sipconfig in cmake. Branch 6.0
doesn't, instead it uses:

    SET(SIP_BUILD ${Python_EXECUTABLE} -m sipbuild.tools.build)
#instead of sip-build
    SET(SIP_MODULE_PROG ${Python_EXECUTABLE} -m sipbuild.tools.module)
#instead of sip-module
    SET(SIP_VERSION 6.8.5)
    #check if sip is installed (it is up to the user to install it)
    #use the detected python interpreter to call sip instead of the
command line tool
    #to be sure to use the correct version (command line tool may not
be in the PATH)
    execute_process(
           COMMAND ${SIP_BUILD} --version
           RESULT_VARIABLE EXIT_CODE
           OUTPUT_QUIET
    )

I don't know if there's another pre-sip6 dependency, but considering
that it explicitly sets 6.8 that it is supported. It will probably be
quite a jump.