Opened 2 years ago

Last modified 15 months ago

#64126 assigned defect

qt ports: Please use known_fail yes in ports that are known to fail

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: MarcusCalhoun-Lopez (Marcus Calhoun-Lopez)
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: Cc: chrstphrchvz (Christopher Chavez), mascguy (Christopher Nielsen)
Port: phantomjs-qt qt5 qt55 qt56 qt57 qt58 qt59

Description (last modified by ryandesign (Ryan Carsten Schmidt))

In [b910627a24dd483d5154676d41069654e70a8df0/macports-ports] a typo was corrected in a comment in the ports phantomjs-qt, qt5, qt53, qt55, qt56, qt57, qt58, qt59, qt511, qt513. I would not have expected this to trigger any builds, but it did trigger 165 builds for subports of phantomjs-qt, qt5, qt55, qt56, qt57, qt58, qt59 on the macOS 12 arm64 builder, which all failed, taking 3 hours 43 minutes to do so. And our Apple Silicon build machine is very fast compared to our Intel build machines, so if the same failure affects Intel builds it would waste an even greater amount of build time.

If you can fix the build failures (and there are other tickets about those) that's great, but until then please use known_fail yes within a portindex-sanctioned conditional (e.g. based on os.platform, os.major, and/or os.arch) so that the build system can spend its limited time on more fruitful endeavors.

There are already some occurrences of known_fail yes in these ports so that just needs to be expanded. I don't know if it's a general failure on Monterey or only on Monterey on Apple Silicon. Other tickets may have more info on what conditional to use.

Change History (15)

comment:1 Changed 2 years ago by mascguy (Christopher Nielsen)

Cc: mascguy added

comment:2 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Description: modified (diff)

comment:3 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

That commit also triggered 30-odd ports to be built on 10.12 x86_64 which are failing too: https://build.macports.org/builders/ports-10.12_x86_64-watcher/builds/51477

And the problem doesn't only occur when a change is committed to these ports. It also occurs any time a change is committed to any port that eventually depends on these ports. (edit: we do cache build failures so that shouldn't be the case)

You can see from e.g. https://ports.macports.org/port/qt55-qtbase-docs/builds/ how we keep failing to build these ports over and over.

There have been complaints from MacPorts users that ports are taking to long to build on their systems, which we must translate to: we didn't have the binaries available quickly enough, which is in part because we were spending time attempting builds that were already destined to fail. There are hardware upgrades to the build system that we could contemplate, but whatever build server resources we have I think it's important that we don't waste them.

Last edited 2 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

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

It was suggested to not allow older Qt to build on newer macOS: ticket:61031#comment:2.

It seems subports for a Qt version should determine the supported architectures from qt5 1.0 portgroup (directly or through the qmake5 1.0 PortGroup), unless they are noarch and so should fail because qtbase can't be installed. Is it still too much work for the buildbot to determine that it should not build noarch dependents of a qtbase port?

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

phantom-qt-qtbase (which is based on Qt 5.5 and may never support arm64) has supported_archs i386 x86_64 by default from the qt5 1.0 portgroup. So I do not understand why building it was attempted in https://build.macports.org/builders/ports-12_arm64-builder/builds/31094/steps/install-dependencies/logs/stdio.

comment:6 in reply to:  5 ; Changed 2 years ago by chrstphrchvz (Christopher Chavez)

Replying to chrstphrchvz:

I do not understand why building phantomjs-qt-qtbase was attempted in https://build.macports.org/builders/ports-12_arm64-builder/builds/31094/steps/install-dependencies/logs/stdio.

Apparently it is trying to build it for x86_64 (presumably for running under Rosetta 2).

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

I find that phantomjs-qt-qtbase builds fine on macOS 12 for (actual) x86_64, Xcode 13.2 beta 2. Not sure about its dependents.

comment:8 Changed 2 years ago by mascguy (Christopher Nielsen)

Just cancelled the builds for qt5 and friends on the 10.13 builder.

Any progress on adding known_fail where appropriate?

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

See https://github.com/macports/macports-ports/pull/13278 for phantomjs-qt-qtwebkit fix. All other phantomjs-qt subports appear to build and install fine.

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

A number of qtbase ports appear to fail for the reason described in #63154.

comment:11 in reply to:  6 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to chrstphrchvz:

Replying to chrstphrchvz:

I do not understand why building phantomjs-qt-qtbase was attempted in https://build.macports.org/builders/ports-12_arm64-builder/builds/31094/steps/install-dependencies/logs/stdio.

Apparently it is trying to build it for x86_64 (presumably for running under Rosetta 2).

That should not occur...

comment:12 Changed 19 months ago by chrstphrchvz (Christopher Chavez)

In 67cf76cfab9cb38d87597ba8fde4067258de40b6/macports-ports (master):

qt(55|56|57)-qtconnectivity: set known_fail

See: #64126
See: #65544

[skip ci]

comment:13 Changed 19 months ago by mascguy (Christopher Nielsen)

Priority: HighNormal

comment:14 Changed 19 months ago by chrstphrchvz (Christopher Chavez)

In dd7ae97877fe78daac0966894e9cb28cddfebcee/macports-ports (master):

(phantomjs-qt|qt55|qt56)-qtwebkit: known_fail on 10.7

See: #64126
See: #64172

[skip ci]

comment:15 Changed 15 months ago by kencu (Ken)

Keywords: monterey removed
Note: See TracTickets for help on using tickets.