aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Update the QtBluetooth/heartrate_game exampleHEADdevFriedemann Kleint2 hours22-176/+448
| | | | | | | | | | Adapt to qtconnectivity/375e0e2c74adad9b609f5e48dffb88b07158bbfe. Pick-to: 6.10 6.9 6.8 Task-number: PYSIDE-2206 Task-number: QTBUG-118905 Change-Id: Ifb19d0f3226fdfbba862f65eaa1ffeb0be962646 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add a tool to sync example filesFriedemann Kleint2 hours2-0/+205
| | | | | | | Task-number: PYSIDE-2206 Pick-to: 6.10 Change-Id: I043f9a70bc576e35bf59357b7ffc9144295bbd68 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Move painteditem example around to be in sync with Qt C++Friedemann Kleint2 hours6-1/+1
| | | | | | | | Pick-to: 6.10 Task-number: PYSIDE-2206 Change-Id: Iec8dbf9750adf87980bf272a14a78556f6445408 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Update the QML basic extending tutorialsFriedemann Kleint2 hours24-88/+105
| | | | | | | | Adapt to qtdeclarative/bb6cde5229bd15f6e233262ae46fffeda666cf3d. Pick-to: 6.10 Change-Id: Id6d7f15efbe776987a88779a769653b92d44608c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Update examples (simple cases)Friedemann Kleint2 hours9-320/+339
| | | | | | | Task-number: PYSIDE-2206 Pick-to: 6.10 Change-Id: Ib97a137fcbe9c1fca839743f4a8d41599794ad04 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix non-unity buildFriedemann Kleint2 hours1-0/+1
| | | | | | | | | | | | Add sbkpep.h, fixing: sources/shiboken6/libshiboken/sbkbindingutils.cpp:90:35: error: use of undeclared identifier 'PepEval_GetFrameBuiltins'; did you mean 'PyEval_GetBuiltins'? Amends ec680ac8090d903b07241dbad17d123621ffaa32. Task-number: PYSIDE-3351 Pick-to: 6.10 Change-Id: I6cd4f7f009068bf505a7877197bc90d5b9124825 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* CI: Disable Arm config on Win 11 h222 templateSimo Fรคlt6 hours1-0/+3
| | | | | | Pick-to: 6.10 Change-Id: I52223b86c26941dfdf0724a0bfc5a3920670ab7f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Deployment: Fix windows arm64 opengl exclusionShyamnath Premnadh6 hours1-6/+1
| | | | | | | | | | - With the new CI config for windows arm64, the OpenGL module is now available. This commit removes the exclusion of the OpenGL module for Windows ARM64 architecture in the test_pyside6_deploy.py file. Task-number: PYSIDE-1612 Change-Id: I24021cf35df059809c9ca5eb42c050b1ea7a93d2 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add changelog 6.10.0Friedemann Kleint3 days1-0/+81
| | | | | | | Task-number: PYSIDE-3011 Pick-to: 6.10 Change-Id: I8af56848ac19d5ba3abf24b5bf3bfdc966d3cf14 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Expose enumerations of deprecated namespace QAudio to QtAudioFriedemann Kleint3 days2-1/+29
| | | | | | | | | | | | | Retrieve the enumerations from the type dict of "QAudio" and set them on the type dict of "QtAudio" as is done for example in feature_01_addLowerNames(). Complements 8fb5639ce7025456b1410f63d1463682117fe2f5, adapting to qtmultimedia/e6d969fc3889387f0bcc136521f932fd4913927f. Pick-to: 6.10 Change-Id: Ie3998bb4d8acd97a7659568a2ced15d81f6dd280 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Fix return types of toTuple functionEce Cinucen4 days1-0/+6
| | | | | | | | | | Incorrect type hints for QtCore.QPoint/QSize/QLine.toTuple() and QtCore.QPointF/QSizeF/QLineF.toTuple() are fixed. Pick-to: 6.10 Fixes: PYSIDE-3178 Change-Id: I65957286b124eff4f25d6a7a6350a04a95b02988 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix the webenginequick/nanobrowser example to workFriedemann Kleint6 days2-0/+294
| | | | | | | | | | | Update the QML files from 6.10 and add qmldir, fixing: QQmlApplicationEngine failed to load component file:///...examples/webenginequick/nanobrowser/ApplicationRoot.qml:22:48: Type BrowserWindow unavailable file:///...examples/webenginequick/nanobrowser/BrowserWindow.qml:823:5: WebAuthDialog is not a type Pick-to: 6.10 Change-Id: I171b863cbcccb3444249370e0f3bfdfdd7fcff63 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Update MapViewer exampleFriedemann Kleint6 days3-1/+45
| | | | | | | | | | | | | Update the QML files and set the desktop file name, fixing warning: positioning.geoclue2: Neither desktopId plugin parameter nor QGuiApplication::desktopFileName has been set. Please consider setting one of the two. added by qtpositioning/720b0cdc6c33c806fad0a27c2e249e85d16e8055. Pick-to: 6.10 Change-Id: I8e24f441776168a07da29b52f2675d5ce75f9ab7 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* PySide6: Print the error message when importing Shiboken failsFriedemann Kleint6 days1-2/+2
| | | | | | | Pick-to: 6.10 6.9 6.8 Task-number: PYSIDE-3155 Change-Id: Ib3fb666a70b140b8e711fd58f56bea6e0c2612b6 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix the audiosource example by restoring back QAudio.convertVolume()Friedemann Kleint6 days3-8/+18
| | | | | | | | | | | | | Changes qtmultimedia/1922ae5c3631eb1bd74a8069f9a2a6422b6b0c89, qtmultimedia/b10efb1c79b5cffbe9ad9a0e7487247957e02ff0 finally completed the namespace name change from QAudio to QtAudio. QAudio::convertVolume() was moved to removed_api.cpp, bring it back as added function. Pick-to: 6.10 Change-Id: I89b89c950bc75abab6409aa1e13c38f4a71e20cf Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Update gallery example QML filesFriedemann Kleint6 days39-1677/+3320
| | | | | | | | | | | | Adapt to the changes up to qtdeclarative/aa86812fed59516313e561dfa40cdf77956857f4. This adds a number of new controls, new styles and fixes a warning: file::/gallery.qml:48:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 1. Use 'sequences: [ <key> ]' to bind to all of them. Pick-to: 6.10 6.9 Change-Id: I05d642f6784424c01ff2abb4d9b30c60ad725b3f Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Blacklist the remote objects testsFriedemann Kleint7 days1-1/+12
| | | | | | | | | | Temporary band-aid fix adapting to qtbase/1b449c79b9ed269c5982c840ca311447e18a985b. Task-number: PYSIDE-3179 Task-number: QTBUG-139845 Change-Id: I81908e14547b6efc76c3274d2daddfb65f0a4b90 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken6/DocGenerator: Extract a helper function to write detailed descriptionFriedemann Kleint7 days2-5/+19
| | | | | | | Pick-to: 6.9 6.8 Task-number: PYSIDE-1106 Change-Id: I1a8bce8615555289ee615730d795cc7c8b481fe6 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add documentation on changing the supported Python versionsFriedemann Kleint7 days2-0/+60
| | | | | | Pick-to: 6.9 6.8 Change-Id: I0596aea0ad9b24683465a0054e7b302dc3904110 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Introduce multi-phase Python extension module initializationFriedemann Kleint7 days3-18/+48
| | | | | | | | | | | | | | | | | | | | | | For the non-Nuitka case, use the new form of of module initialization, changing the module init() function to call PyModuleDef_Init() providing an exec()-function as slot to be called for each subinterpreter, For the Nuitka case, maintain the old code path and call the exec() function directly, as Nuitka does not seem to support it yet. At the moment, the lazy initialization code is called from the exec() function. Full subinterpreter support requires further investigation on how to make lazy initialization work with multiple binterpreters. [ChangeLog][shiboken6] Multi-phase Python extension module initialization is now used for the non-deployed case. Task-number: PYSIDE-3155 Task-number: PYSIDE-2221 Change-Id: Ie55953d47354b8f832d935fe42a686739dbce2ca Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* type hints: Uncomment the exact enum valuesEce Cinucen7 days1-1/+1
| | | | | | | | | | Add explicit enum values to stubs for improved type checking. Pick-to: 6.8 6.9 Fixes: PYSIDE-3164 Fixes: PYSIDE-3048 Change-Id: Iddfc8015abb10fe9a89705ffa700b8477bbf8023 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* libshiboken: Split out PEP functions from sbkpython.hFriedemann Kleint10 days49-34/+109
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | libshiboken provides replacement functions prefixed "Pep" for functions missing from the limited API or appearing in future Python versions (pep384impl.h, bufferprocs_py37.h, pep384ext.h). This used to be included in the sbkpython.h header, which provides a sanitized Python.h. This patch removes the PEP headers from sbkpython.h header, requiring code using the replacement functions to explicitly include new headers (sbkpep.h, sbkpepbuffer.h). The generator automatically includes sbkpep.h for code snippet compatibility. The aim is to be able to identify code using the replacement functions. It is expected that the usage decreases over time as the Limited API versions are raised and more eplacement functions become obsolete. [ChangeLog][shiboken6] libshiboken's replacement functions providing functions missing from the limited API or appearing in future Python versions have been moved from sbkpython.h (providing a sanitized Python.h) to separate headers sbkpep.h and sbkpepbuffer.h (providing buffer API). This should not affect binding code as the generator includes the new headers, but may require adaption in client code using libshiboken/libpyside directly. Task-number: PYSIDE-3171 Change-Id: I5d79a40ba6755a80c8da99e4ddd6ef93463b4ddf Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libshiboken: Remove Pep API usage from sbkcontainer.hFriedemann Kleint10 days2-8/+32
| | | | | | | | Extract a base class that provides static functions from the template. Task-number: PYSIDE-3171 Change-Id: I716b6dccae7c3ee3ab75cc269883ebabeb6c9276 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Reduce usage of PyTypeObject::tp_nameFriedemann Kleint10 days28-55/+88
| | | | | | | | | | | | | | | | | | | | | | In the Limited API, PyTypeObject is an opaque struct, for which libshiboken provides a dummy definition. PyType_GetFullyQualifiedName() (stable API since 3.13) can be used as a replacement, but it returns a PyObject. Add a convenience function PepType_GetFullyQualifiedNameStr() similar to the existing PepType_GetNameStr() to return a C-string. Leave the 3.13 code commented out for the moment since it causes a crash. This does not cover occurrences of tp_name passed as strings to Python formatting functions using the %s placeholder since that can be replaced by the new %N/%T placeholder starting from 3.13. Task-number: PYSIDE-3171 Change-Id: I4a073872cd0d138b8d8c6aafb08ccb33451812ca Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Qt Designer plugin: Adapt to deprecation of PyErr_Fetch/Restore()Friedemann Kleint10 days1-0/+7
| | | | | | | | | Add a branch using PyErr_GetRaisedException() for newer versions. Pick-to: 6.9 6.8 Task-number: PYSIDE-3147 Change-Id: I45031331e4f8821ac06b4e1bfb86d545658fa83b Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Fix crash when the typesystem's package attribute is missingFriedemann Kleint10 days1-1/+6
| | | | | | | | | Change assert() to error return. Pick-to: 6.9 6.8 Fixes: PYSIDE-3175 Change-Id: Ic386893fe9343111d79fda721a718f9e08cfe0a9 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Skip accessibility test when QAccessible is not activeFriedemann Kleint10 days1-0/+1
| | | | | | | | | Adapt to qtbase/c5cd2dc72499b7cb8fef623aed1c8215e6957e77. Task-number: PYSIDE-1650 Task-number: PYSIDE-3168 Change-Id: Id87857f3017b05494640653fe934e01b8cc7b8f0 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* libshiboken/Limited API: Throw a fatal error on UTF-8 encoding errorsFriedemann Kleint10 days1-0/+2
| | | | | | | | | ... instead of just crashing. Pick-to: 6.9 6.8 Task-number: PYSIDE-3173 Change-Id: I77bac6b193bc1f8bea05367c093cb77aeb7e8acd Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* sbkfeature_base.cpp: Do not call into Python to split a char * by ':'Friedemann Kleint10 days1-13/+45
| | | | | | | | Split a string_view on the char *data instead. Task-number: PYSIDE-3147 Change-Id: I2ef004a77562a76c3c5499ac7a86ae86008bf82d Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* shiboken6: Split init() function generation into separate functionsFriedemann Kleint10 days3-121/+241
| | | | | | | | | | | | | | | | | | | | | | | | | Prepare for multi-phase initialization, consisting of an init() function that is executed only once and an exec() function to be be called for each subinterpreter (Py_mod_exec). Split out the various generated initialization/converter creation code into functions that take a module object (to called by the module exec() function) and functions that do not need it (truly global code, typically code creating shiboken converters). Change the calling sequence to execute the truly global functions before creating the module in the init() function. Generate an additional exec() function executing code that requires a module object. For now, call it from the init function. Further splitting of functionality will be required to fully support per subinterpreter multi-phase initialization. Task-number: PYSIDE-2221 Task-number: PYSIDE-3155 Change-Id: Ia68fc5fa94138ed4fd3340ffdad40e7a346bd709 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Qt Design Studio tutorial: Fix documentation warningsFriedemann Kleint10 days1-3/+3
| | | | | | | | | | | | | | | Fix warnings: build/testenv610ia/build/pyside6/doc/base/tutorials/drumpad/index.md:73: WARNING: Include file '/data1/kleint/examples/tutorials/drumpad/final_project/Python/audio/audio_engine.py' not found or reading it failed build/testenv610ia/build/pyside6/doc/base/tutorials/drumpad/index.md:90: WARNING: Include file '/data1/kleint/examples/tutorials/drumpad/final_project/Python/audio/audio_files_model.py' not found or reading it failed build/testenv610ia/build/pyside6/doc/base/tutorials/drumpad/index.md:106: WARNING: Include file '/data1/kleint/examples/tutorials/drumpad/final_project/Python/audio/waveform_item.py' not found or reading it failed Amends efd8944b263a099e901ab588bc2d9357554f6ead. Change-Id: I00f98fc3292679347466e93cf513993eb0d48481 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Finance manager tutorial: Fix documentation warningFriedemann Kleint10 days1-0/+1
| | | | | | | | | Fix warning: sources/pyside6/doc/tutorials/finance_manager/part1/part1.md:354: WARNING: 'literalinclude': Has content, but none permitted [myst.directive_parse] Pick-to: 6.9 6.8 Change-Id: Icf3b5e56548d6e04ff19e50c0d463e917cb5d0c4 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Shiboken6Tools: Fix documentation warningsFriedemann Kleint10 days1-4/+4
| | | | | | | | | | | | Fix warnings: sources/shiboken6/doc/shibokengenerator.rst:507: CRITICAL: Title level inconsistent: sources/shiboken6/doc/shibokengenerator.rst:519: CRITICAL: Title level inconsistent: Amends fa00d37d891d20f9080afeb2003cdd9675cb86a3. Task-number: PYSIDE-3138 Change-Id: Ibbce67bb4dc0caa296808eea35f11dd21d31275a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libshiboken: Split module initializationFriedemann Kleint10 days2-5/+13
| | | | | | | | | | Prepare for multi-phase initialization by splitting out an exec() function to be called from the Py_mod_exec slot. Task-number: PYSIDE-3155 Task-number: PYSIDE-2221 Change-Id: I63dbb5f0a9add8690e5d4d861a928d82d2bac26e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libshiboken: Add isCompiled() for detecting NuitkaFriedemann Kleint10 days4-1/+29
| | | | | | Task-number: PYSIDE-3351 Change-Id: I4c28d808d09a8cdff6bea1a1f4a2a7a61c8a2694 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Widgetbinding: Use Shiboken6Tools cmake packageShyamnath Premnadh11 days3-156/+41
| | | | | | Task-number: PYSIDE-3138 Change-Id: Ic78909b498c38bd2dfbffb00a90c503cfa812c34 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Shiboken6Tools: Add documentationShyamnath Premnadh11 days1-0/+61
| | | | | | | | | - Add documentation for shiboken_generator_create_binding CMake function Fixes: PYSIDE-3138 Change-Id: Ib6b7c25d6fe81c29e3a478392eed7d85f709af47 Reviewed-by: Ece Cinucen <ece.cinucen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Samplebinding: Use Shiboken6Tools cmake packageShyamnath Premnadh11 days5-146/+49
| | | | | | | | | | | | | | | | - By using Shiboken6Tools CMake package, the dependency on `pyside_config.py` can be removed, and much code can be simplified. - Modify the generated library so that it is built with Limited-API support. - wheel_tester.py adjusted during testing so that the correct Python is identified i.e. in the case of venv, the Python from venv should be used by FindPython instead of the system Python. - Adjust 'Shiboken6ToolsConfig.cmake.in' to also use a dynamically computed `Python_SITELIB` to support RHEL systems. Task-number: PYSIDE-3138 Change-Id: I711cdbd04c7b35459f0c775d8eb76f1c85acc188 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix the RHI examples (QtGui/QtWidgets) to work in 6.10Friedemann Kleint12 days1-1/+8
| | | | | | | | | | | qtbase/5d857ed3bce64e4a7bdc5247c7dd9ca4495fb10b causes an issue here since since quint32 converts from const void*. Work around by specifying an (arbitrary) overload number. Task-number: PYSIDE-3011 Task-number: PYSIDE-3172 Change-Id: I8af55732bf85032421ed22971848da7d7c327a08 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* libshiboken: Fix warning about unused variable flagsFriedemann Kleint12 days1-1/+0
| | | | | | | | | Remove flags, fixing: sources/shiboken6/libshiboken/sbkfeature_base.cpp:136:22: warning: unused variable 'flags' [-Wunused-variable] Pick-to: 6.9 6.8 Change-Id: I3c4959d129c3ba7b464394e7c9fa790fcb43d0fc Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Fix compilation with Python 3.14/raised limited API/PyObject parameters, โ†ตFriedemann Kleint12 days1-3/+4
| | | | | | | | | | | | | addendum 2 occurrences were overlooked in the first patch. Amends e068fe929a7e90a3c5c7844b14fbe15891349c10. Pick-to: 6.9 6.8 Task-number: PYSIDE-3147 Change-Id: If28c8ffd32f0d7f202b92907fb30a4b0c329ce07 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add PepModule_Add()Friedemann Kleint12 days8-7/+23
| | | | | | | | | | PyModule_AddObject() is deprecated in 3.13 in favor of PyModule_Add() (added to stable ABI in 3.13). Add a Pep function for it. Pick-to: 6.9 6.8 Task-number: PYSIDE-3147 Change-Id: If69739267a37def164cf5a0f1843eac226933e57 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add PepModule_AddType()Friedemann Kleint12 days22-34/+47
| | | | | | | | | | | | | PyModule_AddObject() is deprecated in 3.13. For adding types to a module, PyModule_AddType() can be used instead (added to stable ABI in 3.10). Add a Pep function for it. This requires adapting some type names in QML. Pick-to: 6.9 6.8 Task-number: PYSIDE-3147 Change-Id: I169a6b7071c780dd3c3ec2ddd0762dca6cacf067 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Adapt to deprecation of PyEval_GetBuiltins()Friedemann Kleint12 days7-19/+48
| | | | | | | | | | | | | | PyEval_GetBuiltins(), which returns a borrowed reference, has been deprecated in favor of PyEval_GetFrameBuiltins(), which returns a new reference, for the stable ABI in 3.13. Add a Pep-wrapper which emulates the new behavior and use that. Pick-to: 6.9 6.8 Task-number: PYSIDE-3351 Task-number: PYSIDE-3147 Change-Id: I6b726aa110b311c038dc7db749f006fc3c63acf5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Use PepType_GetNameStr() where appropriateFriedemann Kleint12 days2-7/+2
| | | | | | | Pick-to: 6.9 6.8 Task-number: PYSIDE-3171 Change-Id: I3499a6b5ef46b865a6719e55da2fd1270f962777 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Adapt to deprecation of PyEval_GetGlobals()Friedemann Kleint12 days5-11/+40
| | | | | | | | | | | | | | PyEval_GetGlobals(), which returns a borrowed reference, has been deprecated in favor of PyEval_GetFrameGlobals(), which returns a new reference, for the stable ABI in 3.13. Add a Pep-wrapper which emulates the new behavior and use that. Pick-to: 6.9 6.8 Task-number: PYSIDE-3351 Task-number: PYSIDE-3147 Change-Id: Ic1eba66bf2be23b057a3b21db671e98558394923 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Fix compilation with Python 3.14/raised limited API/PyObject parametersFriedemann Kleint12 days31-154/+181
| | | | | | | | | | Some macros (Py_INCREF/Py_TYPE) were reimplemented as functions, unearthing some type incompatibilities. Pick-to: 6.9 6.8 Task-number: PYSIDE-3147 Change-Id: If10bc5941d718d8845c7bbd5facf6021539aad34 Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* Remote Objects: Fix valgrind warning about accessing freed memory (Python โ†ตFriedemann Kleint13 days1-1/+1
| | | | | | | | | | | | | <=3.10) The type name should be a global, static string. Amends 19abd816e73bebdd489408d0a3b7676822bff39c. Task-number: PYSIDE-862 Pick-to: 6.9 Change-Id: Id1c3de06fff71f35aa6d86be7759e3403204f7e6 Reviewed-by: Brett Stottlemyer <brett.stottlemyer@gmail.com>
* Remove usage of global header shiboken.hFriedemann Kleint13 days6-6/+16
| | | | | | | | | Following the "include only what you need" principle. Pick-to: 6.9 6.8 Task-number: PYSIDE-3171 Change-Id: I6579417f62f9cb0a494d244ed23eb31d924bb79f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* libshiboken: Fix buffer code to compile with raised Limited API >= 3.11Friedemann Kleint13 days3-57/+57
| | | | | | | | | | | | | | | | | | | | | | PySide has a copy of the buffer code in bufferprocs_py37.cpp/h since it was not part of the Limited API. It has been re-added to the Limited API in 3.11 (except some internal structs), introducing clashes when raising the Limited API version. To fix this, move all buffer-related structs from pep384impl.h to bufferprocs_py37.h and consistently name them with a "Pep" prefix. Introduce some sections depending on Limited API version to fix compilation. Note this header does not follow the convention to provide all functionality with a "Pep" prefix, since there are too many "Py_" macro defines. Task-number: PYSIDE-3171 Task-number: PYSIDE-3147 Change-Id: I628d50e5298563c9eacf3bcb87bd8f8cb9d4f3aa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>