aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* doc: enable snippets translate toolCristian Maureira-Fredes2021-03-261-26/+53
| | | | | | | | | | | | | | | | | Create snippets directories in case they don't exist. Add "-q" option as the examples directory to keep the "--quiet" option from the build. Something to consider with this patch: Removing all the previous old snippets, which include not only 'cpp' files, but also '.h', '.qdoc', '.qrc', '.png', and '.qml', which might be used in the snippets, but will need to be updated in the generation tool, to not translate, and copy them over. Change-Id: Icbef9e1c93a12b90dbcfa990ef055ca6f8868407 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 9a4fb2eb72040aeadf6124ec1cad083859ac0787) Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* doc: snippet translate add missing quiet caseCristian Maureira-Fredes2021-03-261-1/+2
| | | | | | | Change-Id: I6d3520e9544d7d169a9c933a8aa904747bc7c6c4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit b89b8daeeac7b2b22c3887fa83fe0b986f9baec7) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: create examples dir if it doesn't existCristian Maureira-Fredes2021-03-181-3/+8
| | | | | | | | | For the examples gallery tool Change-Id: Ia77d2d22033ccb35df30fa8ed4c7f78de070dec1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 78ac4372ec5b84bd3ef2deac4c41aeacbcdb56ae) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Long live snippets_translate!Cristian Maureira-Fredes2021-03-188-0/+2031
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is not a C++ -> Python translator, but a line-by-line conversion tool. This scripts requires two arguments to identify a Qt and PySide directory including the sources. There is a set of file extensions that are currently omitted from the process, and for the ones that will be copied, there will be messages related if the file already exists or if it's new. If you use the '-v' option, you will see the C++ code and the converted Python code, so it's easy to check for issues and missing features. Also, two command line options were added to have a different behavior '--filter' to include a word to filter the full paths of all the snippets found (for example the name of a directory), and '-s/--single' to translate only a specific C++ file to be translated. Including test cases for transformations related to the C++ snippets. Fixes: PYSIDE-691 Change-Id: I208e3a9139c7e84fe369a7c2ea93af240d83fa83 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit 1c65d71c468f2166ab20a867011a6d217a5f3ec1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: migrate qdoc approach to document examplesCristian Maureira-Fredes2021-03-171-8/+0
| | | | | | | | | | | | | | | | | | There were two previous documented examples using the approach based on qdoc: stardelegate, and classwizard. This patch moves them into the 'doc/' directory for each example, and partially revert the changes from 308157f01260c640e21f6972619d3b380c007acb Additionally, an unrelated screenshot was moved to a new general 'images/' directory. Task-number: PYSIDE-1112 Change-Id: I239a24fa4e4f970540857ba8b33b9b13c18142b1 Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit d97aedf37809c479ab409c4247b60c0cfcef35d6) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: add sphinx-panels to the documentationCristian Maureira-Fredes2021-03-171-52/+27
| | | | | | | | | | | | | | | | | | | | | | | This plugin replaces sphinx-tabs, so that's removed. The panels plugin will add bootstrap responsive cards to the docs allowing us to use them instead of the ad-hoc table we had. Additionally, this changes the example gallery tool too, since the main gallery was built using our own table implementation. Since Panels also provides options to add content in tabs, with CSS instead of JS (from sphinx-tabs), we update the generated examples files. Fixing warning messages related to files that didn't exist, duplicated references, and redundant indexes. Task-number: PYSIDE-1112 Change-Id: Id19be92e72f0a18f63b76daf1898080f3e199626 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 4750fbcb8e5d1f0137a8660ffa77f595dac46504) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: use 'doc' directory for examples galleryCristian Maureira-Fredes2021-03-171-32/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The initial patch that generates a gallery based on the examples in the respository, was limited to only showing the content of the files in each '.pyproject' file. That approach didn't allow to describe each example, nor add complementary images, like screenshots to each example page. This patch introduces the option to consider everything inside a 'doc/' directory on the example directory. The files that are copied over are not directory, but only files, for images to be the main focus. For example, currently the Tetrix case contained the following files: $ ls examples/widgets/tetrix/ tetrix.py tetrix.pyproject On this patch you can see that now there is a doc directory with the following content: $ ls examples/widgets/tetrix/doc tetrix-screenshot.png tetrix.rst The example page that will be generated for this case will contain the content of the 'doc/tetrix.rst' file, plus the content of all the project files at the end. The 'doc/tetrix.rst' file contains a reference to the 'tetrix-screenshot.png' image, so that file will be copied over too. Task-number: PYSIDE-1112 Change-Id: I2d11833c461d8073d2d2888576d876d3f834103a Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit f930fce091fbcc0cdc4d1d57ee688966b26ea53e) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* doc: example gallery show code in tabsCristian Maureira-Fredes2021-03-031-14/+44
| | | | | | | | | | | | | | | | Before this patch, the auto-generated documentation page had all the files from the .pyproject listed one after the other. This uses a new sphinx extension called sphinx-tabs https://github.com/executablebooks/sphinx-tabs which allows us to easily add content in tabs. Task-number: PYSIDE-1112 Change-Id: Ibd66a8c911f05be13ae2700be6d3e95a2b98b775 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit a7c7c729a388b0a4e0e104fac1130feb6e03151b) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* create_changelog.py: Fix shiboken versionFriedemann Kleint2021-02-251-1/+1
| | | | | | | Change-Id: If8d3bfdde3a1afe5cced1be4d3c8bcc92256048e Reviewed-by: Christian Tismer <tismer@stackless.com> (cherry picked from commit e389b7b6c497e1a38d5ace23f2e96732ca72553c) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
* Silence the example_gallery toolFriedemann Kleint2021-02-101-4/+17
| | | | | | | | | | Add a --quiet option and use that for quiet builds. Task-number: PYSIDE-1490 Change-Id: I6b8a3fa159acb85dee5fbc064991a09a9fa6ceda Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> (cherry picked from commit 9f8fc934818c3ae7473fe6258056bc7c7bf9f718)
* doc: add tool to generate examples galleryCristian Maureira-Fredes2021-02-091-0/+256
| | | | | | | | | | | | | | | | | | | | | | This script generates a gallery for all the example currently in pyside-setup/examples. Using this tool will overwrite the index rst file for the examples located in 'sources/pyside6/doc/examples/index.rst Additionally, to display the code of each example, this will generate one extra .rst file for each example that contains a .pyproject file, for example: 'sources/pysides6/doc/examples/example_widgets__tetrix.rst' Currently, the usage of this tool is not incorporated in the documentation building process. Task-number: PYSIDE-1490 Change-Id: I78546d4c7905fd8b521f4112457980b4d1d56860 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit e8eac85a5db8386689ffe174694f82c1e5dad854) 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>
* PySide: write a renamer script for debuggingChristian Tismer2021-01-112-0/+318
| | | | | | | | | | | | | | | 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>
* python3: remove all obsolete "from __future__" import statementsChristian Tismer2020-11-092-4/+0
| | | | | | | | | | | Note that not all future statements can be removed: PEP 563 for instance deals with from __future__ import annotations Task-number: PYSIDE-904 Change-Id: Ia387ec87f3c68ca64d13e8e80191eda900f58638 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Rename PySide2 to PySide6Friedemann Kleint2020-11-028-30/+30
| | | | | | | | Adapt CMake files, build scripts, tests and examples. Task-number: PYSIDE-904 Change-Id: I845f7b006e9ad274fed5444ec4c1f9dbe176ff88 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Rename shiboken2 to shiboken6Friedemann Kleint2020-10-281-10/+10
| | | | | | | | Adapt CMake files, build scripts, tests and examples. Task-number: PYSIDE-904 Change-Id: I4cb5ee4c8df539546014b08202a7b1e98ed3ff07 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* improve create_changelog toolCristián Maureira-Fredes2020-09-151-2/+5
| | | | | | | | | | Avoiding the corner case when someone reference another patch on the commit message by the whole 40-digit hash. Remove the 'Fixes' or 'Task-number' from the task ID. Change-Id: I51e93a06a9343b74bc94f7f2c2af1c40024daf9d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* metaobject_dump.py: Use the staticMetaObject fieldFriedemann Kleint2020-06-111-4/+4
| | | | | Change-Id: I0fdc4072638ec846e4091fd647b4a471c1e15722 Reviewed-by: Christian Tismer <tismer@stackless.com>
* metaobject_dump.py: Output scope and flag for enumerationsFriedemann Kleint2020-06-081-1/+7
| | | | | Change-Id: I72ea6904c6402e6d9f45b63b887aae32f3d29c29 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Update missing_binding scriptCristian Maureira-Fredes2020-06-082-3/+11
| | | | | | | | Adding also a requirements.txt file to install all the dependencies to compare PySide2 with PyQt5. Change-Id: I655264b17f3dd25f3861eab95ea87950564d4377 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add support for QSerialPortAndreas Buhr2020-05-151-0/+1
| | | | | | | | | | | QSerialPort is part of Qt since Qt 5.1. PySide2 so far had no support for QSerialPort. At the same time, QSerialPort was not listed as unsupported. Task-number: PYSIDE-487 Change-Id: I88d4282a206dadf6f398c3f0e5740f02641724b6 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* metaobject_dump.py: Make output of methods more verboseFriedemann Kleint2020-04-301-4/+26
| | | | | | | | Add parameter names and types. Change-Id: I7f9471b4ec1d52d26b728678a03caf64b93e4b77 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add a tool to dump meta objects of QObject-derived classesFriedemann Kleint2020-04-163-0/+197
| | | | | | | Task-number: PYSIDE-957 Change-Id: Ic5790098eef8e554cd437254277a78db4da8264a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add Python to Qt/C++ conversion toolFriedemann Kleint2020-03-059-0/+1201
| | | | | Change-Id: I275e776248bd55c3c38f5fedd83088bf475a1cf9 Reviewed-by: Christian Tismer <tismer@stackless.com>
* changelog-tool: Add handling of actual changelog entriesFriedemann Kleint2020-03-031-21/+61
| | | | | | | | | | | Scan the commit messages for entries like [ChangeLog][shiboken2] description... and prepend them to the task list. Change-Id: I4cc8599eefb18c0b2c1892b8f23682b15815d1ec Reviewed-by: Christian Tismer <tismer@stackless.com>
* Fix tools\debug_windows.py to properly display possible error snippetsAlexandru Croitor2019-12-091-1/+1
| | | | | | | | The check in find_error_like_snippets was incorrect, and thus never showed any snippets. Change-Id: Ie8d487b071e73c6f4a1352e9b10e616694b2e237 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add better error handling to debug windows python scriptAlexandru Croitor2019-12-091-9/+14
| | | | | | Change-Id: Ibc5171cf94ef819cf7926b899b83cc9de3037d07 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Remove QtScript from missing bindings scriptMariana Meireles2019-12-051-1/+0
| | | | | Change-Id: I456dbb729992146ca3d2320d0d2416d9d3b41339 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Update missing bindings scriptCristián Maureira-Fredes2019-11-281-5/+14
| | | | | Change-Id: Idb86b5ab679137f493cfa46e7d85b48c4e1b8d4b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Move scripts to tools directoryCristián Maureira-Fredes2019-11-183-0/+1194
| | | | | | | | | | The root of the repo should stay clean, at the moment we have too many things around. It makes more sense to move these scripts to the tools directories. Change-Id: Ieca26107dafddfffa2a8dc5b9bb41e9942e0ebfa Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* create_changelog.py: Fix checks for task numbersFriedemann Kleint2019-11-141-7/+11
| | | | | | | | | | The script was failing on commit messages like "Fixes https://github.com/spyder-ide/qtpy/issues/195". Use a regexp to get the number and insert into the dict for convenient sorting. Change-Id: I16499a083d31b85f11d2e7325c7c2c9c6e4332a5 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* create_changelog.py: Silence flake8 and Qt Creator's checkerFriedemann Kleint2019-11-131-11/+15
| | | | | Change-Id: If61585c69e9f73aecd8b001523165df0967721ed Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add script to generate changelogsCristian Maureira-Fredes2019-06-171-0/+219
This tool generate the changelog for the Qt for Python project. Since the structure is different from other Qt project, this script split the changes between the ones to shiboken, and pyside. A shiboken change must contain the word "shiboken" in the title, everything else will be consider a "pyside" change. The only reported commits are the one associated with a certain task: Fixes or Task-number. The option accepts tags, branches or SHAs. Usage: python create_changelog.py -v v5.12.0..v5.12.1 -r 5.12.1 python create_changelog.py -v v5.11.4..5.13.0 -r 5.13.0 -t minor python create_changelog.py -v 9e13465a..5.12 -r 5.12 python create_changelog.py -v 5.17..6.0 -r 6.0 -t major The availables arguments are the following: -d DIRECTORY, --directory DIRECTORY Repository directory, the current one is default. -v VERSIONS, --versions VERSIONS Tags, branches, or SHA to compare e.g.: v5.12.1..5.12 v5.12.0..v5.12.1 cebc32a5..5.12 -r RELEASE, --release RELEASE Release version: e.g.: 5.12.4 -t TYPE, --type TYPE Release type: bug-fix (default), minor, or major There was an issue related to commits that were found twice, having no task number on the second time. Added type annotations for the functions. Sorted the changelog by task-number. Change-Id: Ia283864fa8add03e136afd75fe7a139ce7e190d8 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>