| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
The Qt version was added in 5.14 "for use as eventual replacement for
QString::SplitBehavior." Move another step closer to that goal.
Change-Id: I7137cf8339bfe9fdcf4cb7cc695cb146aef410fb
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The command was documented as taking no arguments, and any arguments
were ignored. The documentation still has many instances of
\obsolete Use somethingElse() instead.
Where the description was lost. Force a linebreak after the command,
allowing any arguments to be processed as a normal text paragraph.
[ChangeLog][qdoc] Generate output for arguments passed to the \obsolete
command.
Fixes: QTBUG-82558
Change-Id: If3e39382367a0c1f4cc63a2c322e986e053ecd6b
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|
|
|
|
|
|
|
|
|
| |
Since the refactoring, even though the tests pass, QDoc was generating
more warnings under the hood as include paths are invalid in multiple
cases.
Change-Id: Id5bdb894c925c35ce871b2170dbd5e1f0ddc2d74
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
As the test has grown in size and scope, the lack of structure adds an
unnecessary mental overhead when adding new tests, or when attempting to
refactor the tests themselves.
- Place all testdata in a directory aptly named testdata, following Qt
convention.
- Create sub-directories for all tests, so that their data is separated
from each other.
- Update qdocconf-files to match the new structure.
- Update expected output data to match changes in qdocconf-files.
- Ensure all tests still run; this requires modifications to paths in
.qdocconf files mostly, but also in #include directives.
Fixes: QTBUG-82159
Change-Id: I43b2333cacc75d1076a8aca86e89ccc52e4ec8a3
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Writing \fn commands for member functions of classes declared under
a namespace was error-prone as QDoc required the fully qualified
paths for the function signature, even though the documentation
comment was located under the correct namespace scope.
Store the scope by backtracking the Clang AST until we reach the
level of the translation unit, and store each encountered namespace
declaration into a list. When generating the temporary source file
for an \fn command, we can then recreate the correct namespace
hierarchy.
This does not break the existing \fn command usage as it's perfectly
valid, even if unnecessary, to provide fully qualified paths in the
function signature.
[ChangeLog][qdoc] QDoc is now aware of the namespace scope of an \fn
command without requiring fully qualified paths.
Fixes: QTBUG-82190
Change-Id: Ia446c19d130b2ef48b16b67e4dfcbdaab1f9d4f5
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-36585
Change-Id: Idbcc701394e1a1f688d3832a88ae5f8948e73c36
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
| |
Change-Id: I98eaf748fdfb34f32d187718459327b8eef9c54b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
We don't call qdoc via the make targets in the tests, so remove the
unused QMAKE_DOCS entry from the project file as it interferes with
refactoring the test.
Task-number: QTBUG-82159
Change-Id: Ie29fd5407c3541be7dfe4c70376a34e084a983b1
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Often, a documented class inherits from a base that lives in
another documentation module. QDoc recorded only the class
name of such bases, omitting any qualified path. Fix this issue
in the Clang-parser.
Add an autotest for verifying documentation with cross-module
inheritance and links. This requires adding a mechanism for
copying the generated .index file(s) into a location where
QDoc searches index files in.
Fixes: QTBUG-81793
Change-Id: I4019a1ca3a0e4c69bccc1a92740fd51907bfb24d
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|\
| |
| |
| | |
Change-Id: I30a35e0998cd2538406ae5e11e2991f855f4ecb5
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Nodes sharing a comment will be listed together as a group, so
sort them alphabetically.
Fixes: QTBUG-81265
Change-Id: Ia8dcba92d74116bf6757bfc9aaded1c65d7271fd
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Property groups from base types were not listed on 'All Members'
pages of a QML type. This was because we skipped all shared
comment nodes for base types; property group is a special type
of SCN.
Remove duplication in the code that distributes the nodes; this
ensures that there is no difference in output between members of
a type and members inherited from its base types. Use logging
category to display debug warnings instead of qDebug().
Add a test to cover this.
Fixes: QTBUG-81262
Change-Id: I46c3e6afa87c510a7929088acbd1fb354f6733af
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Class nodes marked with \dontdocument are not supposed to be seen
in the generated documentation. They already did not generate an
output page, but they still appeared as base classes in 'Inherits'
information as well as class listings, resulting in broken links.
Remove these nodes from all relevant lists. Handle Node::DontDocument
status in the .index files, and add a test to cover \dontdocument
usage.
Fixes: QTBUG-81468
Change-Id: I933817ff0ebf372cfa493a5ea824b682e0b1b160
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Clang provides us sufficient information to detect a scoped enum (an
enum class). For such enums, include the enum type name into the fully
qualified name of the enum values. For enums related to \headerfile
nodes, drop the '<Header>::' from the qualified name of the enum values
as they are not valid. Ensure that this also applies to all node types
in Node::plainFullName(), as including file names into a qualified path is
always incorrect.
In some cases, enum classes were also forward declared. This was a
problem as QDoc skipped the full declaration after seeing the forward
one. Combat this by re-processing the enum declarations that do not
contain any values yet.
Add relevant test case.
[ChangeLog][qdoc] QDoc now generates correct documentation for enum
classes.
Fixes: QTBUG-66740
Change-Id: I36dcb3393500acb788e0a305fd0dfecc4b58ebc3
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a visitor functor that reconstructs template parameters from
the Clang AST, and use it when either a class or a method template
is detected.
Store this information in the node - for now, they are used only
in the class reference page subtitle (for classes), and detailed
section of function documentation. Template parameters are not
considered when searching/linking to entities, they are for
display only.
[ChangeLog][qdoc] Added capability to display class/method template
parameters in the generated documentation.
Fixes: QTBUG-17456
Change-Id: I300cc63b9fa20d4f6efaeaa27ea3769635a7b32c
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This simple boolean variable determines whether the full path
information of entities is stored into index files, and by extension,
the output of the WebXML generator.
The default value is true, and QDoc's output is unchanged. Using a
value of false is useful for testing QDoc; we can omit system
build paths in the output as those complicated the comparison of
expected and generated data.
[ChangeLog][qdoc] Introduced a configuration variable to drop
host-specific paths from the generated output.
Fixes: QTBUG-81091
Change-Id: Ic8df5e4a52a12821e2858a185c4e658905deb847
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qt has a long history, with lots of classes and functions
documented being introduced in a specific version. This
\since information for decade-old features is not relevant
anymore, producing noise about ancient Qt releases that
have been long unsupported.
In preparation for Qt 6, introduce a feature where we can set
a cutoff value for \since information that can be ignored in
the generated documentation.
Fixes: QTBUG-81090
Change-Id: Ib35a2a4d8bc3a6cb9719223a45b02f0e63f337ea
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The 5.14 branch introduced changes to a test project that the DocBook
test reuses on 5.15. Fix the expected data to make test test pass on
5.15.
Change-Id: I10f76dc1b4384451a8bf21676b153a4bbf09b4e1
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Iedc2f057fbc2c78a0ed11661dbe9141a542f0de1
|
| |
| |
| |
| |
| | |
Change-Id: I82bd549f93ce19b029c0e3c7220652e569ee07dc
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As we claim the html is html5 compliant (<!doctype html>), use the
html5 charset declaration instead of html 4.01 style. Also, drop the
trailing '/' (no need to close meta element).
Update all test content to match the new output.
Task-number: QTBUG-73026
Change-Id: I4cf58a342a2bfb9e76245bd3fb91525e6e59f622
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The html output is not well-formed xml, so let's not claim that it is.
Update expected output in tests to reflect the change in output.
Task-number: QTBUG-73026
Change-Id: I0e6646eb33cafad7be543869585609d6f4cb0fdb
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After a recent refactoring, the function that distributes c++
documentation nodes failed to do anything with a function node that
was sharing a comment with other nodes.
Fix the issue and add a testcase for shared c++ \fn documentation
comments.
Fixes: QTBUG-81005
Change-Id: I6320bab232671f8cd969a37136708fc172de8409
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The use of this code would be to overhaul the translation project of
the documentation in French, for Developpez.com (which is now stuck
at Qt 4.7 due to outdated tools: https://qt.developpez.com/doc/).
This means that this code will be used and maintained, whatever the
decision follows QTBUG-71493, for instance.
The DocBook support is not 100% vanilla DocBook, as some tags are
missing, but rather an extension (which could be officialised soon:
https://github.com/docbook/docbook/issues/111). These tags are used
to encode metadata about the code being commented (classes, fields,
functions, etc.). More precisely, the required tags are:
[enum|macro|namespace|typedef|union][|name|synopsis],
enum[value|identifier|item], [specialized]template[id].
These extensions can be enabled by the docbook-extensions parameter.
If you want to see the history:
https://github.com/dourouc05/qttools/tree/dourouc05-qdoc-docbook
Change-Id: I919976d8680b41c5ca69bdb79a0b824c29b89d05
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Martin Smith <martin.smith@qt.io>
|
|
|
|
|
|
|
|
| |
Add a test that verifies the content of the examples-manifest.xml,
with some metadata, and a QHP namespace defined.
Change-Id: I91bc25ee10e1054c823ec1d14cccb6d9c6ca36d9
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QDoc was incorrectly assuming that QML properties that share a comment
must belong to a property group.
Fix the issue, reduce duplication of code with functions that
output properties and methods, fix the 'id' attributes that were left
empty, and remove the <a name="..."> elements that are obsolete and
unnecessary now that 'id' has correct content.
Add a test for both properties and methods that share a comment, and
fix the expected output data for above changes.
Fixes: QTBUG-80768
Change-Id: Iddfca8214b6058987c76cd8f8dd6a842ce7cea89
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
| |
BC files built against 5.14.0 added.
Change-Id: I460c304049a7794083f6b516530c0faf0b6fa2e8
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
|
|
|
|
|
|
| |
Change-Id: I3ec3342eb3362664c605c4120238566d87c8b176
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This patch adds new tests and test data for covering
webxml generation from plain qdoc, as well as from cpp
and qml projects.
Fixes: QTBUG-79003
Change-Id: I416e88cb4d0ee5c9a27c5096f4fd0d534a4ba50c
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
| |
Allow tests to remove full paths from strings to circumvent hard-coded
paths in output.
Change-Id: I4270f201649e9e5145b1ce75d2d372605a95579d
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch introduces an extra parameter to testAndCompare(),
that allows comparing expected vs actual in the provided output directory.
This is necessary for further refactoring of the test,
so each test point will use its own directory for its expected output.
This will help to avoid name collisions.
Change-Id: I6c539ac7e2ec9dae06d8f03ef30f1c218de50ac9
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the previous test that never generated any QML type documentation,
and add new test types, documented in .cpp, .qdoc, and inline in .qml.
Use all available \qml-specific QDoc commands.
Fixes: QTBUG-80154
Change-Id: I60d9762836b986ca534c664517274517b73c085d
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This patch adds a regression test to cover QTBUG-80259
by adding new test data to the existing end-2-end qdoc test suite.
The test is covering class name sorting functionality
during documentation generation.
Change-Id: I6421981596f4d72e8b0ce8351e85a8e5b3856b45
Fixes: QTBUG-80456
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Timeouts have been observed on
arm-little_endian-ilp32-eabi-hardfloat shared (dynamic).
Change-Id: I6e6525c961e8b2611a8f5485175a42a83facd723
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Liang Qi <liang.qi@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change moves the setting of configuration options from QDocGlobals
to Config. This allows for the removal of the entire QDocGlobals class.
Some methods (getters/setters) are part of the move, others were used
exclusively by Config:: and are therefore dropped entirely.
Also, move the ownership of QDocCommandLineParser from main() to
Config - this makes Config the authoritative source of all settings,
whether from the command line or .qdocconf variables, and makes it
possible to reset() the full state of the Config.
Finally, remove the QDocGlobals auto-test, as it is no longer needed.
Change-Id: I8e39931c828c763cb0462cbbdf3fe1a39b2ad70b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The purpose of this change is to test the documentation that is
generated for comments that use QDoc's \reimp command.
This is done by adding a new virtual method to the Test class,
and a new inherited class that implements it.
Change-Id: If2367362475cc3daf31004dec43e8e15076acfb5
Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change introduces several data updates for the test htmlFromCpp,
that will help us prevent possible regressions in the future.
Enhancements include:
1. CPP function with default arguments.
2. Usage of \qtvariable to produce appropriate qmake instructions.
3. Obsolete and deprecated members.
Change-Id: I9e1d346b43f515f649004d180d1ddead67df97b4
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Improve the coverage of C++ test with the following cases:
* \macro taking an argument
* A non-related member (above macro) associated with a class
* \inheaderfile command
* \since command
Fix incorrect expected output since fixing the bug mentioned in
the task number.
Task-number: QTBUG-77960
Change-Id: I6010cab9ab0a86a1897a38a397b8d7ba8155f95a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
| |
Validate different ways of linking to other documentation topics.
Fix the incorrect expected output in the existing tests.
Task-number: QTBUG-78040
Change-Id: Idb6bf9c79ec99894e2fe0ddb7e65150204c96627
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
| |
In addition to line number, display also the name of the tested file
on failure.
Change-Id: Icea00c94e176265bd3d91b6e7301b514bea88048
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
| |
This will be expanded later on. The minimal C++ project tests QDoc's
HTML output for a module page, namespace and class reference, and
some class members.
Change-Id: Ifabc394116b675152d3ac95dc96a46e6e9c768ec
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Streamline the process of adding new tests/files, by adding a
helper function to both run QDoc and compare the generated
output with expected data.
Add a way to pass extra command line parameters to QDoc.
Change-Id: I04870c18ae3d31ae07115d3d8f5d3c77d090418a
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
|
|\
| |
| |
| | |
Change-Id: Ic45d5c30f6bf9972dee4112f8feeac3b717576aa
|
| |
| |
| |
| |
| |
| |
| | |
BC files added.
Change-Id: I5ff442b4d389bc03ed829b9a896194025fff114c
Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The test actually tests content from a .qdoc-file, not from .cpp. Use
correct name in test to avoid future confusion.
Change-Id: Iffd21a927f3b17b0df94c14c71bd84a9e21cd7dd
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Move the setting of configuration defaults from
QDocCommandLineParser::process() to Config::Config().
In the process, eliminate QDocGlobals::defaults() and
its test.
Task-number: QTBUG-71176
Change-Id: I97adbfd93b0c31130aab6cfcb10dfe7ffa458b9d
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change adds a simple smoke test using the QML component
documentation example as test data.
Task-number: QTBUG-71168
Change-Id: Ieb4af0ff69e044cf3eed10297db62edaf066d933
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Refactor test to make it easier to extend.
Task-number: QTBUG-71168
Change-Id: Ic5a011b1b15cb3576e4101fb4875abde757dc986
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I51fa8c90923e9730d7787e763fad996db51d350e
|
| |
| |
| |
| |
| |
| |
| |
| | |
Add missing nullptr check.
Fixes: QTBUG-76930
Change-Id: I2dc99db43b12cebc6fbe9024057ba963e0ae470f
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
|