aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix building of .pyi files for Windows debugFriedemann Kleint2025-04-171-4/+7
| | | | | | | | | | | | | | Port an incomprehensible list comprehension to pathlib and strip the "_d" debug prefix from the file name. Amends 3d9e42f33fad5b2eeee62d3eced1c69aa7f35fff. Fixes: PYSIDE-3061 Task-number: PYSIDE-1890 Task-number: PYSIDE-2895 Pick-to: 6.9 6.8 Change-Id: I2989ec411ae73790515ac282a2c3eccc7d222c97 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide/Signal manager: Fix corruption when connecting to temporary objectFriedemann Kleint2025-04-171-0/+1
| | | | | | | | | | | | | Guard the deletion tracker listening on QObject::destroyed() using GIL. Amends 33bd61d13d8d9e3794b6049891be62f3351313d9. Fixes: PYSIDE-3072 Task-number: PYSIDE-2810 Task-number: PYSIDE-2221 Pick-to: 6.9 6.8 Change-Id: Ia085fa551903dd39c7a9624f6995d8720e9f7fb0 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Expose QPolygonF operator==, != inherited from QListRenato Araujo Oliveira Filho2025-04-162-0/+17
| | | | | | | | These operators were missing. Change based on QPolygon fix Change-Id: I8d0a4846f91aac1e2dfa1817ec6d15903519e819 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Replace Py_GetProgramFullPath by PySys_GetObjectCristián Maureira-Fredes2025-04-101-1/+1
| | | | | | | | | Py_GetProgramFullPath is deprecated from 3.13 and the recommendation is to use PySys_GetObject("executable") instead. Pick-to: 6.9 Change-Id: Ia0b0424d6fe593343272d862b05727579fad2a86 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* PySide6: Add class QMessageLoggerShyamnath Premnadh2025-04-106-0/+160
| | | | | | | | | | | | | | | - Also add documentation with a minimal example showing the use case of QMessageLogger in Python. [ChangeLog][PySide6] Added QMessageLogger class to handle debug, info, warning, critical, and fatal messages, including support for QLoggingCategory. Task-number: PYSIDE-3052 Pick-to: 6.9 6.8 Change-Id: Iaaf586288de4aaccf01d1e6547df9a2f478a7c8c Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Use QT_CONFIG when possibleCristián Maureira-Fredes2025-04-073-5/+5
| | | | | | | | | | A few places were still using the double negation on a couple of Qt configuration options. Pick-to: 6.9 Change-Id: Id182e7a3958af21368cb890e645dc4a2902f8260 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* qtasyncio: fix f-string quotationCristián Maureira-Fredes2025-04-071-2/+2
| | | | | | | | | | | Considering we still support old Python versions, we cannot have the same quotation mark for f-string and for variables within the f-string. Fixes: PYSIDE-3068 Pick-to: 6.8 6.9 6.9.0 Change-Id: Ie9f1ed91f1a1965631bc71f35600780bb4f00603 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type-hints: Correct QMessagebox annotationsEce Cinucen2025-04-041-10/+30
| | | | | | | | | parent parameter of about, aboutQt, critical, information, question, and warning changed to Optional[QWidget]. Fixes: PYSIDE-3021 Pick-to: 6.8 6.9 Change-Id: I31e556933f25f6c21e18debb274db6a13ffbe2ed Reviewed-by: Christian Tismer <tismer@stackless.com>
* doc: Fix unclosed command formattingJaime Resano2025-04-041-1/+1
| | | | | | | | | | | | | | Currently there is an unclosed backtick (`) which shows the following error while building the documentation: sources\pyside6\doc\building_from_source/macOS.rst:77: WARNING: Inline interpreted text or phrase reference start-string without end-string. This patch fixes the issue. Pick-to: 6.9 Change-Id: I37ae34ca12e249e219ae765f121ee2f1bb2d371c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* type hints: Correct type signature for Property classEce Cinucen2025-04-031-4/+4
| | | | | | | | Task-number: PYSIDE-3012 Pick-to: 6.8 6.9 Change-Id: I720dd730f6dd28ae33a6019494b7b67b8f704a10 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Add optional to QTreeWidget.setItemWidgetEce Cinucen2025-03-271-1/+1
| | | | | | | | Fixes: PYSIDE-3057 Pick-to: 6.8 6.9 Change-Id: Iceced6c84fbfabfb484663a71ccdf13c2f69ab0a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Desktop Deployment: Upgrade Nuitka to 2.6.8Shyamnath Premnadh2025-03-272-3/+3
| | | | | | | | | | - There were some updates with respect to PySide6 support - See changelog here: https://nuitka.net/changelog/Changelog.html#nuitka-release-2-6 Pick-to: 6.8 6.9 Task-number: PYSIDE-1612 Change-Id: If091184a2661f81d3d57342ba48edc35e748fc70 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* type hints: Add optional to QProgressDialog.setCancelButtonEce Cinucen2025-03-271-1/+1
| | | | | | | Fixes: PYSIDE-3050 Pick-to: 6.8 6.9 Change-Id: Ic200e75717518b2363e0aca6fe4cfc31e5fe6256 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Add optional to QTabBar.setTabButtonEce Cinucen2025-03-271-0/+5
| | | | | | | | Fixes: PYSIDE-3055 Pick-to: 6.8 6.9 Change-Id: I5b3ee124b57643991afcb70cd9293f0cd30ff83d Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Port to Qt include styleFriedemann Kleint2025-03-2739-97/+96
| | | | | | | | | Replace the Qt forwarding headers by the .h files. This brings down the dependency list by approx 6%. Pick-to: 6.9 Change-Id: Iae7640ccbdf6a8be68137922d4191522d914d790 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix includes of libshibokenFriedemann Kleint2025-03-2621-38/+79
| | | | | | | | | Remove the global header <shiboken.h> in favor of the respective headers. Pick-to: 6.9 Change-Id: I08ee39fbd5abb15741fa5746bb82f9ddcd32ed7f Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Add support for std::chrono::secondsFriedemann Kleint2025-03-262-4/+17
| | | | | | | | | | | Introduced by qtnetworkauth/58c92af6e870fde2718a2aa9a6631a9c7ab40fad. Complements 2c3c5c0db5f1dbaafd23befc07633382b86e890d. Task-number: QTBUG-124332 Task-number: PYSIDE-2862 Pick-to: 6.9 Change-Id: I9857e2ee5cabde02469f8c3a32d8a12ba05971a3 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* type hints: Fix the type parameter in findChild and findChildrenChristian Tismer2025-03-261-3/+9
| | | | | | | | | | | | The PlaceholderType is needed to make the type parameter concrete. This led to further generalization of the supported constructs in the XML specs. Change-Id: Ic5ae4416a187f7f8527c86349f731e1b4e36b964 Fixes: PYSIDE-3045 Pick-to: 6.8 6.9 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Ece Cinucen <ece.cinucen@qt.io>
* Fix qlocale_test.py to pass after QLocale changeFriedemann Kleint2025-03-241-1/+1
| | | | | | | | | | | Floating point output now uses lower case after qtbase/05c8a48612be38a3c50bb5ed9daf1adfc221b9f2. Task-number: QTBUG-134785 Task-number: QTBUG-134768 Pick-to: 6.9 6.8 6.5 Change-Id: If6c6463b3828374a2399f6bd9d26cafebc6edaf1 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Fix QtRemoteObjects tests to pass for non-unity buildsFriedemann Kleint2025-03-203-6/+7
| | | | | | | | | | | | | pysidedynamiccommon_p.h declared a static variable that is instantiated in each compilation unit in a non-unity build. Move it out of the header. Amends 19abd816e73bebdd489408d0a3b7676822bff39c. Pick-to: 6.9 Task-number: PYSIDE-862 Change-Id: I8f3ef392c50c8e2f443f1eb027bb7c54ee1c7975 Reviewed-by: Brett Stottlemyer <brett.stottlemyer@gmail.com>
* Move helper function isCompiledMethod() to libshibokenFriedemann Kleint2025-03-205-7/+11
| | | | | | | Pick-to: 6.9 Task-number: PYSIDE-2916 Change-Id: I6e72977bfcf95c3c28cc160e07febb84220fa505 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Fix an old typo in typesystem_core_common.xmlChristian Tismer2025-03-191-3/+3
| | | | | | | | | | | | | | | | | | | Instead of typing.Iterable, typing.List must be used in the return type of QtCore.findchildren. As a drive-by, the name "PlaceholderType" was corrected because "placeholder" is only one word. The new calculation of Optional replacement was also fixed to handle return types. Note: The Optional[PlaholderType] is special, and typing refuses to use "|" here. Change-Id: I9f7d89027496f3cae58710595d7bcaafb0e51915 Fixes: PYSIDE-3045 Pick-to: 6.8 6.9 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Type system: Add missing "const" to some signaturesFriedemann Kleint2025-03-191-7/+7
| | | | | | | | This is matched by a fallback mechanism at the moment. Pick-to: 6.9 6.8 Change-Id: I9247fc512eb26007a88172d9c2a66b10e916d423 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpysideremoteobjects: Fix build with 6.10Friedemann Kleint2025-03-191-1/+1
| | | | | | | | | | | Amends 19abd816e73bebdd489408d0a3b7676822bff39c. Task-number: PYSIDE-862 Task-number: PYSIDE-3011 Task-number: QTBUG-87776 Pick-to: 6.9 Change-Id: Iba8afb9f963c34ef5bdfef4168cabcb82bf9dd3b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* type hints: Make str Optional in QLineEdit.setTextCristián Maureira-Fredes2025-03-191-0/+3
| | | | | | | Change-Id: I0565751f0189fea3e59cea7aa953d205527dd8b2 Pick-to: 6.8 Fixes: PYSIDE-3041 Reviewed-by: Christian Tismer <tismer@stackless.com>
* MetaObjectBuilder: Export the class symbolShyamnath Premnadh2025-03-191-2/+2
| | | | | | | | | - This enables the class to be used in libpysideqml to support the `AutoQmlBridge` function. Task-number: QTBUG-134668 Change-Id: I9c639c76ce23117dc259a811a7c4257fc79179a7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Deployment Test: Remove modules for windows win_arm64Shyamnath Premnadh2025-03-151-0/+14
| | | | | | | Pick-to: 6.8 Task-number: PYSIDE-1612 Change-Id: Iac8406d6e49c83c8f5aa1be757cf4c7fbfcf01bc Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* type hints: add explicit optional to setItemWidgetCristián Maureira-Fredes2025-03-141-1/+1
| | | | | | | | Change-Id: I9d14b23d9fe2e084ffdacd66560c84c8c0d54764 Fixes: PYSIDE-3042 Pick-to: 6.8 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* type hints: remove QModelIndex.constInternalPointerCristián Maureira-Fredes2025-03-141-0/+2
| | | | | | | Change-Id: I204fe9a3716de359a5d75629c6757d2045e78f43 Fixes: PYSIDE-3036 Pick-to: 6.8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* tests: Fix warning about QBackingStore::flush() being called without handleFriedemann Kleint2025-03-142-13/+21
| | | | | | | | | | | Call qApp->quit() delayed from the paint event. This fixes crashes on macOS and warnings: QBackingStore::flush() called for QWidgetWindow(0x600003a22460, name="MyWidgetClassWindow") which does not have a handle. Pick-to: 6.8 Change-Id: I2e5d8aa1cfc36c4c247f681b4219f52c1a618737 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Make Remote Objects usable beyond ModelsBrett Stottlemyer2025-03-1331-5/+3337
| | | | | | | | | | | | While present, the Qt Remote Objects bindings to Python have not been very useful. The only usable components were those based on QAbstractItemModel, due to the lack of a way to interpret .rep files from Python. This addresses that limitation. Fixes: PYSIDE-862 Change-Id: Ice57c0c64f11c3c7e74d50ce3c48617bd9b422a3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Brett Stottlemyer <brett.stottlemyer@gmail.com>
* pyproject.toml: 4. Update pyside6-project documentationJaime Resano2025-03-123-26/+115
| | | | | | | | | | This patch modifies the existing pyside6-project documentation to include the new pyproject.toml file format. The .pyproject file format is announced as deprecated. Task-number: PYSIDE-2714 Change-Id: I1efd715babd3f288532b2bbc9d36897fcfc2e2a2 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* pyproject.toml: 3. Add pyside6-project tests for pyproject.toml changesJaime Resano2025-03-1226-56/+525
| | | | | | | | | | | | This patch adds tests for the pyside6-project CLI tool to validate the pyproject.toml changes. The tests ensure that the existing behavior is preserved and that the new features work as expected. Task-number: PYSIDE-2714 Change-Id: I096188c1d6d931a3970787f2906b83d2a987f4ed Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* pyproject.toml: 2. Add pyproject.toml support for pyside6 toolsJaime Resano2025-03-121-3/+3
| | | | | | | | | | | | | | | | | This patch adds support for pyproject.toml files to the pyside6-project tool. A new command argument is added to migrate a .pyproject JSON file to the new pyproject.toml file: `pyside6-project migrate-pyproject` The new features are tested and it is guaranteed that the current behavior is preserved. A new flag is added to the project creation operations, "--legacy-pyproject", in order to generate a .pyproject file instead of a pyproject.toml file. Note that the tomlkit library is added to the requirements.txt file. https://github.com/python-poetry/tomlkit Task-number: PYSIDE-2714 Change-Id: If33956dea73b79df0a52d4dcda3934c85e57182d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Docs: Fix the finance manager tutorial part 3Shyamnath Premnadh2025-03-121-5/+5
| | | | | | | | | | | - A description was wrong along with the emphasized code. This is now fixed. Pick-to: 6.8 Task-number: PYSIDE-2850 Change-Id: I44f2b4c9a89496a96c974e78611b30f4dcec6cf6 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Documentation: Use flat documentation mode for Qt3DAnimationFriedemann Kleint2025-03-121-1/+1
| | | | | | | | | | All classes are in a namespace Qt3DAnimation, which produces an overly long page. Fixes an oversight in a8b0954cae4b4322ee8a206875f942977174b826. Pick-to: 6.8 Change-Id: I61b7d703f260ac9cbe09170a32580ef5ba635720 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Ece Cinucen <ece.cinucen@qt.io>
* pyproject.toml: 1. Refactor pyside6-projectJaime Resano2025-03-121-8/+10
| | | | | | | | | | | | This patch refactors the code of the pyside6-project tool to simplify the upcoming change of the project file format, pyproject.toml. The CLI tool documentation is also improved. Task-number: PYSIDE-2714 Change-Id: I010bbb58f3ed8be5ad5f38687f36b4641a4a021d Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Refactor pyside6-deployJaime Resano2025-03-111-42/+51
| | | | | | | | This patch cleans up the pyside6-deploy tool code. Adds some type hints and fixes some casing consistency issues. Change-Id: I16988ebf8a15bd3d2bfd12366ebacb3ffe4001e2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Switch `find_package` from `Qt6<module>` to `Qt6::<component>`Cristian Le2025-03-052-8/+13
| | | | | | | | This guarantees that all find_package hints for `Qt6` are accounted for. Fixes: PYSIDE-3026 Change-Id: Iab7d3a72b1743747e360e7f5ed2372e1b30fa047 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* QtAsyncio: Improve logging when an Exception occurs in a taskLoan Guilbaud2025-03-042-2/+9
| | | | | | | | | | When an exception occurs in a task, the logging is not helpful since it prints out nothing specific about the error that occurred. Catching the traceback and printing it out with the task in which it happened brings a lot of details to resolve the exception faster. Task-number: PYSIDE-3001 Pick-to: 6.8 Change-Id: If199da28a37406779ac5bec178fe756d1757b08c Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken6: Add a way of removing redundant overloads that differ in one ↵Friedemann Kleint2025-03-031-0/+10
| | | | | | | | | | | | | | | | | parameter When retrieving the function groups, check if there overloads that differ in one parameter and remove them based on rules specified in the type system. For example, when QByteArray::number(qint64) and QByteArray::number(int) exist, it does not make sense to generate an overload for int with parameter checking. [ChangeLog][shiboken6] It is now possible to specify rules to remove redundant overloads that differ in one parameter. Task-number: PYSIDE-2701 Change-Id: I8e1ccbccfe7b5ad76486dc197e8d9c36f1809fbe Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Add support for std::chrono::millisecondsFriedemann Kleint2025-03-032-1/+21
| | | | | | | | Add it as an integer-type. A follow-up change is needed to remove the resulting redundant overloads with int. Change-Id: Iba6eb399d218d5116c8030144c1e4984d11218a7 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Print erroneous PYI files, but only if COIN is presentChristian Tismer2025-02-281-1/+1
| | | | | | | | | It turned out to be boring if the PYI files are printed locally. Task-number: PYSIDE-3012 Change-Id: Ic47e1828367c1f00c263451a6090cb5e03313103 Pick-to: 6.8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix connecting signals by QMetaMethodFriedemann Kleint2025-02-282-2/+23
| | | | | | | | | | | The old implementation was calling the string-based overload, but did not add the '1'/'2' markers added by SIGNAL/SLOT. Call the QObject overload directly. Fixes: PYSIDE-1277 Pick-to: 6.8 Change-Id: I912f46c33959b622301b0a75e771057c8874f7e3 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Print erroneous PYI files for COIN support (cleanup)Christian Tismer2025-02-271-1/+0
| | | | | | | | | Reason: We cannot find an error which happens in CI on Windows 11, only Task-number: PYSIDE-3012 Change-Id: I99a2d72e49027cc76767c70bdc94d8d3f6451782 Pick-to: 6.8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Improve type annotations, first stepEce Cinucen2025-02-274-21/+21
| | | | | | | | | | Import Callable, Iterable and Sequence from collections.abc, since using them from typing is deprecated. Pick-to: 6.8 Task-number: PYSIDE-3012 Change-Id: I131c00005df410fdaa40b338a2a728512269aaa0 Reviewed-by: Christian Tismer <tismer@stackless.com>
* type hints: Fix Slot() type annotationEce Cinucen2025-02-261-1/+1
| | | | | | | | | The restricting type annotation for call function in Slot class is updated to more flexible one. Pick-to: 6.8 Task-number: PYSIDE-2846 Change-Id: Ic26ebb42bb6bfe4f4d0455125ac92b3552c62d06 Reviewed-by: Christian Tismer <tismer@stackless.com>
* type hints: Print erroneous PYI files for COIN supportChristian Tismer2025-02-251-1/+21
| | | | | | | | | Reason: We cannot find an error which happens in CI on Windows 11, only Task-number: PYSIDE-3012 Change-Id: I8f2e4c56ee8c81e8d3b348c624be5df80d5df275 Pick-to: 6.8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: Remove obsolete rejectionsFriedemann Kleint2025-02-242-4/+0
| | | | | | Pick-to: 6.8 Change-Id: I0780ee2f7f5f42a9281f4add3818109628df8332 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Add a file cache for the type system snippet readerFriedemann Kleint2025-02-211-4/+4
| | | | | | | | | | | | Add a file cache caching a small number of files with a convenience API for retrieving lines and regexp-delimited snippets. This avoids re-opening snippet files several hundreds times during building. As a drive-by, fix a broken doc snippet. Pick-to: 6.8 Change-Id: Ic468dbff755285456034a176e4d3eae348dcbf15 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>