Details
Description
What we've got here is failure to communicate optional dependencies. ↙ said in lazy Texas drawl
Fortunately, this is a minor failure. In both the 5.6 and dev branches of PySide2, the PySide2/CMakeLists.txt makefile incorrectly lists numerous optional Qt dependencies as mandatory. Assuming PySide2 behaves similarly to both PySide1 and PyQt5 with respect to these dependencies, all Qt dependencies except Qt5Core and Qt5Xml should probably be listed as optional. (Possibly Qt5Xml as well.)
Specifically, PySide2/CMakeLists.txt lists the Qt5Concurrent, Qt5Gui, Qt5Network, Qt5PrintSupport, Qt5Sql, Qt5Test, and Qt5Widgets dependencies as mandatory rather than optional on lines 117 through 142. The offending block reads:
CHECK_PACKAGE_FOUND(Qt5Core) CHECK_PACKAGE_FOUND(Qt5Concurrent) CHECK_PACKAGE_FOUND(Qt5Gui) CHECK_PACKAGE_FOUND(Qt5Widgets) CHECK_PACKAGE_FOUND(Qt5PrintSupport) CHECK_PACKAGE_FOUND(Qt5Xml) CHECK_PACKAGE_FOUND(Qt5XmlPatterns opt) CHECK_PACKAGE_FOUND(Qt5Svg opt) CHECK_PACKAGE_FOUND(Qt5PrintSupport) CHECK_PACKAGE_FOUND(Qt5Sql) CHECK_PACKAGE_FOUND(Qt5Designer opt) CHECK_PACKAGE_FOUND(Qt5UiTools opt) CHECK_PACKAGE_FOUND(Qt5Test) CHECK_PACKAGE_FOUND(Qt5Network) CHECK_PACKAGE_FOUND(Qt5WebKit opt) CHECK_PACKAGE_FOUND(Qt5WebKitWidgets opt) CHECK_PACKAGE_FOUND(Qt5Script opt) CHECK_PACKAGE_FOUND(Qt5ScriptTools opt) CHECK_PACKAGE_FOUND(Qt5Help opt) CHECK_PACKAGE_FOUND(Qt5Multimedia opt) CHECK_PACKAGE_FOUND(Qt5Qml opt) CHECK_PACKAGE_FOUND(Qt5Quick opt) CHECK_PACKAGE_FOUND(Qt5QuickWidgets opt) CHECK_PACKAGE_FOUND(Qt5WebChannel opt) CHECK_PACKAGE_FOUND(Qt5WebEngineWidgets opt) CHECK_PACKAGE_FOUND(Qt5WebSockets opt)
The above block should instead probably read:
CHECK_PACKAGE_FOUND(Qt5Core) CHECK_PACKAGE_FOUND(Qt5Concurrent opt) CHECK_PACKAGE_FOUND(Qt5Gui opt) CHECK_PACKAGE_FOUND(Qt5Widgets opt) CHECK_PACKAGE_FOUND(Qt5PrintSupport opt) CHECK_PACKAGE_FOUND(Qt5Xml) CHECK_PACKAGE_FOUND(Qt5XmlPatterns opt) CHECK_PACKAGE_FOUND(Qt5Svg opt) CHECK_PACKAGE_FOUND(Qt5PrintSupport opt) CHECK_PACKAGE_FOUND(Qt5Sql opt) CHECK_PACKAGE_FOUND(Qt5Designer opt) CHECK_PACKAGE_FOUND(Qt5UiTools opt) CHECK_PACKAGE_FOUND(Qt5Test opt) CHECK_PACKAGE_FOUND(Qt5Network opt) CHECK_PACKAGE_FOUND(Qt5WebKit opt) CHECK_PACKAGE_FOUND(Qt5WebKitWidgets opt) CHECK_PACKAGE_FOUND(Qt5Script opt) CHECK_PACKAGE_FOUND(Qt5ScriptTools opt) CHECK_PACKAGE_FOUND(Qt5Help opt) CHECK_PACKAGE_FOUND(Qt5Multimedia opt) CHECK_PACKAGE_FOUND(Qt5Qml opt) CHECK_PACKAGE_FOUND(Qt5Quick opt) CHECK_PACKAGE_FOUND(Qt5QuickWidgets opt) CHECK_PACKAGE_FOUND(Qt5WebChannel opt) CHECK_PACKAGE_FOUND(Qt5WebEngineWidgets opt) CHECK_PACKAGE_FOUND(Qt5WebSockets opt)
Thus concludes another negligible issue diverting precious developer resources away from mission-critical crises in the codebase. As ever, thanks for the valiant War on Bugs.