Hi Eli! On Wed, Oct 14, 2020 at 11:52:44AM -0400, Eli Schwartz wrote: > > This requires changes in many packages simultaneously: at least > > pyqt5, pyqt5charts, pyqt5webengine, qscintilla2, calibre, > > python-poppler-qt5, veusz, krita and qgis. > > > > I am planning to land this change early in Groovy+1 cycle. > > Just for the record, this is untrue. > > Arch Linux has built python3 PyQt5 using Sip 5 via /usr/bin/sip-build, > since Dec 13 18:01:34 2019 while continuing to build python2 PyQt5 using > Sip 4 via python2 configure.py > > This worked well enough that even though on Nov 24 20:33:38 2019 I began > shipping multiple repository packages for calibre -- one "calibre" > package built with python2 and one "calibre-python3" package built with > python3 -- both using Sip 4, they worked fine. The calibre-python3 > package was, as expected, buggy due to being beta quality, but it never > failed due to pyqt5/sip itself. > > There are still various packages in our distro archives building with > Sip 4 but successfully using the pyqt5 bindings built using Sip 5. > > Old versions of some of those packages (at least krita, qgis) did need > patches to change the location of the sip dir. > qscintilla2 did need to be rebuilt with no changes, then a week later > the 2.11.4 update moved to sip-build. > > It's plainly possible to mix them at least a little. From memory, we did > not even need to rebuild (most of) the packages.
Most packages I mentioned will need a rebuild and a patch to use a different location for PyQt5 *.sip files. You can see this in Debian: after I uploaded new PyQt5 (built with SIP 5) to unstable, immediately some packages started to fail to build from source: - https://bugs.debian.org/971173 (krita) - https://bugs.debian.org/971217 (python-poppler-qt5) - https://bugs.debian.org/971172 (veusz) And packages that were not rebuilt got runtime errors: - https://bugs.debian.org/971538 (qgis) - https://bugs.debian.org/970921 (calibre) So what I said is true: this requires simultaneous changes in many packages, even if it's just a rebuild for some of them. > YMMV, but it should definitely be feasible to update pyqt5/sip5, test > everything that build-depends on them, and leave many of them alone if > they're not ready to move. Tomorrow is final freeze, so it is really bad timing for this. > not great, but workable: > > - Revert code in calibre to make it build with Sip 4 again, and package > calibre 5.2.0: > > https://github.com/kovidgoyal/calibre/commit/7a4b3f61ff24f8c39c8d5cf86c54da9de9267025 > > I suspect that last option would be the easiest resolution. It should work. That would be the easiest option, yes. I don't volunteer to work on this (no time, sorry), but I can sponsor an upload if someone gets a feature freeze exception for this and prepares/tests the upload. -- Dmitry Shachnev -- ubuntu-devel mailing list ubuntu-devel@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-devel