summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Simplify the code printing the enum valuesThibaut Cuvelier2019-12-191-17/+9
| | | | | Change-Id: I743baf96185fcb20ce740fcc9c2beb011f5bdefb Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Add a comment about the replacement of some identifiers by subscriptsThibaut Cuvelier2019-12-191-6/+9
| | | | | | | Clean up some related code Change-Id: I5d8d853e63a0d6a219d659a83267c748bbe42342 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* windeployqt: Refactor platform enumerationFriedemann Kleint2019-12-195-50/+54
| | | | | | | | | | | | | | | | | - Make it a QFlags, providing operators - Remove WinCE - Add a Msvc compiler flag and make the tests for build directory and d-suffix depending on it. - Add clang-Msvc/clang-MinGW - Rename WindowsDesktop to WindowsDesktopMsvc, WinRtIntel to WinRtIntelMsvc and WinRtArm to WinRtArmMsvc - Use QFlags::testFlag() Task-number: QTBUG-80806 Task-number: QTBUG-80763 Task-number: QTBUG-78445 Change-Id: I0dd74a7b03e9e6bee55d4234c12eec17d52ce0e2 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* windeployqt: Fix debug detection of "_app" versions of MSVC runtimeOliver Wolff2019-12-191-0/+3
| | | | | | | | | | UWP targets have the naming scheme of VCRUNTIMEXXX(d)_APP.dll. The "_APP" part, which is also mentioned in the comment, has to be taken into account when looking for the d "suffix" of the runtime library. Change-Id: Iea84687c7c3f230ac9520ca983e742b0938eec15 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Jiong Chang <xspeed1989@gmail.com>
* qdoc: Introduce ignorewords configuration variableTopi Reinio2019-12-184-102/+113
| | | | | | | | | | | | | | | | | | QDoc automatically generates hyperlinks for words that qualify for auto-linking. This may become a problem whenever there is a qualified word as a section or a page title, and that word appear in the documentation frequently. For example, 'macOS' is mentioned often and each occurrence is linked, which is unnecessary and sometimes confusing. Provide a way to exclude specified words from being auto-linked. Create a new helper function, DocParser::isAutoLinkString(), to determine whether a string qualifies, and replace duplicated code with calls to that function. Fixes: QTBUG-79135 Change-Id: Ie53fe7ca0692f7b8e10a5f2208df5cd2ee2aab1d Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* clang-format QDocPaul Wicking2019-12-1767-4629/+3911
| | | | | | | | | | | | | | | | This patch is the result of formatting all of QDoc's source with clang-format. The clang-format style is from the qt5 super repo's _clang-format definition. The purpose is unify the style across the code, to avoid spending too much time on style related issues in reviews and cleanup patches. Future changes to QDoc can benefit from using git-clang-format in combination with the git commit hook provided in qtrepotools.git as mentioned in this email to the dev list: https://lists.qt-project.org/pipermail/development/2019-October/037682.html Change-Id: I8af6a051c8334b5f35862a4dcd3becce8ac500c2 Reviewed-by: Martin Smith <martin.smith@qt.io>
* Bump versionDaniel Smith2019-12-161-1/+1
| | | | Change-Id: I574e7de9c22ae8dae680cae643272d5e2933491a
* qdoc: Fix regression in output for QML properties with shared commentsTopi Reinio2019-12-1611-140/+195
| | | | | | | | | | | | | | | | | | 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>
* Add binary compatibility files for qttools 5.14 branchMilla Pohjanheimo2019-12-163-0/+62061
| | | | | | | BC files built against 5.14.0 added. Change-Id: I460c304049a7794083f6b516530c0faf0b6fa2e8 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Factor out the formatting of the "since" textThibaut Cuvelier2019-12-135-38/+27
| | | | | | Change-Id: I3ec3342eb3362664c605c4120238566d87c8b176 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Merge remote-tracking branch 'origin/5.14.0' into 5.14Qt Forward Merge Bot2019-12-131-0/+63
|\ | | | | | | Change-Id: Ic84336c38cc11cb5959c8ebd345c224fb1399a84
| * Add qdoc-specific changes to changes-5.14.0v5.14.0-rc2v5.14.0Topi Reinio2019-12-031-0/+10
| | | | | | | | | | Change-Id: Id38ada70cfe8316d37c5c329ddb727d67723f2ee Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * Add changes file for Qt 5.14.0v5.14.0-rc1Antti Kokko2019-12-021-0/+53
| | | | | | | | | | Change-Id: I31ed95639792ffd2cc5bd00b07a39844df4ff010 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | QDoc: Add tests to cover webXML generationPaul Wicking2019-12-1318-0/+384
| | | | | | | | | | | | | | | | | | | | 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>
* | QDoc tests: add convenience functionLevon Sargsyan2019-12-131-0/+8
| | | | | | | | | | | | | | | | 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>
* | windeployqt: Fix MinGW deploymentFriedemann Kleint2019-12-133-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | The platform no longer has a 'd' suffix for debug binaries (see qtbase/4d289edb14aeb4976218cc306bfc514e37521b82). Add a check. Fixes: QTBUG-80763 Task-number: QTBUG-78445 Change-Id: I8d4617e2111167a546fa172cbca78a656d233ee5 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* | QDoc: Minor cleanup in main.cppPaul Wicking2019-12-121-48/+42
| | | | | | | | | | | | | | Simple cleanup to improve readability. Change-Id: If9ee2947ad76e64d230584a3cb36e51457f643c3 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Use QVector instead of QListPaul Wicking2019-12-1229-101/+102
| | | | | | | | | | | | | | | | | | | | | | Replace the use of QVector in most of QDoc. Also, remove one redundant C-style cast to int for result from method call that returns an int. As this happened in a macro, the result is removing a whole bunch of nagging from code inspection. Fixes: QTBUG-80669 Change-Id: Ib1aed95e01eaddd1e1213a145e815a0c4753ac67 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Make testAndCompare() take an output directory as parameterLevon Sargsyan2019-12-111-4/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* | QDoc: Minor adjustment/cleanupPaul Wicking2019-12-117-59/+59
| | | | | | | | | | | | | | Pre-increment instead of post-increment for efficiency and readability. Change-Id: I10b33360dd36cd1d0f4338441c1ad4724551e80e Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Get rid of unnecessary castsPaul Wicking2019-12-116-17/+17
| | | | | | | | | | | | | | Drop casting ints to int. Change-Id: I571f3e245bfc97a7c0c7bea5bedbf0ed5ab04c60 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Clean up whitespacePaul Wicking2019-12-113-19/+19
| | | | | | | | | | | | | | Fix minor whitespace issues accodring to style. Change-Id: Ie56e815f23f25ccb1b2ffb03780b9e4c6b9d25eb Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Remove unused codePaul Wicking2019-12-111-10/+0
| | | | | | | | | | | | | | Delete commented out code. Change-Id: Iaa08fed365d5a4d6a2986908761ce42342089730 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Drop unnecessary sortPaul Wicking2019-12-111-2/+1
| | | | | | | | | | | | | | | | | | There's no change in output by not sorting the container, so it seems to be entirely unnecessary. Also const qualify the container that is no longer sorted. Change-Id: I8d5186a70623b8db6397eb88b9b0a9b53465a34a Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Clean up loops with iteratorsPaul Wicking2019-12-1020-1018/+692
| | | | | | | | | | | | | | | | | | | | | | - Use ranged-based fors where applicable. - Use auto keyword for iterators. - Move a few variable declarations to where they're to be used. - Update docs where applicable. Fixes: QTBUG-80536 Change-Id: I859440b96428dec4ef108b01d391479d3f8dbd83 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: Get rid of out-parameterPaul Wicking2019-12-103-4/+5
| | | | | | | | | | Change-Id: Ifbd739510abd5bec4cc2b4fbac9b6667d9ae9281 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | Fix wrong filename issue under windwows in webxml/index generationLevon Sargsyan2019-12-101-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The filename attribute section in the generated index/webxml has been taking redudant directory name under Windows platform. This patch fixes the issue by removing filename deduction code and replaces it with fileName() from QFileInfo class accordingly. Change-Id: If0ef2e88c94e837099fd5e669d2b7e96e7cd4280 Fixes: QTBUG-80641 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QDoc: remove dead/unreachable code reported via coverityLevon Sargsyan2019-12-062-23/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes structuraly and logically dead code, reported via coverity scan and reported to appropriate categories of "dead code". Coverity-Id: 11018 Coverity-Id: 226101 Coverity-Id: 226127 Change-Id: I1930299c57ff10875c5b7e2df51895d9dee42fac Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Levon Sargsyan <levon.sargsyan@qt.io>
* | Improve QDoc autotest for QML documentationTopi Reinio2019-12-0622-5/+945
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | Fix null pointer dereferencing coverity issues in qdocLevon Sargsyan2019-12-053-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes potential null pointer derefencing issues all over qdoc project that has been found via coverity scan and has been assigned to "Dereference after null check" category. Fix include coverity issues with REVERSE_NULL as well as FOWARD_NULL cases. Change-Id: Icb6f413ea7bbfae76f8e68139baa31b15575a49a Coverity-Id: 163245 Coverity-Id: 11133 Coverity-Id: 185270 Coverity-Id: 226086 Reviewed-by: Topi Reiniö <topi.reinio@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* | Remove "Node" header dependency from the "Generator"Levon Sargsyan2019-12-042-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | Change substitutes Node header dependency on Generator with forward-declaration. This doesn't break any functionality since the header of Generator references only Node pointers. Aim of such change is aligned with the strategy of breaking down any unnecessary dependencies in the code to make qdoc unit-testable. Change-Id: Ia2ef2f2fb62a1435bffeda1f1b389a3079ac12b0 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Add regression test for class name sortingLevon Sargsyan2019-12-0412-0/+219
| | | | | | | | | | | | | | | | | | | | | | | | 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>
* | QDoc: Minor cleanup in doc.cppPaul Wicking2019-12-041-1/+1
| | | | | | | | | | | | | | | | Improve readability by pre-incrementing instead of post-incrementing. This should also improve performance slightly. Change-Id: Icec66867dfdb04a65e3fe3229d21e2cda98eebb9 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* | Adapt code to follow coding rulesThibaut Cuvelier2019-12-031-38/+27
| | | | | | | | | | | | Change-Id: I8e58dcecdc392c6fc26840f18d4b0e216941de27 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | qdoc: Restore alphabetical ordering of generated type listsTopi Reinio2019-12-031-45/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The comparison function used for sorting compares fullTitle() strings for PageNode items. When the class hierarchy was refactored, this had the unintended effect where this comparison was applied to lists of C++ and QML types as well - the full title is empty for these, so we ended up comparing the physical location of the type declarations instead. Fix this by preferring the fullName() over fullTitle() when comparing, as the former is what the visible list item names are generated from. Make the comparison function easier to read and maintain by introducing a preprocessor macro. Fixes: QTBUG-80259 Change-Id: I3f35aa80f1a90a6817f836146976d73b857df820 Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Introduce XmlGenerator to merge common functions for outputsThibaut Cuvelier2019-12-029-441/+656
| | | | | | | | | | | | | | | | HTML, WebXML, and the future DocBook output Fixes: QTBUG-80100 Change-Id: Idf373e3b1d76ab808597dcabd8649ecb5e2df0f7 Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | qdoc: Set node URL in ExternalPageNode constructorTopi Reinio2019-12-021-2/+3
| | | | | | | | | | | | | | | | | | | | | | We already know the full URL during construction of the node, so use it. This prevents a lot of (error-prone) processing when generating links to \externalpage nodes. Change-Id: I0209ae491b40908d063f3beb10b29aaffa00d237 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Rename functions to better describe their impactThibaut Cuvelier2019-11-283-12/+13
| | | | | | | | | | | | | | | | Also, remove an argument they were muting to instead return a new value. Change-Id: Ibe6c73d36988ed76884c5d5bbdd656bfb5221b3e Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Correct a typo in a commentThibaut Cuvelier2019-11-211-5/+1
| | | | | | | | | | Change-Id: I41841706c17fee870ca91e679d63a7a00d876519 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | windeployqt: Fix detection of MSVC runtimeJiong Chang2019-11-211-7/+6
|/ | | | | | | | Detect msvcrt.dll without version number Change-Id: Ifafdc79c1b6497e1f6695b9c69d9d9fdd6cc2d94 Reviewed-by: Yuhang Zhao <2546789017@qq.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* qdoc: Ensure the output subdirectory is used for locating dependenciesTopi Reinio2019-11-181-14/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | Commit 2b6c90317 allowed QDoc to load all available index files if 'depends = *' configuration was used. This could still fail when output from multiple modules is directed to the same location (single-dir output mode). QDoc correctly adds the output directory as a place to look for index files, but because that output directory is also added as a dependency, it was removed from the list of sub-dirs to look into once that dependency was processed. This meant that all the subsequent dependencies could not be located. Also, there's a fundamental difference in how we must resolve the dependencies; without .nosubdirs, QDoc takes the subdirectories of -indexdir entries and treats them as dependencies. With .nosubdirs, we need to look for actual .index files in the -outputdir and load all of them. Finally, move the logging line for 'depends = *' further down, so that we can print out the number of resolved dependencies. Task-number: QTBUG-80051 Change-Id: I35ff5c22e8e1f7e2b0c7de798531ad1c72813e51 Reviewed-by: Martin Smith <martin.smith@qt.io>
* Update documentationThibaut Cuvelier2019-11-181-3/+2
| | | | | Change-Id: I026206b27518da416773eb1a240e2a5b0ee4449c Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Clean-up some codeThibaut Cuvelier2019-11-181-9/+9
| | | | | Change-Id: I1b5d0d96c8955852369ecc8717b020335f05c010 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Add missing spacesThibaut Cuvelier2019-11-181-4/+4
| | | | | Change-Id: I044702411c8aba3286c98d42962a4d19720e33fb Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Change documentation as proposed by Edward WelbourneThibaut Cuvelier2019-11-181-3/+4
| | | | | Change-Id: Ida9040a17e05b193974d39d72a9998c0a63ed892 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* qdoc: Allow a documentation project to load all available index filesTopi Reinio2019-11-141-3/+9
| | | | | | | | | | | | | | | QDoc recognized '*' as a valid input for the 'depends' qdocconf variable, with the intent to load all available index files. This did not work as we cleared the resolved dependencies by re-fetching the depends string from Config after resolving the dependencies. This fix is a backport of another commit that is targeted for the dev branch, but this useful already for 5.14. Fixes: QTBUG-80051 Change-Id: I1d752208078452f4b16b1d855cdb67b8cbabf1f4 Reviewed-by: Martin Smith <martin.smith@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* qdoc: Ignore the 'enum' keyword when parsing a Q_PROPERTY typeTopi Reinio2019-11-141-0/+2
| | | | | | | | | | | | | | | QDoc's parsing of property types is slightly naive, in that it cannot parse a type that consists of multiple words. These are not common, but we do have a few instances of Q_PROPERTY(enum EnumName ...) in the Qt source. This commit allows QDoc to parse above properties by ignoring the string 'enum'. Fixes: QTBUG-80027 Change-Id: I3b01d463b081042dd27299c2121fafa3c99b98ce Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Change spaces to follow coding rulesThibaut Cuvelier2019-11-1313-50/+50
| | | | | Change-Id: I81de861e9daa00249c47ddbe259f43f47d7c6615 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* Doc: Resolve documentation warningsTopi Reinio2019-11-119-26/+19
| | | | | | | | | | | | | - QDoc Manual: UIComponents example project has been moved to be a part of test case - remove references to it from the manual. - Add missing image. - Document the namespace qdesigner_internal as \internal. Fixes: QTBUG-79833 Change-Id: Ic0984cef4091e794de5e502d04a897b1f532d9d8 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* qdoc: WebXML output: Reuse code to generate annotated listVenugopal Shivashankar2019-11-112-18/+15
| | | | | | | | | | | The inline and auto links were handled differently compared to the members list for a group page. This change reuses the same code for generating any kind of link. This change amends 8f5ebc02f6653e Change-Id: Ic9d2bf00a95c718d6074ec2b0b4705324cccf053 Reviewed-by: Paul Wicking <paul.wicking@qt.io>