Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.

PySide2: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Update 14.7.2016)
No edit summary
Line 55: Line 55:
  - results: https://paste.kde.org/pgje2toyh/mlbqic
  - results: https://paste.kde.org/pgje2toyh/mlbqic
  - COIN setup for pyside https://codereview.qt-project.org/#/c/158336/
  - COIN setup for pyside https://codereview.qt-project.org/#/c/158336/
  - Qt 5.7 still blocked due to issing C++11 support in shiboken
  - Qt 5.7 still blocked due to missing C++11 support in shiboken
     - food for ideas: https://steveire.wordpress.com/
     - food for ideas: https://steveire.wordpress.com/



Revision as of 11:35, 14 July 2016

Pyside for Qt 5.x

The Pyside 2 project aims to provide a complete port of PySide to Qt 5.x. The development started on GitHub in May 2015. The project managed to port Pyside to Qt 5.3, 5.4 & 5.5. During April 2016 The Qt Company decided to properly support the port (see details ).

This wiki page tracks the progress of PySide for Qt 5.x development and provides further information concerning the effort.

Tools

The following tools are used to develop PySide:

Getting started

<TODO>

Backlog

The list below represents some short term targets and long term ideas for Pyside2 development. There is no guarantee that this will happen as written down. It is meant as a short reminder and idea collection for future development. In the long term this list is likely to move to https://bugreports.qt.io/browse/PYSIDE.

  1. First time with Pyside (Document how to get started on this wiki)
  2. Testing Infrastructure
    1. What has been done so far?
    2. Qt CI
      1. make test
      2. cmake based build system (all repos)
      3. pip installable Pyside
        1. CI has to setup virtual Python environment
        2. Use pip to install/build Pyside
  3. Future changes to PySide
    1. Gaps (modules & API)
      1. Identify the extent of the gaps by porting existing examples from Qt4 to Qt5 (ongoing)
      2. No OpenGL support
      3. Plugin system (in what form or shape do we need it is uncertain - some failing tests exist already)
      4. Prepare a summary of gaps for other modules
    2. Fundamental Architecture changes
      1. Shiboken
        1. Clang support
        2. John Ehresmann wrote a python parser as Shiboken replacement
      2. QtQML?
    3. MyPy (type annotation - fully typed Python API)
    4. General Python features and their adoption in PySide (e.g. Async I/O)
    5. Creator and tooling

Notes

14 July 2016

- Pyside 2 examples ported
- OpenGL & SVG not working
- QtQuick 2 is in strange situation (QtQml depends on QtQuick)
- Python 3 realed Unicode handling not working with Qt
- QMessageBox hangs
- no documentation for any example
- results: https://paste.kde.org/pgje2toyh/mlbqic
- COIN setup for pyside https://codereview.qt-project.org/#/c/158336/
- Qt 5.7 still blocked due to missing C++11 support in shiboken
   - food for ideas: https://steveire.wordpress.com/


7 July 2016

- automated CI testing
- patches for Pyside and Qt CI side required
- Testing somewhat more complicated due to closed nature of Qt CI 
- script to port examples to Qt 5 -> https://bugreports.qt.io/issues/?jql=labels%20%3D%20exampleport5
- all examples to remain BSD licensed