aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* shiboken: Streamline the type parsing codeFriedemann Kleint2018-05-304-98/+54
| | | | | | | | | | | | | | | | | | | | | | - Remove bool *ok-parameter from AbstractMetaBuilderPrivate::translateType() It was only used to handle the special case of void return values of functions where translateType() returned nullptr/ok = true. Add a check TypeInfo::isVoid for this purpose and move this handling to traverseFunction instead. For all other cases, translateType() returning nullptr means failure. - Remove the code triggered by the bool resolveScope parameter of AbstractMetaBuilderPrivate::translateType(). It has been observed to not find any matches, likely due to the types being fully qualified by Clang. - Remove function AbstractMetaBuilderPrivate::decideUsagePattern() which was a one-liner calling AbstractMetaType::decideUsagePattern() Task-number: PYSIDE-672 Change-Id: I0336896917cb914d4d622eefa0a21e6e319efa0f Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix qtattributionsscannertorst.pyFriedemann Kleint2018-05-291-37/+28
| | | | | | | | | | | | | | | The tool was originally written to handle a license embedded in a Python file. This has changed, the license now exists as a text file. Rewrite the tool to concatenate the output piece-wise instead of using fixed formats to be able to cope with missing URLs and versions. Add the copyrights, which were previously missing. Task-number: PSYIDE-363 Change-Id: I5ec0bd7a4b81e9f794f56f6b2b09062c331936ae Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove Python 2.6 package classifierAlexandru Croitor2018-05-291-1/+0
| | | | | | Change-Id: I200b87bc4e66d17d8eefe42359ab6bcc36d24f6c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix Pyside buildSimo Fält2018-05-292-0/+16
| | | | | | | | | | Disabling some of the configurations due to fact that those are not supported yet. 32 bit windows build on 64 bit host will be re-enabled once we get 32 bit python provisioned to 64 bit windows. Change-Id: I74492ed654dfef5aaf8e02ca8e0c715a0c27d2c8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* Documentation: Fix some oversights in the index pageFriedemann Kleint2018-05-281-2/+2
| | | | | | Task-number: PYSIDE-363 Change-Id: Ib0bc82733932eb96f9d2ca42649d28bc600d8f60 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Fix Qt11ExtrasFriedemann Kleint2018-05-281-1/+6
| | | | | | | | | | Work around the non-standard header naming of the module in the documentation generation (see also file sources/pyside2/PySide2/QtX11Extras/QtX11Extras_global.post.h.in). Task-number: PYSIDE-363 Change-Id: I3ff8bb666513a13fde4d13693fd06bdd7866e050 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Add QtMultimediaWidgetsFriedemann Kleint2018-05-282-0/+5
| | | | | | | | | They share the qdoc.conf file with QtMultimedia, which needs to be special-cased, similar to QQuickWidgets. Task-number: PYSIDE-363 Change-Id: I5abade0a715ff3245be2322eae42e7c93f643fc9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add QtScxml to the documentationFriedemann Kleint2018-05-252-1/+5
| | | | | | | | Complements 9d10897929350417f4c7b2dcf06966ff7c67c5a6. Task-number: PYSIDE-487 Change-Id: I4a01c986535c0d7ba8362760c1b8e89a2f8e9936 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove left-over documentation filesFriedemann Kleint2018-05-251-120/+0
| | | | | | | - _templates/index.html Change-Id: Idcde052a1a77e2ade1de712db79da95d5ed6c02c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Don't package qml plugin debug symbols on LinuxAlexandru Croitor2018-05-251-0/+1
| | | | | | | | | | | Amends 6f894c2667c77e2580e7312d2ebed05efa7d654e. Reduces Qt 5.11.0 Linux wheel size from ~219MB to ~139MB (~80MB delta). Task-number: PYSIDE-661 Change-Id: Iaae1089183148037d94fe541f26426fd51c0f54d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix incorrect usage of findLlvmConfigAlexandru Croitor2018-05-251-2/+2
| | | | | | | | | The functions has been renamed due to PEP8 formatting. Amends 71249b93a5d12a320b44c608c05fb9d220788a18 Change-Id: I00206e1dda77f672d6883406e47debda19bc622f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Doc: Use relative path to the shiboken docsVenugopal Shivashankar2018-05-251-1/+1
| | | | | Change-Id: I63e3d87a62932e20ce28bf344636c05a61f1c6b0 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QtScxmlFriedemann Kleint2018-05-246-1/+275
| | | | | | | Task-number: PYSIDE-487 Change-Id: Ib8eb4a77f04ddbbe2c4b164b95f49e2f53bf44d9 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Format python files to use PEP8Cristian Maureira-Fredes2018-05-234-194/+194
| | | | | | | Change-Id: I8dc16c10565da8f93ba5cb7cace004f8eaf52236 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Use SPDX name / ID for python licenseKai Koehne2018-05-222-2/+46
| | | | | | | | | | | | | | | | | This is the standard name of the license. See also https://spdx.org/licenses/Python-2.0.html Note that there's some deviation in the actual license text: The text refers to the exact Python version. Also, the SPDX standardized license contains additional text for some modules. Still, it's better to use the standardized name than inventing our own one. Change-Id: I64b20bc558928ca28edaf81925a049fcaeb124b6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Improve function documentation extractionFriedemann Kleint2018-05-183-34/+134
| | | | | | | | | | | | | | | The XQuery used to obtain the function description can fail due to argument type mismatches (typedefs or blank formatting). In that case, repeat the query restricting the search the argument count. If exactly one match is found, use that with a warning. Output the matches otherwise. Split out functions for the function queries and and helper function for creating the XQuery with flags. Task-number: PYSIDE-363 Change-Id: I83aaa53511896ee78a25f39a769ca907d0ac10bb Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* QtXmlToSphinx::transform(): Improve XML error messageFriedemann Kleint2018-05-181-2/+4
| | | | | | | Output line and column. Change-Id: Ide890b93c47ef0fc9ebe3209356da100e0cbde4e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Skip methods added by the meta builderFriedemann Kleint2018-05-183-5/+11
| | | | | | | | | Introduce an attribute for added methods and exclude them from the documentation generation. Task-number: PYSIDE-363 Change-Id: I06d3f468bcec4d0480012d29e26dabadae51634b Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Documentation: Fix failure extracting docs for functions with QVariant::TypeFriedemann Kleint2018-05-171-3/+0
| | | | | | | | | QVariant::Type is a primitive type, yet the fully qualified name should be used. Remove check for primitive types and always use the qualified name for building the doc XQuery. Change-Id: I8d12cf7d3095ce9e7baa2b6436cc90385bdedc22 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Be more verbose about which Qt CMake dirs were foundAlexandru Croitor2018-05-171-5/+6
| | | | | | | | | | | | Sometimes users might have stale cmake files installed into the same location due to building multiple Qt versions (e.g. 5.9.3 and 5.9.5), and find_package might bail out trying to use the older version. Make sure to print which cmake dir is used for each module, if the dir is available. Change-Id: I376ef95c682196c7f79d3c0e604d8225d1d2ff30 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Select correct Python environment when cross compilingSimo Fält2018-05-173-5/+17
| | | | | | | | | To be able to create 32 bit wheel in 64 bit Windows, we must use correct Python version. Task-number: PYSIDE-646 Change-Id: I72c05e9c5b6f37f16c118e36c3c7ea8f90ee7dff Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Docs: Point to Qt online documentation for QML typesFriedemann Kleint2018-05-171-6/+30
| | | | | | | | | If a -qmlmodule.webxml file exists, insert a link to the Qt online documentation. Task-number: PYSIDE-363 Change-Id: I49a46ed097e8f7136b39f38e2206a2229dd08e41 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Remove unused license filesKai Koehne2018-05-173-1375/+0
| | | | | | | These are legacy files replaced by the respective versions without 'v'. Change-Id: I3f53548058704688874589a31be6adaf33935c60 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken: Improve error messages for rejected functionsFriedemann Kleint2018-05-161-11/+29
| | | | | | | | | Add a warning explaining that a rejected abstract function will cause compilation errors later on. Change-Id: Ibcad7d79df719b0ffbaf59a0ef9eec6f22aea2ed Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Update Logo to the "Qt for Python" logo, 400x94Friedemann Kleint2018-05-162-1/+1
| | | | | | | | | Adapt the layout template accordingly. Task-number: PYSIDE-363 Change-Id: Iea3b50770acf908f04fcfbd39d178de33c247c01 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtMultimedia classesFriedemann Kleint2018-05-165-3/+41
| | | | | | | | | | | | | | | | Add QCameraFeedbackControl, QMediaService, QMediaServiceCameraInfoInterface, QMediaServiceDefaultDeviceInterface, QMediaServiceFeaturesInterface, QMediaServiceProviderHint, QMediaServiceSupportedDevicesInterface, QMediaServiceSupportedFormatsInterface, QMediaTimeInterval, QMediaVideoProbeControl, QMetaDataReaderControl and QMetaDataWriterControl. Add commented out classes QCameraFlashControl and QCameraFocusControl with explanatory comment. Task-number: PYSIDE-487 Change-Id: I4125ee2088bde487c36c3c13dd7b05d6667b0711 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix building PySide2 with ninjaAlexandru Croitor2018-05-161-1/+5
| | | | | | | | | | | | | | | | When building PySide2 with the ninja generator, ninja prints an error: "ninja: error: build.ninja:18549: multiple rules generate ./sources/pyside2/pyside_version.py [-w dupbuild=err]" This seems like an interaction error between CMake and ninja, where file dependency paths are not canonicalized. In our case this happens due to usage of pyside_version.py's relative path. Fix is to use an absolute path. Task-number: PYSIDE-663 Change-Id: Iee2ae5ea483e59ee67e53e3a2059108bf8a34fbe Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Make it possible to specify a target directory for additional documentationFriedemann Kleint2018-05-162-27/+46
| | | | | | | | | Introduce a simple [] notation for target directories. Task-number: PYSIDE-363 Change-Id: I3a0cd255faf84f564a64992cba88244ae14c2452 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix wrongly generated code for enums passed by const-refFriedemann Kleint2018-05-164-6/+22
| | | | | | | | | | | | | | First encountered in: QtScxmlEvent::setEventType(const EventType &); The metatype was wrongly detected as NativePointerPattern in AbstractMetaType::determineUsagePattern(). Introduce a helper for detecting plain const-ref and use that consistently. Change-Id: I6b105bc99ae63e4737c5d628e79f23b7acbcca3d Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add an example that demonstrates bindings to a custom C++ libraryAlexandru Croitor2018-05-1613-22/+1162
| | | | | | | | | | | | | | | | | | | | | A CMake project is included that builds two shared libraries: 1) libuniverse - a hypothetical C++ library for which bindings need to be created. 2) Universe - a Python module containing bindings to the above library. The example showcases the following concepts: * primitive type bindings (bool, std::string) * types with object and value semantics (pass by pointer VS pass by copy) * inheritance and overriding virtual methods * ownership of heap-allocated C++ objects * constructors with default parameters * general structure of CMakeLists.txt file for generating bindings Task-number: PYSIDE-597 Change-Id: I7b0f203e2844e815aa611af3de2b50a9aa9b5bfc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Clarify and fix the path to openssl libs for Coin Windows buildAlexandru Croitor2018-05-162-6/+8
| | | | | | | | | | | | When the --openssl option is given, it should point to the openssl bin directory, and not to the openssl.exe file itself. Clarify this in the setup.py comments, and fix it in coin_build_instructions.py. Task-number: PYSIDE-660 Change-Id: I5b20a8c5a445c9f628c5abc258c43271c490e08c Reviewed-by: Simo Fält <simo.falt@qt.io>
* QtGui: Remove duplicate entry for QAccessible, take 2Friedemann Kleint2018-05-151-12/+3
| | | | | | | | | Join the remaining entries. Amends e8291778cd1bab2679033cecf3f756bb2d2935ab. Change-Id: I5bb0b129fc92158a16470fcab1826f7a6ea02203 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add option --skip-modulesCristian Maureira-Fredes2018-05-154-0/+21
| | | | | | | | | | | | Allow the user to skip a set of modules when building the module. An example of using this option: --skip-modules=WebEngineCore,WebEngineWidgets,Multimedia Change-Id: I4b7a25acd60d068a886c1e716ddb7b226814b96f Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add default parameter to Q*ApplicationsCristian Maureira-Fredes2018-05-159-0/+147
| | | | | | | | | | | When no arguments are passed, build an empty list and to start a QCoreApplication, QApplication and QGuiApplication. This is a small effort to include the idea of a default parameter from Python. Change-Id: Ieedc1e7ee17de996778aa2d0bddfb88c5ef208cf Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add QProxyStyleFriedemann Kleint2018-05-143-1/+33
| | | | | | Task-number: PYSIDE-487 Change-Id: Ib862be9c0c62be09a34c3a79740d147b9788cb34 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Reduce generated package size by removing unnecessary filesAlexandru Croitor2018-05-142-9/+51
| | | | | | | | | | 1) Don't copy pdb files for QML plugins on Windows 2) Don't copy debug variants of EGL library on Windows 3) Don't copy debug variants of shared libraries on macOS Task-number: PYSIDE-661 Change-Id: I37c701f3b12f3ad08fbdd24ab70587132ddc0c95 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Remove misplaced test filesCristian Maureira-Fredes2018-05-142-148/+0
| | | | | | | | These were accidentally added to the root of the repo when cherry-picking across branches. Change-Id: I10a48ee67806dbc201eae4c0f861b26ad1ba1319 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Change license from last filesCristian Maureira-Fredes2018-05-143-3/+3
| | | | | | | | Just renaming PySide2 -> Qt for Python for these files that somehow got excluded when renaming the whole project. Change-Id: Id6dfbae1ab3bd603f1db5e0346664004102fd19f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* QtGui: Remove duplicate entry for QAccessibleFriedemann Kleint2018-05-141-1/+0
| | | | | | | Amends e8291778cd1bab2679033cecf3f756bb2d2935ab. Change-Id: I6aa0b153575cb1eac1912e5e1970d71a0a388501 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtWidget classesFriedemann Kleint2018-05-142-0/+15
| | | | | | | | Add QScroller, QScrollerProperties, QAccessibleWidget Task-number: PYSIDE-487 Change-Id: Ia0322715bd494c5f4102ed1180eb92eb49b441f7 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* ShibokenGenerator::buildAbstractMetaTypeFromString(): Handle QFlagsFriedemann Kleint2018-05-141-3/+23
| | | | | | | | | | | | | | | | | | | | The function would fail for a QFlags type defined in a dependent typesystem file with errors like: Can't write the C++ to Python conversion function for container type 'QPair': Could not find type '::QFlags<QAccessible::RelationFlag>' for use in 'toPython' conversion. for example caused by QAccessibleWidget::relation() where the flag is defined in class QAccessible in QtGui. The underlying reason is that there is no type entry for the class QFlags. To work around this, detect it by looking at the instantiated types and create a flags type accordingly. Task-number: PYSIDE-487 Change-Id: Ib3c962aeedf8deb1a6b11976bd91316d39738310 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Improve error handling when writing type conversion functionsFriedemann Kleint2018-05-142-22/+48
| | | | | | | | | | Add an errorMessage parameter to ShibokenGenerator::buildAbstractMetaTypeFromString() and output the message in ShibokenGenerator::replaceConverterTypeSystemVariable(). Change-Id: I249778b3efe89c265590a7d4977cf2a4e76063f9 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Fix typo in coin instruction scriptsSimo Fält2018-05-142-2/+2
| | | | | Change-Id: I2d17a2334d59ffa7ceff35de56b53a5ec443f449 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Doc: Add a link to the shiboken docsVenugopal Shivashankar2018-05-143-17/+12
| | | | | | | | Also reorganized the toctree structure by removing the sections. Change-Id: I6d3bbc363b86d07cc05fd3b7391b3f8b0de3605c Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* setup.py: Document option --module-subsetFriedemann Kleint2018-05-111-0/+2
| | | | | Change-Id: I1603aca6a2fda955c60e1c208db268e16341391e Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtGui classesFriedemann Kleint2018-05-112-3/+61
| | | | | | | | | | | | | | Add QAccessible, acccessibility events and interfaces. Fix the polymorphic-id-expression of the acccessibility events; they no longer inherit QEvent in Qt 5. Add QInputMethod, QInputMethodQueryEvent, QNativeGestureEvent, QScrollEvent, QScrollPrepareEvent, QOpenGLTextureBlitter and QPointingDeviceUniqueId. Task-number: PYSIDE-487 Change-Id: I609ece08cbab78d2fe75eaf6cb0b10531aac9b25 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Increase Python minimal accepted versionCristian Maureira-Fredes2018-05-112-4/+4
| | | | | | | | 2.6 -> 2.7 Task-number: PYSIDE-653 Change-Id: Id62717f12e17c50732c796d3d84686fd47597ab0 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Add more QtCore classesFriedemann Kleint2018-05-118-1/+176
| | | | | | | | | Add QIdentityProxyModel, QLockFile, QMessageAuthenticationCode, OperatingSystemVersion and QSignalBlocker. Task-number: PYSIDE-487 Change-Id: I680c3d175394e9d560152a38195d015fc6abb7fa Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Move setup call from CI to wrapper scriptSimo Fält2018-05-113-2/+208
| | | | | | | | | It can be pretty long lasting process to get updates to Qt CI. To speed up pyside specific changes we move some of the logic to pyside repository. Change-Id: I7d60bf96324d5990fb408d69c00aa4d7e8e81a2f Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* Disable WebKitCristian Maureira-Fredes2018-05-091-1/+4
| | | | | | | Removing WebKit support by default. Change-Id: I8cbf94891dc29f940926167414de7bdd35478732 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>