FS#61475 - [qt5-doc] Missing documentation

Attached to Project: Arch Linux
Opened by Martin Sandsmark (sandsmark) - Sunday, 20 January 2019, 10:01 GMT
Last edited by Antonio Rojas (arojas) - Friday, 14 June 2019, 14:08 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Antonio Rojas (arojas)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Latest version (5.12.0) of qt5-doc is missing documentation for functions in some classes. Seems to be mostly "simple" classes, e. g. QRect/QRectF, QReadLocker, QQueue, QStack.

There's also some missing links, e. g. to «Threading Classes» in the Qt Core module overview.

I noticed it in Qt Assistant, but I checked and it seems to be missing from the generated HTML as well, so it's not just something incompatible with the renderer in Assistant.

One possible reason could be if clang fails to parse the source when building the documentation, but because this only leads to warnings and not build failure, AFAIK, it's easy to miss. Especially since there are a lot of "expected" warnings as well.
This task depends upon

Closed by  Antonio Rojas (arojas)
Friday, 14 June 2019, 14:08 GMT
Reason for closing:  Fixed
Additional comments about closing:  Qt 5.12.4
Comment by Martin Sandsmark (sandsmark) - Sunday, 20 January 2019, 10:08 GMT
Tried to build the qt5-doc package myself now, and it seems to be missing e. g. the qrect.html completely.
Comment by Martin Sandsmark (sandsmark) - Sunday, 20 January 2019, 10:24 GMT
Found this: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=908328

And clang has been upgraded to 7.0.1 since the current qt5-doc package was built, so I assume this new clang version broke the qt5-doc building.
Comment by Martin Sandsmark (sandsmark) - Sunday, 20 January 2019, 12:00 GMT
After rebuilding qt5-tools locally I can at least generate the documentation, and see some error output.

https://bugreports.qt.io/browse/QTBUG-72517

The error messages matches this, but the cause of it could be something completely different.
Comment by Antonio Rojas (arojas) - Sunday, 20 January 2019, 13:14 GMT
The clang version mismatch would explain why it doesn't build correctly *now*, but not why the current package (which was build with a correct clang/qdoc combination) is broken.

I really hope this is not another case of Qt relying of specific features of their own clang fork
Comment by Antonio Rojas (arojas) - Sunday, 20 January 2019, 17:28 GMT
The docs for those classes you mention are available in our package:

> pacman -Ql qt5-doc
...
/usr/share/doc/qt/qtcore/qrect.html
/usr/share/doc/qt/qtcore/qrectf.html
...
/usr/share/doc/qt/qtcore/qreadlocker.html
...
/usr/share/doc/qt/qtcore/qqueue.html
...
/usr/share/doc/qt/qtcore/qstack.html
...

Are you sure you weren't using a self-built package?
Comment by Martin Sandsmark (sandsmark) - Sunday, 20 January 2019, 21:33 GMT
Ref my last comment; I rebuilt qt5-tools (against the new clang) and managed to make a package with the files, but they still are mostly empty.

Since I kind of ruled out packaging issues, I filed an upstream bug report here: https://bugreports.qt.io/browse/QTBUG-73150
Comment by Antonio Rojas (arojas) - Monday, 21 January 2019, 07:13 GMT
Ah sorry, I misread your original report. This is indeed a regression in Qt 5.12 and seems unrelated to the clang version - compiling 5.11.2 docs with current clang works fine.
Comment by Antonio Rojas (arojas) - Tuesday, 04 June 2019, 14:30 GMT
seems fixed in 5.13.0rc1, can you confirm?

Loading...