Opened 2 years ago

Closed 2 years ago

#53090 closed enhancement (fixed)

py-pyqt* multiple Qt depspecs

Reported by: RJVB (René Bertin) Owned by: mkae (Marko Käning)
Priority: Normal Milestone:
Component: ports Version:
Keywords: haspatch Cc: mkae (Marko Käning), jmroot (Joshua Root), gnw3
Port: py-pyqt4 py-pyqt5

Description

As discussed on the ML, the py-pyqt* ports have multiple dependencies declared on the same Qt port(s), which is redundant.

The attached patches fix this by including the Qt PortGroup only for the subports that actually need it. Since this is after including the Python PG, the depends_lib reset done by that PortGroup is no longer an issue either.

Neither Qt PG redefines the configure mechanism (and the subports define their own anyway), so it's safe to include the Qt PortGroups last.

Attachments (3)

py-pyqt4.diff (1.3 KB) - added by RJVB (René Bertin) 2 years ago.
py-pyqt5.diff (3.2 KB) - added by RJVB (René Bertin) 2 years ago.
Portfile (5.3 KB) - added by RJVB (René Bertin) 2 years ago.
fixed py-pyqt5 Portfile

Download all attachments as: .zip

Change History (18)

Changed 2 years ago by RJVB (René Bertin)

Attachment: py-pyqt4.diff added

comment:1 Changed 2 years ago by RJVB (René Bertin)

NB: a revbump isn't necessary for py*-pyqt4

Changed 2 years ago by RJVB (René Bertin)

Attachment: py-pyqt5.diff added

comment:2 Changed 2 years ago by RJVB (René Bertin)

py*-pyqt5 need a revbump because we forgot that mcalhoun's Qt5 portgroup only declares a dependency on the QtBase component, leading to significant feature-loss and non-reproducible builds (py-pyqt builds wrappers for all installed Qt components).

comment:3 Changed 2 years ago by mkae (Marko Käning)

The attached patch for Qt5 isn't applying anymore.

comment:4 Changed 2 years ago by mkae (Marko Käning)

Port: py-pyqt4, py-pyqt5py-pyqt4 py-pyqt5

comment:5 Changed 2 years ago by mkae (Marko Käning)

In ad1309c/macports-ports:

py-pyqt4: fix dependencies

See: #53090

comment:6 Changed 2 years ago by mkae (Marko Käning)

Owner: set to mkae
Resolution: fixed
Status: newclosed

In f164c1e8/macports-ports:

py-pyqt5: fix dependencies

Closes: #53090

comment:7 in reply to:  3 Changed 2 years ago by RJVB (René Bertin)

Replying to mkae:

The attached patch for Qt5 isn't applying anymore.

So you sorted this out?

comment:8 Changed 2 years ago by RJVB (René Bertin)

Apparently not exactly so; a fixed version is on its way.

comment:9 Changed 2 years ago by gnw3

Cc: gnw3 added

Changed 2 years ago by RJVB (René Bertin)

Attachment: Portfile added

fixed py-pyqt5 Portfile

comment:10 Changed 2 years ago by RJVB (René Bertin)

Marko missed 2 crucial lines in his latest commit causing portindex to fail. Attached is the fixed version if anyone can commit this before he can get around to doing that.

comment:11 Changed 2 years ago by netgamer7 (Roger Ward)

Resolution: fixed
Status: closedreopened

is reopening this appropriate? Please let me know if not, and I won't do this again if something is broken. @rjvb 's fix works for me.

comment:12 Changed 2 years ago by mkae (Marko Käning)

In e8ac4190/macports-ports:

py-pyqt4: fix dependencies

See: #53090

comment:13 Changed 2 years ago by mkae (Marko Käning)

Resolution: fixed
Status: reopenedclosed

In 1a9212c4/macports-ports:

py-pyqt5: fix dependencies

Closes: #53090

comment:14 Changed 2 years ago by eborisch (Eric A. Borisch)

Resolution: fixed
Status: closedreopened

The pt-pyqt5 version in 1a9212c4 appears broken. The qt5 portgroup as well as the name != subport tests got lost... It does not match the attached Portfile from René.

comment:15 Changed 2 years ago by mkae (Marko Käning)

Resolution: fixed
Status: reopenedclosed

In 8582b123/macports-ports:

py-pyqt5: fix previously wrongly applied patch

Finally fixes: #53090

Note: See TracTickets for help on using tickets.