aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup version strings for 6.0.1 releasev6.0.16.0.1Simo Fält2021-02-032-6/+6
| | | | | Change-Id: I1d4b59540686c19e676fde0db62b670e34ecc096 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* add changelog 6.0.1Cristian Maureira-Fredes2021-02-031-0/+48
| | | | | | | | Change-Id: I8820cc3c4a5e9a0077b7f2290aaa782c4f6a95ad Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 88baa74455119d7159f459a3ceeefdfff62e8200) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CI: Use qt5#pyside6 as a product dependencySimo Fält2021-02-021-0/+3
| | | | | | | This allows us to add additional Qt libs into CI builds. Change-Id: I8b9aab4ab948bf0661947e6bb3fcd55d17437ccd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Fix documentation warning in qmlsqlintegration.rstFriedemann Kleint2021-02-021-1/+1
| | | | | | | | | | Fix sources/pyside6/doc/tutorials/qmlsqlintegration/qmlsqlintegration.rst.rst:65: WARNING: line number spec is out of range(1-145): '130-146' Change-Id: I66b328f03fb69048defd1e1da1dfda8d8c309d96 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 4d7c6e0ac10dc49abb7e7d4ad07503449906f459) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Fix a crash when printing clang diagnosticsFriedemann Kleint2021-02-012-5/+18
| | | | | | | | | | | | | | The CXFile struct used in the Diagnostic struct representing a diagnostic message is invalid after clang parsing has finished and causes a crash when printing. Expand it to a QString at creation time. Apparently, this occurred with recent clang versions. Change-Id: I297014e272d6814f04e8f0273e8ae79ab8264138 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 9da07f8145b38f4483fed94fbc3148af872b08ec) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* feature: Fix a flag error when no snake_case is selectedChristian Tismer2021-02-011-3/+4
| | | | | | | | | | | | This is another small bug that was found by testing true_property alone. Some flag refactoring forgot to mask the flag. Change-Id: Id3576cf982451b022a8ace72fbaf4369d32b6cb1 Task-number: PYSIDE-1019 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit cdb644bc8fde3086996d4ecaba06f8c34d7666a3) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Blacklist Qt3DExtras::qt3dextras_test in win when ran in CISimo Fält2021-02-011-0/+1
| | | | | | | Change-Id: Iae2540ea863cc2e4c33ac3798aa05f3592c9b513 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 481612f4a5db647a65a2994ec7be8974a2f885e7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide: write a renamer script for debugging, improvedChristian Tismer2021-02-011-20/+17
| | | | | | | | | | | | | | | | | | Debug output is hard to read if there are many objects with the same type but different address. This script builds simple names instead of addresses which are easy to track. See the info at the beginning of the script. The improved version is more universal since it only requires a "0x..." word followed by some name. There is no other fixed formatting. Task-number: PYSIDE-79 Task-number: PYSIDE-1478 Change-Id: Iae4abd447dc14a67fe7cc212c1de337c70499ac1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit a9dcb53624cdd09ace10687813a3f3badeaa5983) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* feature: delete setter after creating property only if standardChristian Tismer2021-01-291-5/+9
| | | | | | | | | | | | | | | | | | | | Some features like QWidget.size are defined by Qt with a non-standard setter name. For size, the standard setter name would be setSize, and in the property creation process this setter would be deleted. We changed rules in this way: If a setter name is non-standard (like resize), the setter will not be removed but still can be used. Actually it would make more sense if "size" was a read-only property. Task-number: PYSIDE-1019 Change-Id: I9ded7e9c1dbd2932aa4c5616385b90ed673bfaee Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit e675a51ce48875800c1f9137cedd49144c62af58) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* CI: Enable macOS 10.15Simo Fält2021-01-291-3/+0
| | | | | | | Change-Id: I12f9fde5507b452f0624d53045ec808a56ea1c63 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit f2e3e8d8d34c93dc8e61d0efd01a59f542abd94c) Reviewed-by: Simo Fält <simo.falt@qt.io>
* shiboken6: Do not attempt to qualify braces specified as default valuesFriedemann Kleint2021-01-261-1/+1
| | | | | | | | | | "Qt::WindowFlags flags = {}" was mistakenly changed to "Qt::WindowFlags flags = Qt::{}" Change-Id: Ic160a220db56645f0f554863c0a0d5e92b1307dd Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit d80794d374f6da0fc0ac11408d29417819b43045) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Add missing break statementsFriedemann Kleint2021-01-221-0/+2
| | | | | | | | | Fix an oversight of 6a1a08cfaf11ad38612e59cb1d56160160504ec8. Change-Id: Iba09b4c631132f7c50ab6b2321b9e93a61c26650 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit f4186986c9a68b9691f4c46c446cc13b1bc90606) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* signature: Provide fixes and improvements, Part 1Christian Tismer2021-01-228-35/+50
| | | | | | | | | | | | | | | | | | | | The signature module is modified again to be more correct when using the mypy application. This part splits some changes which occurred when working on Shiboken.Enum inheritance. There will be a number of follow-ups: - signatures for all shiboken types - test cases for signatures - signature support for different __feature__ selections Change-Id: Ifb0d92bf7641f2909ab950e3458b3c3c68c20dad Task-number: PYSIDE-510 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 123e27090e0ec4f8d32f301700c9ff9d1b49ba2a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Documentation: Fix creating inheritance diagramsFriedemann Kleint2021-01-221-1/+1
| | | | | | | | | Amends d9f344fcef6bec04a787f9ea9f4ea94f15eaa26c. Change-Id: I14a440c8372b5d0e418161c593bf9093f9010665 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 665f3b2ba6014575185d9209229df35d2d5b9798) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Add mirror url to download MSVC redistributablesSimo Fält2021-01-221-1/+6
| | | | | | | Change-Id: If990cb45c2187cdfda5c41ea8b8123d803fa8934 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 63614c3085fa8105e9f8ced6b2d166c2a7a2c6e6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Revert "Qt CI: Install libCLang 10.0"Simo Fält2021-01-223-70/+0
| | | | | | | | | | | LibClang with dynamic libs is now provisioned with Qt5 scripts. So this is no longer needed. This reverts commit cbe5ac758c59f4d16b64704a1c5a3ddf88f3f85b. Change-Id: I1ca354e14231d677a72fc4d8391a705e70d28f35 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 5676675320bd41a9c321e9259962ced923f69757) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* allow to use shiboken.delete() to delete Q*ApplicationChristian Tismer2021-01-117-9/+46
| | | | | | | | | | | | | | | | | | | | This function should initially not allow deleting Q*Application with a shiboken.delete() function, but unfortunately some competitor can do that, so we will as well. Deletion of qApp needs knowledge about qApp. We add a hook function that calls the pyside function `destroyQCoreApplication`. A special problem was testing interactively. See the error description for the days long journey :) Change-Id: I34862425c2cb2cc80d6cafc22d25a867f96f3e0a Fixes: PYSIDE-1470 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 98aba46414b666c27df3904d2b4313f0a16e05dc) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide: write a renamer script for debuggingChristian Tismer2021-01-112-0/+122
| | | | | | | | | | | | | | | Debug output is hard to read if there are many objects with the same type but different address. This script builds simple names instead of addresses which are easy to track. See the info at the beginning of the script. Change-Id: I51e08276d8ffc6d7365ce8620957e64769d7fd8c Task-number: PYSIDE-79 Task-number: PYSIDE-1470 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 8a115fcc3719af509a1abb91805729c06ce38443) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken2: Add diagnostic output to clang include searchFriedemann Kleint2021-01-111-1/+6
| | | | | | | Change-Id: I6c1063cf94ec790ad34d8edaee8d524b8fb28ed8 Reviewed-by: Simo Fält <simo.falt@qt.io> (cherry picked from commit ab616250020a1c7a16b058f1041618758a6406ee) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* sources: migration from format() to f-stringsCristian Maureira-Fredes2021-01-0658-146/+146
| | | | | | | | | | This should be the last patch related the usage of f-strings from the 'sources' directory. Change-Id: I0288d720dc4930dee088ca3396a66d1b3ba18f76 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit d9f344fcef6bec04a787f9ea9f4ea94f15eaa26c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* feature: Disable selection while creating a typeChristian Tismer2021-01-065-4/+24
| | | | | | | | | | | | | | | | | | | PySide 6 suddenly has problems with feature switching during subtype initialization. We introduce an enable function that can temporarily suppress switching. This problem is solved so far. It is the question whether this will break again in another constellation. It might be considerable for the future to have something like Python's PyType_Ready function. Right now this is too much effort. Change-Id: If0ed786d4761cf2356f01f7478e4a0d750e88d3c Fixes: PYSIDE-1463 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit b6d1b76b46d7b756f7cb01361037e1cb5efc990a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* scriptable application: Actually make the generated module availableFriedemann Kleint2021-01-062-10/+8
| | | | | | | | | | | | A call to PyImport_AppendInittab() before Py_Initialize() is required to be able to import the module. Previously, the example would only add the instance of the mainwindow under the "__main__" module. Task-number: PYSIDE-841 Change-Id: Ib87ddd9fa9e4dbdcf413abe1d9e6273811fc414c Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit b62040783613568901e76a26799e130632004a7e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Guard against repeated invocation of the module init functionFriedemann Kleint2021-01-051-1/+6
| | | | | | | | | | | | It cannot entirely be avoided in the case of the scriptable application example. Generate code checking on the global variable. Task-number: PYSIDE-487 Change-Id: I12bcd9df37c39f78f1d7edc63e16b3c6a9525011 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 50a30e50ba5edd2cdeefe3118e0a0f7e79e3732f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* scriptable application/Unix: Remove setting of PYTHONHOME for virtualenvFriedemann Kleint2021-01-051-3/+1
| | | | | | | | | | | | | On Linux, with 3.8, it causes an error in conjunction with virtualenv: Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding Python runtime state: core initialized ModuleNotFoundError: No module named 'encodings' Task-number: PYSIDE-841 Change-Id: Ibf1caa1a797faab5dd8e4bfa6eb23296bb7945a5 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 05db21e661c6ba9eb69516cb1386bcbd431b7d2d) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* QSetting.value add overload documentationCristián Maureira-Fredes2021-01-051-0/+21
| | | | | | | | | | | | | | | When the new overload to specify a new "type" parameter was included, there was no documentation that could be reflected in our API docs. This adds a paragraph/example for the overload introduced by 78dad8180d797a647645b74255bfc29c46d7264a Fixes: PYSIDE-1466 Change-Id: I843e650f8eb4c32f4c67a31ed5cf9047c4f171f9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 9547dc918868470fe00fafe25d74a87b2ed35f1f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: fix get_config_var for Big SurCristian Maureira-Fredes2021-01-051-1/+2
| | | | | | | | | | | get_config_var(...) returns an integer so the split fails. Fixes: PYSIDE-1469 Change-Id: Iadf76c523dfca78c8b8d85511d06dc366de6273f Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 3f6c13dc7b4241c924b0b4366e3cbc94572737b7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc/tests: update old style printCristian Maureira-Fredes2021-01-0434-88/+88
| | | | | | | | | | There were some leftovers from Python 2 still around our code, this patch only covers the 'print' cases. Change-Id: Icf574be6a40cdb233d3c410c2ec831d2d09bb735 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit b3a8c9898cca52b63d270a54651ec71de9b32238) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: use f-strings instead of format()Cristian Maureira-Fredes2021-01-0410-232/+215
| | | | | | | | Change-Id: I165e9a39f968f67f9eae3a632739908d5f8fda59 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 6cc55fefc8ddf12ecc9dcce33e367148e6216b1f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* basewrapper: clear all traces of special Q*Application treatmentChristian Tismer2021-01-049-189/+49
| | | | | | | | | | | | | | | | | | | After simplifying qApp so much, it is no longer necessary to treat Q*Application special. We now can allow garbage collection for all objects which simplifies the code quite much. Then it was easy to shrink the implementation to a single function `MakeQAppWrapper`, which made the whole "qapp_macro" files no longer necessary. This cosmetic change will probably not be back-ported to 5.15 . Task-number: PYSIDE-1447 Change-Id: I8ae3c5575e62bd7b5d6bac65c25775c712bb178f Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 8998f9c1a9116151b679c61ad36fedcc74cc75a1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: replace print by distutils.logCristian Maureira-Fredes2021-01-044-27/+26
| | | | | | | Change-Id: I1106598719b48650847b08637e0caf6677cb26a0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit a35afc89a911612b4de3c71a8717f1fb74a39455) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Use Python3 as a default python with CISimo Fält2021-01-043-7/+21
| | | | | | | Change-Id: Ie1e439a714685a0e7129d0ca5beef4ff8d2c6bdb Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 4af4b4c23551b68d4b207c47054af21ec64e76bd) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qp5_tool: use f-strings instead of format()Cristian Maureira-Fredes2021-01-041-10/+10
| | | | | | | | Change-Id: If6b472d5abbdc1018790c447532453a2fe956eed Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 5f1a3d89c4b90b1929f23b33ddd7027fceff983a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Disable macOS 10.15 from pyside6 CI for nowSimo Fält2021-01-041-0/+3
| | | | | | | | | | There some enablers missing from VM template so it is now blocking the development. Change-Id: I6638fd62039e9bfe5f7f9f4c485e67139653176c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 397c3ff1a56ed9a40edcb9ce447f54d859a7165f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* qApp: fix flag handling in Python 3.8+ and a Python 3.9 issueChristian Tismer2021-01-042-15/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is an old problem that was solved for Python 2.7. From Python 3.8 on, the behavior is the same with Python 3. The fix finally was to extend a Python 2.7 patch to Python 3 as well. See the Jira issue for details. Other little changes: This patch includes also a small patch that was mentioned as necessary for Python 3.9: Python issue 40217. I have seen no effect of this change yet but applied the patch, anyway. When searching for a solution of this problem, a lot of time was spent debugging qapp_macro.cpp, although it was error-free. As a side effect for better understanding, the variables were renamed to more common style. These more independent changes could have got their own check-in, but the complication of a pick-to and the small code size wasn't worth the effort. Change-Id: I7638f1a711315b4678af6b7389265b905c6404a1 Fixes: PYSIDE-1447 Reviewed-by: Dmitry Shachnev <mitya57@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit c1f776570adbe4f9aa21aa818a82f5ebd1258a76) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* build_scripts: remove unused importsCristian Maureira-Fredes2021-01-046-7/+3
| | | | | | | Change-Id: I8a62512707b576ea79fff56779322c7e38bbb21b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit a99e441a2c6e58833c577eeb901f483234a3b816) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Remove misleading doc snippets about QSpinBox signalsFriedemann Kleint2021-01-011-30/+1
| | | | | | | | | | | | The doc snippets were apparently meant to demonstrate how to disambiguate overloaded signals by specifying the type in angular brackets. It no longer applies since the signals were disambiguated in Qt 6. Change-Id: Ie696a40a07319118555fcbf1b092f761dd07befa Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 2de27981d6bf21783da56f62a1458227aa793104) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* signature: Fix infinite loop changing up directoriesFriedemann Kleint2021-01-011-2/+5
| | | | | | | | | | Break out of the loop when dirname() returns the identical string. Fixes: PYSIDE-1460 Change-Id: I31a53946bb302758acb196f47a9ad605edfdd667 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 131a1c17eed13171bf09ba42b2205760580e4f24) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Fix typo in CI instructionsSimo Fält2020-12-301-1/+1
| | | | | | | Change-Id: Id9db186ce9585d4425471bc2d22dcfd9fb587380 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 2a2982339cd83107403cb73bf6f7451cac5f7b43) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: De-virtualize TypeEntry::targetLangApiName()Friedemann Kleint2020-12-232-58/+16
| | | | | | | | | | | | It is only used for the "target" attribute of PrimitiveTypeEntry, all other overridden methods return some Java-ish name. Make it a settable property and remove the overridden methods. Change-Id: I34dd3c7a2cb3ea4f6968dc8c8d1a70aad9fbf5ed Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 7819758c3e259b59786abdcdb4051ce2024ede3a) Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Use provisioned libClang instead of instaling our ownSimo Fält2020-12-231-0/+3
| | | | | | | Change-Id: Ia6fc5c49de1057f7119b88448dc757776bc8d9b8 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 8eb0e9da6330b7414f3e3281c63887bb9ef14d3a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Consolidate type name utility headersFriedemann Kleint2020-12-226-49/+48
| | | | | | | | | - Rename CPython types to cPy* - Use them where applicable Change-Id: Iea05f7d7de5402b9de6d8a614da899b0b67811dc Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 0e055a163c8b81b74ea90180f910827f507fe10e)
* shiboken6/ApiExtractorResult: Use const AbstractMetaClass * for the class listFriedemann Kleint2020-12-2211-20/+51
| | | | | | | | | | | Add the missing overloads of AbstractMetaClass::findClass() and adapt some types. Change-Id: I65851248b4b6a2e1d4f57fc58ecaf75fb4c00b29 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> (cherry picked from commit 6d25758babd8ccad4fbc7effe561c29cbd692434) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Introduce class ApiExtractorResultFriedemann Kleint2020-12-2219-243/+353
| | | | | | | | | | | | | | | Separate the generators from ApiExtractor by introducing a class ApiExtractorResult storing the results of an ApiExtractor run. Move some query functions there. With that, some generator functions can already be made static by passing the ApiExtractorResult and OverloadData can be decoupled from the generator. Change-Id: Iaba3ebff4aecb722eec4a606423738260983d905 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit b9286bd08a4e7bf8f603e274c80cbd86cb9c1a4a) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* PySide6: Remove obsolete enumeration QPagedPaintDevice::PageSizeFriedemann Kleint2020-12-221-1/+0
| | | | | | | Change-Id: Iccef8a419cb710ffe0ba7bb2febeb2302fa5ceef Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit f390df8f323a3a207ebbcedabd9c51c0e575e63f) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Move API for primitive/container types to generatorFriedemann Kleint2020-12-224-18/+6
| | | | | | | Change-Id: I53f4b9634568a5626d972e50cc67f4bec8fe92fc Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit eac11718bd7fe346fbc65e922e3a0222613ff4a9) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Do not sort classes unnecessarilyFriedemann Kleint2020-12-218-69/+33
| | | | | | | | | | | | | | | | | | | | The list of classes was first sorted topologically, then alphabetically in the AbstractMetaBuilder and finally again topologically in the CppGenerator with an additional dependency QObiect/QMetaObject. Move the sort functionality taking the QObiect/QMetaObject dependency into account from the generator to the AbstractMetaBuilder. Move all sorting functionality to helper sortLists(). The classesTopologicalSorted() helper is then no longer needed by the generators and can be removed from the ApiExtractor. Change-Id: I03c799118296393bdd0f3de84427b50ab29153b0 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 638bc0e5e8f0400411c6ba0fb40ddcde6d3a7c40) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* designer: add rpath for linuxCristian Maureira-Fredes2020-12-211-4/+5
| | | | | | | | | | | | 'designer' was not on the list of tools that we modify to add a run path for linux. Fixes: PYSIDE-1457 Fixes: PYSIDE-1456 Change-Id: Idde477fb5012c5e61df0713ee07b42895be72ec2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 2c725e77c9cd25b38ea56accab3bdf46e15faf16) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* shiboken6: Refactor base class retrievalFriedemann Kleint2020-12-216-17/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | AbstractMetaClass has a list of base class names and a list of AbstractMetaClass* base instances. AbstractMetaBuilder populates the instance list from the names in setupInheritance() and sets a flag. In a few places in AbstractMetaBuilder, the base class instances are needed before this has been completed. For this purpose, the helper AbstractMetaBuilder::getBaseClasses() is needed. Replace the set of classes m_setupInheritanceDone by a flag on AbstractMetaClass. This allows for adding an assert to AbstractMetaClass::baseClasses() ensuring setupInheritance() has been called and taking a shortcut in AbstractMetaBuilder::getBaseClasses(). In addition, classesTopologicalSorted() can use AbstractMetaClass::baseClasses() instead of searching with AbstractMetaBuilder::getBaseClasses() and can thus be made static. Change-Id: Iaf8209b6f6534ad91a96970a56c1e86cce054922 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit e99ac18b134469854dff05fd3bb61158f9d9ccf9) Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken6: Rewite the graph sorterFriedemann Kleint2020-12-217-395/+430
| | | | | | | | | | | | | | | | | | | | | Change the Graph used for dependency sorting from a graph using integer node numbers to a template taking the Node value, relying on operator==() (and its qDebug() operators). The mapping of node to indexes can then be removed from the client code, leading to a significant simplification. As a side effect, this fixes undefined behavior of the overload sorter in conjunction with reverse binary operators. It was not handling overloads of the same decisor argument type correctly, leading to graphs with duplicated node types for them. Rewrite the toposort test to be data driven. Change-Id: Idbe896dc81d7272099db6dab3d2673643fc17401 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 7626f04ac855a56d4b364eac7b8350bdd561fef0)
* shiboken6: Refactor the class find algorithmFriedemann Kleint2020-12-201-18/+29
| | | | | | | | | | | | | Search for target lang name if there is a dot present and do not search for unqualified names if there is a "::" in the name. Use iterators to prepare for the use of different container types. Change-Id: I4722cfacb4173c84035038c667ec1aaeb049c713 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 3139c8dddf9dfb0e935cd03b3d539541fdf0edf0) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>