Opened 4 years ago

Closed 3 years ago

#61006 closed defect (fixed)

py-pyqt5: requires Qt 5.11?

Reported by: chrstphrchvz (Christopher Chavez) Owned by: chrstphrchvz (Christopher Chavez)
Priority: Normal Milestone:
Component: ports Version: 2.6.3
Keywords: Cc: michaelld (Michael Dickens)
Port: py-pyqt5

Description

I am not aware whether PyQt5 has explicitly indicated a minimum required version of Qt5. However as of PyQt5 5.15.0, it no longer builds with Qt 5.9 due to qt59-qtmultimedia not containing qcustomaudiorolecontrol.h; see https://build.macports.org/builders/ports-10.10_x86_64-builder/builds/117532/steps/install-port/logs/stdio. qcustomaudiorolecontrol.h appears to have been introduced in Qt 5.11. Should systems with Qt5 < 5.11 continue using PyQt5 5.14.2?

(I am not using Qt 5.9; merely reporting this on behalf of an IRC user that noticed this issue.)

Change History (7)

comment:1 Changed 4 years ago by chrstphrchvz (Christopher Chavez)

I've opened a PR for how I might attempt to fix this, but it is probably inadequate: https://github.com/macports/macports-ports/pull/8128

comment:2 Changed 4 years ago by chrstphrchvz (Christopher Chavez)

It could merely be that PyQt5 5.15.0 has decided to drop support for Qt 5.9 since long-term support for it ended 2020-05.

comment:3 Changed 4 years ago by kencu (Ken)

I can't find anything saying they dropped Qt5.9.

<https://www.riverbankcomputing.com/static/Docs/PyQt5/installation.html#understanding-the-correct-version-to-install>

With PyQt5 the version number of PyQt5 is tied, to a certain extent, to the version of Qt v5 so that:

  • The major version will always be 5.
  • For a particular minor version n it will build against any version of Qt v5, but will not support any new features introduced in Qt v5.n+1 or later.
  • It will support all the features of supported modules of Qt v5.n or earlier.
  • Support for new modules may be added to PyQt5 at any time. This would result in a change of patch version only.
  • The major and minor versions of the latest release of PyQt5 will be the same as the latest release of Qt v5.
  • The patch versions of PyQt5 and Qt v5 are entirely unrelated to each other.
  • So, for example, PyQt5 v5.1 will build against Qt v5.2 but will not support any new features introduced in Qt v5.2. PyQt5 v5.1 will support all the features of supported modules of Qt v5.0 and those new features introduced in Qt v5.1.

comment:4 Changed 4 years ago by kencu (Ken)

But the Qmultimedia control is newly added <https://www.riverbankcomputing.com/news/PyQt_v5.15.0_Released> so it may not build against an older qt5. Not sure if it is fixable / can be skipped / etc.

comment:5 Changed 4 years ago by michaelld (Michael Dickens)

I'm commenting on the PR, but I'll note here that the PR fixes the issue noted here, but there's still another issue to overcome ... maybe more than 1?

comment:6 Changed 4 years ago by michaelld (Michael Dickens)

Cc: michaelld added

comment:7 Changed 3 years ago by chrstphrchvz (Christopher Chavez)

Owner: set to chrstphrchvz
Resolution: fixed
Status: newclosed

In 6ceed0275625c55fe14feba8bf6f00a423932e7f/macports-ports (master):

py-pyqt5: update to 5.15.1

Pin to 5.14.2 for Qt5 < 5.11
Fixes: #61006

Note: See TracTickets for help on using tickets.