aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* doc: add page for pyside6-qmllintFriedemann Kleint2024-03-181-0/+49
| | | | | Change-Id: I58b885287ab531f8b88267278688251a3fcf9941 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* Documentation: update pyside6-deployShyamnath Premnadh2024-03-181-5/+37
| | | | | | Task-number: PYSIDE-1612 Change-Id: Ifcc019542754785e8429231f302411aea37f0ee7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* doc: add page for pyside6-metaobjectdumpFriedemann Kleint2024-03-181-0/+92
| | | | | Change-Id: I3a45fe6cd80deb522f0b5da95027e74c582291f7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* doc: add page for pyside6-assistantFriedemann Kleint2024-03-182-0/+21
| | | | | Change-Id: Ic3b462e097f1633e97c5b7bcecc0f5454b5f504c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qiopipe: add missing includeSamuli Piippo2024-03-181-0/+1
| | | | | | | | | | Amend ef7bb87eee9bd4469ad858f7ca15f190dbc4aaf9 and fix | git/sources/pyside6/PySide6/QtCore/glue/qiopipe.cpp:17:30: error: invalid use of incomplete type 'class QIODevice' | 17 | class QPipeEndPoint : public QIODevice | | ^~~~~~~~~ Change-Id: Ica2c5da70def52d54ca13225280181d4530c6a2d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken6: Register typedefs of container typesFriedemann Kleint2024-03-1813-7/+94
| | | | | | | | | | | | | | | | | | For signals like QRemoteObjectRegistry.remoteObjectAdded(QRemoteObjectSourceLocation) where using QRemoteObjectSourceLocation = std::pair<QString,QRemoteObjectSourceLocationInfo> one needed to specify the fully qualified C++ name in @Slot() for the metaobject system to work and the shiboken converter to be found. Record the typedefs and register the container converters under the typedef name, too. Fixes: PYSIDE-2633 Change-Id: Ifc62f096277949a507957a0466adb47d082695c7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Documentation/example_gallery: Fix example sort orderFriedemann Kleint2024-03-181-1/+1
| | | | | | | | | | Sort by name instead of target documentation file, which may contain additional subdirectory components. Pick-to: 6.6 Task-number: PYSIDE-2207 Change-Id: Ic5eacb4cf92614f5a4fd1c9cf489ccf8100a8ce4 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Documentation/example_gallery: Add a module sort orderFriedemann Kleint2024-03-181-4/+93
| | | | | | | | | | Add a description data structure for modules specifying type (essentials/addons) and a sort key. Bring QML/Quick/Widgets to the front. Fixes: PYSIDE-2207 Change-Id: I491f28bf72b5be30c94d51323a423cf9f2ddd73c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken tests/otherbinding: Add a test for star imports, amendedChristian Tismer2024-03-151-3/+6
| | | | | | | | This clarifies when Shiboken is actually loaded. Task-number: PYSIDE-2404 Change-Id: Iaef8d2f6757482c928c3489def70945cbe1c00af Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* QtAsyncio: Improve handling of outside terminationAdrian Herrmann2024-03-151-8/+5
| | | | | | | | | | | | | | Improve how QtAsyncio handles when the QCoreApplication is quit from outside, e.g., when pressing the close button. This will prevent scenarios where asyncio runs the BaseEventLoop destructor after the Qt application had already been shut down, resulting in RuntimeError. In addition, this removes some unnecessary RuntimeError raises related to a closed event loop. Pick-to: 6.6 Task-number: PYSIDE-769 Change-Id: I52553eed271b5fb5790c09751dd58cc2e52fa174 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Docs: Add pyside6-qmlShyamnath Premnadh2024-03-141-0/+8
| | | | | | | Pick-to: 6.6 Task-number: PYSIDE-2640 Change-Id: I03e42470055448d84899f7a167bd1a3dd3f41efc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* pyside6-qml: error fixShyamnath Premnadh2024-03-141-2/+2
| | | | | | | | | - QQuickView should be used when the rootobject is a QQuickItem. Pick-to: 6.6 Task-number: PYSIDE-2640 Change-Id: I1ee866d7fbd732500111db139f052f4bd3024740 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken6: Refactor writing out converter names registrationFriedemann Kleint2024-03-141-36/+42
| | | | | | | | | | | | | | Introduce a streamable type for the purpose and a helper function for registering in all scopes and streamline the code accordingly. In writeContainerConverterInitialization(), move the name registration out of the custom converter loop since it is needed only once. Task-number: PYSIDE-2633 Change-Id: Ia1256f6c76dc006a1d96b7deaf54a1891e696d12 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libpyside: Add a debug operator for a Py_BufferFriedemann Kleint2024-03-142-1/+52
| | | | | | Task-number: PYSIDE-2628 Change-Id: I34646f76f509ec30e3d63fc8df296d2b5692ff0e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix crash when adding None to a QLayoutFriedemann Kleint2024-03-142-10/+37
| | | | | | | | | | | | | | | This caused a crash in PySide's addLayoutOwnership() code snippet, whereas Qt errors out with a warning. Guard all input parameters of the layout snippets with a check. Rename the snippet "addownership-0" which is used for the itemAt() functions "addownership-item-at" for clarity and add a check there. Pick-to: 6.6 6.5 Fixes: PYSIDE-2638 Change-Id: Ia89532059e7a27cc38d790a0d17e24e19d68887f Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Examples: Use theme iconsFriedemann Kleint2024-03-148-52/+66
| | | | | | | | Add some missing icons. Task-number: PYSIDE-2206 Change-Id: I7763f3ad145427dd97084e6191fd4828c2432baa Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Android Deployment: Remove --limited-apiShyamnath Premnadh2024-03-131-1/+1
| | | | | | | | | - deployment is anyway tied to Python 3.11. No point in having the --limited-api option. Task-number: PYSIDE-1612 Change-Id: Ia12fe60fe3bbb828664bb8c8ba16b3adf0130252 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* build: add missing libraries for the wheelsCristián Maureira-Fredes2024-03-131-0/+14
| | | | | | | | | | 6.7 introduced many other files that needs to be included in order to enable other styles for QuickControls2, but also other files were included, like QmlNetwork, and QuickTimelineBlendTrees. Change-Id: Id5e8fa1024e0111717258d44627310f3fd45df3a Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* Android Wheels: Remove --module-subsetShyamnath Premnadh2024-03-131-1/+1
| | | | | | | | | - Amends 07d3c8dc71f8c5102cb37e95aa1f2caa35cff115 - As a drive-by, also remove --unity option which is now default Task-number: PYSIDE-1612 Change-Id: Ie26afd7351edb94e63f096740bd1d20e1d705005 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* build: add missing libraries for Quick3DCristián Maureira-Fredes2024-03-131-0/+4
| | | | | | | | | Discovered while adding the new libraries for 6.7 some Quick3D binaries were missing. Change-Id: I4b533f8a8c90ea0eba148451f5f3391a56373b80 Pick-to: 6.6 6.5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* LazyInit: Move the get arguments into a static structureChristian Tismer2024-03-1310-45/+132
| | | | | | | | | | | | | | | | | | | | The central get function is used very often. Since the string constants are repeated many times and there seems to be no constant folding, it is better to re-arrange the structure a bit to avoid code bloat. By moving the get arguments into a struct, we avoid all repetitions of string constants and minimize the runtime overhead. The structure is now fully backward compatible and works with unchanged scriptableapplication. Task-number: PYSIDE-2404 Change-Id: Ie7c788ef75cc3d58366532c5f14ab013ebd792b5 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* LazyInit: Implement Lazy Initialization by Delayed Module EntriesChristian Tismer2024-03-1314-39/+574
| | | | | | | | | | | | | | | | | | | | Lazy init is done by module entries which are delayed. Although visible in the module, the classes are only created when actually accessed by getattr. Internally, the access to the global Init_xxx functions is redirected to a Shiboken::Module::get function which resolves the classes if not already present in the global type array. PYSIDE6_OPTION_LAZY 0 - no lazy loading 1 - lazy load all known modules 2 - lazy load all modules Task-number: PYSIDE-2404 Change-Id: I98c01856e293732c166662050d0fbc6f6ec9082b Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken tests/otherbinding: Add a test for star importsFriedemann Kleint2024-03-131-0/+96
| | | | | | | | | | | | | | This test tests also lazy init's interaction with star import as * first import as star * second import as star after normal import without other modules loaded before. Task-number: PYSIDE-2404 Change-Id: Ibe3d1132d36a4547c0a71857217bcb24219e2185 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* PySide6: fix systemLocale goes out of scopeShyamnath Premnadh2024-03-131-1/+1
| | | | | | | | | | - remove the Shiboken:AudoDecRef wrapper for the locale Pick-to: 6.6 Fixes: PYSIDE-2639 Task-number: PYSIDE-2485 Change-Id: I4b56544ae23dfd762e4d711681bceffca05af527 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* libpyside: Improve type conversion error messages of metafunction invocationFriedemann Kleint2024-03-131-21/+36
| | | | | | | | | Refactor and streamline the code a bit. Pick-to: 6.6 Task-number: PYSIDE-2633 Change-Id: I433b136ac036a9a297d2c22ad8dfa6af45ad46b0 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Android Wheels: Update Python version to 3.11Shyamnath Premnadh2024-03-134-6/+8
| | | | | | | | | | | | | | - python-for-android target python is now upgrade to 3.11 - https://github.com/kivy/python-for-android/pull/2850. This constrains us to update to 3.11 to resolve linker issues for shiboken and PySide binaries. - The also helps for CI wheel creation since the Python version in our CI system is 3.11. - As a drive-by remove designer plugins from Android wheels. Task-number: PYSIDE-1612 Change-Id: I8c75d4d4567b6830e26a2d9a24db90592f6dc03d Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* Android Deployment: CMake Version UpdateShyamnath Premnadh2024-03-131-1/+1
| | | | | | | | | | | | - 3.18 to 3.23 - This is strict requirement since the binaries are linked to Python 3.11 and Python 3.11 is only supported from CMake 3.23 onwards - https://github.com/Kitware/CMake/blob/v3.23.0/Modules/FindPython/Support.cmake Fixes: PYSIDE-2553 Task-number: PYSIDE-1612 Change-Id: I8b7d4b825f03eb40f0a9059d6a4b31329f6ea06f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Android Deployment: Update NDK version in the toolShyamnath Premnadh2024-03-131-1/+1
| | | | | | | | | - updated to r26b in accordance with Qt 6.7 Task-number: PYSIDE-1612 Change-Id: I7efa6d827b84d92a5571c4e2d337b6545810406a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* shiboken tests/minimalbinding: Fix flake8 warningsFriedemann Kleint2024-03-136-40/+59
| | | | | | | | | | | - Remove * imports - Streamline some conditions and code Pick-to: 6.6 6.5 Change-Id: Ifd8d836adc2f306fb8b442b715e0495bae3ccb08 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken tests/samplebinding: Fix flake8 warningsFriedemann Kleint2024-03-13124-370/+604
| | | | | | | | | - Remove * imports - Remove a hidden test that was non-functional Pick-to: 6.6 6.5 Change-Id: I34c98ef81d0ebe11b0813670149c00cfcff4eb28 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Licenses: Add Apache-2.0 for the colorpaletteclient exampleFriedemann Kleint2024-03-131-0/+61
| | | | | | | | Complements e4481a8700cc21d71ba646353512e01e1520b1c2. Task-number: PYSIDE-2497 Change-Id: I4761789ca213d962d54900d299980bab34a5e53e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add QIOPipeAdrian Herrmann2024-03-137-3/+225
| | | | | | | | | | | | Add an implementation for a QIODevice that can be used to work with anonymous pipes. It needs to be able to emit the bytesWritten and readyRead signals. This implementation is lifted from the qt5 source tree (qtdeclarative/tests/auto/qmlls/lifecycle) and might be added to Qt in the future, at which point it will be removed from the PySide source tree. Change-Id: Iff1208a366dad747352e7507da0818934c26aa4f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* simplebrowser example: Use new theme iconsFriedemann Kleint2024-03-123-7/+16
| | | | | Change-Id: I3f4a1eda4a72e6de1101ba83907019d3f1f24183 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* flake8: Add E402 ignore for test_*.pyAdrian Herrmann2024-03-121-1/+1
| | | | | | | | | | | This now ignores E402 for Python files that start with "test_", end with "_test", or have "_test_" in between. Amends c58c8b252fab815fdb7ffc0a10946daab50b878d Pick-to: 6.6 6.5 Change-Id: I0702963628afa7a273d8adb32b1e8962d1b7fd8b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken tests/otherbinding: Fix flake8 warningsFriedemann Kleint2024-03-1214-42/+73
| | | | | | | | - Remove * imports Pick-to: 6.6 6.5 Change-Id: Ife84bc03d89eb95c3ddc58394ddaae1c82a601a7 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken tests/smartbinding: Fix flake8 warningsFriedemann Kleint2024-03-124-4/+1
| | | | | | Pick-to: 6.6 6.5 Change-Id: Iecc01ad457053f5ce59512ea66cb0347f54334c7 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Fix the flake8 config file to ignore E402 also in *_test.py filesFriedemann Kleint2024-03-121-0/+1
| | | | | | | | Amends fec10bbbc097eff76a1f618f2791b3df1326594f. Pick-to: 6.6 6.5 Change-Id: Ic447be6128f7928812e11df0cd10dece4288cfd4 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Deprecation Python 3.8Cristián Maureira-Fredes2024-03-1213-34/+14
| | | | | | | | | | | The changes related PYSIDE-939 can be removed when 3.9 support is dropped, because the problem was fixed and included in 3.9.13 so we cannot assume everyone will be on that version or superior. Change-Id: I78afc660edc6fbb3bb1a2438e17366e63b24e375 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* CI: Update used python version to 3.10 on windowsSimo Fält2024-03-124-18/+17
| | | | | | Change-Id: I125390b20df9a34e16f86842892c31aae8773b84 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* QtAsyncio: Reset loop policy after QtAsyncio.run()Adrian Herrmann2024-03-111-2/+13
| | | | | | | | | | | | | | When running QtAsyncio.run(), the global asyncio event loop policy is set. Currently, the policy setting is kept to QtAsyncio's policy even after QtAsyncio.run() returns, which can lead to unexpected behavior (e.g., if executing asyncio.run() afterwards expecting the default event loop to be used). Reset the event loop policy to the default one after returning from QtAsyncio.run() to mitigate this. Pick-to: 6.6 Task-number: PYSIDE-769 Change-Id: Ifd31c0924317ba09c53ded165c9a5d6f1e2dc808 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Android Deployment: Adjust with 6.7Shyamnath Premnadh2024-03-112-4/+1
| | | | | | | | | - Amend according with d1760bc8100c94a831f80080a5433a360266c5e2 - Update Android NDK to r26b aligning with Qt Task-number: PYSIDE-1612 Change-Id: I4ddb99568617d73213f83536f2c2a2e028d927ee Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Upgrade Nuitka to 2.1.0Shyamnath Premnadh2024-03-112-3/+3
| | | | | | | Task-number: PYSIDE-1612 Change-Id: Ieab3a7c7fd43e50e83c30d97cb70f6f1135b69e3 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* Fix connect() for QObject callablesAdrian Herrmann2024-03-113-7/+62
| | | | | | | | | | | | | | | The addition of the QObject.connect() overload that takes a context resulted in an automatic overload ordering that prevented the right overload from ever being called if the callable was a QObject. Set a manual order to fix this. Pick-to: 6.6 Fixes: PYSIDE-2627 Change-Id: I863f6caaed926b48bc412a29541c1d431ebd50b0 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Replace cmake -H with -SAdrian Herrmann2024-03-113-7/+7
| | | | | | | | | | | | The previously undocumented cmake -H has been replaced with the official -S in 3.13, update the documentation accordingly: https://cgold.readthedocs.io/en/latest/glossary/-H.html Pick-to: 6.6 Change-Id: I54fb700a36746b49a04449e8c9af21fd2bd235c7 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Deployment: add permission support and create macOS bundle applicationShyamnath Premnadh2024-03-119-81/+235
| | | | | | | | | | | | | | | | | | - Look at the ast of the python files of the application to identify the permissions used by the application. Once the permissions are identified, pass the necessary NS property list key to be added to the Info.plist file to Nuitka. - For macOS, when deploying create a macOS application bundle (.app) by default. This makes it align more with Apple recommendations and Qt deployment. - Fix tests. - Fix wheel_tester.py to consider .app for macOS. Task-number: PYSIDE-1612 Task-number: PYSIDE-2468 Change-Id: Ie225c9a92c845b432a8e7eaa791a8aeb86ecd988 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* QtAsyncio: Add handle_sigint argument to run()Adrian Herrmann2024-03-073-3/+12
| | | | | | | | | | | | An argument handle_sigint determines whether QtAsyncio should handle SIGINT (Ctrl+C) and shut down the event loop when it is received. The default is False. This can be set to True if you want QtAsyncio to take care of handling SIGINT instead of your program. Pick-to: 6.6 Task-number: PYSIDE-769 Change-Id: Ie4364025448405f36158a8e997d90ae143961ba8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix a crash when using struct.unpack() on a QByteArray with Limited APIFriedemann Kleint2024-03-072-2/+10
| | | | | | | | | | | Unconditionally setting view->strides on the Py_Buffer causes a crash. Update the code in our copy of PyBuffer_FillInfo() from CPython. Fixes: PYSIDE-2628 Pick-to: 6.6 6.5 Change-Id: I6f244090a65442003cecfce70c6f8164b41ba99a Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* build scripts: Use log.warning() instead of deprecated log.warn()Friedemann Kleint2024-03-072-6/+6
| | | | | Change-Id: I5c3b0bdedd35bf98c110c2885c8ba35a4f418c61 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
* QtAsyncio: Fix missing return value of run()Adrian Herrmann2024-03-071-2/+2
| | | | | | | | | | If QtAsyncio.run() executes asyncio.run(), then its return value should be passed on. Pick-to: 6.6 Task-number: PYSIDE-769 Change-Id: Ic36e3bfd0f15b0697e310af3d9eb4ff6998ffce0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Port the HelloGraphs exampleFriedemann Kleint2024-03-076-0/+231
| | | | | | Task-number: PYSIDE-2497 Change-Id: Ifa5ac24a5abf2f9a17736942bbeb8bb0f18e7067 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>