Difference between revisions of "Qt for Python Development Notes"

From Qt Wiki
Jump to: navigation, search
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[Category:Qt for Python]]
 
[[Category:Qt for Python]]
 
== 2020 ==
 
== 2020 ==
 +
==== 28. May 2020 ====
 +
* Releases
 +
** 5.15.0 and 5.14.2.2 were released :) https://www.qt.io/blog/qt-for-python-5.15.0-is-out
 +
** Thoughts about 5.14.2.3
 +
** 5.15.1 release is still not defined
 +
* Documentation
 +
* CI Status
 +
** The limited-api check was somehow bypass by one specific patch https://codereview.qt-project.org/c/pyside/pyside-setup/+/298845 We need to keep an eye to avoid this in the future.
 +
* Backlog status [https://bugreports.qt.io/secure/RapidBoard.jspa?rapidView=262&view=planning.nodetail&selectedIssue=PYSIDE-463&issueLimit=100 check it here]
 +
* QML Integration update
 +
** We are working on finishing the implementation of Q_ENUM, to be able to use the singletonType registration
 +
** Additionally, we are looking into the uncreatableType registration too.
 +
* Development branch for Qt6
 +
** We need the following before jumping into dev.
 +
*** QList/QVector
 +
*** QString -> integrated (clarity)
 +
 +
==== 21. May 2020 ====
 +
* '''Holiday'''
 +
 +
==== 14. May 2020 ====
 +
 +
* CI Updates
 +
** CI blocked due to some provisioning issues in red hat
 +
** 5.14.2.2 Release is on hold
 +
** 5.15 commercial release in preparation
 +
** License check
 +
* 5.15 Release
 +
** Pickling changes
 +
** Examples
 +
** loadUiType
 +
* Tutorials rcc, designer
 +
** Add project's tutorial.
 +
* Continue research of using Qt6
 +
* __qualname__ attributes are almost done
 +
** This changes was required for the pickling support.
 +
 +
==== 7. May 2020 ====
 +
* CI Updates
 +
** Issues with the provisioning, for example the connection with PyPi, still in progress.
 +
** We will add a requirements.txt for provisioning.
 +
* Issues
 +
** PYSIDE-1255 Signal not reached in QML
 +
** Pickling Qt Enums PYSIDE-15
 +
*** Almost finished, but we are waiting for PYSIDE-1285 to be fix (modulename, qualname).
 +
** Many other minor bugs have been fixed, but still there are a couple of strange ones.
 +
** First attempts to build shiboken with Qt6
 +
** Ideas repo re-organization
 +
* Features
 +
** Commercial addons
 +
** Tutorials
 +
*** rcc
 +
*** uic
 +
*** QTranslator (*)
 +
*** ...
 +
** QtAssistant integration
 +
** loadUiType
 +
** The new way of registering QML properties needs to be applied to the code base.
 +
 +
==== 30. April 2020 ====
 +
* CI Updates
 +
** Issues with pip upgrades
 +
** Planning new Python versions for new configurations.
 +
* Update on bugs still around after 5.14.2.1
 +
** 1271: Deadlock (fixed)
 +
** 1255: Signal not reached in QML (still in progress)
 +
** 1280: Research
 +
* Features
 +
** QML interaction
 +
** Q_ENUM and pickling SbkEnum
 +
** Commercial Addons
 +
 +
==== 23. April 2020 ====
 +
* 5.14.2.1 Release
 +
* New bugs around threading:
 +
** https://bugreports.qt.io/browse/PYSIDE-1271
 +
** https://bugreports.qt.io/browse/PYSIDE-1255 needs to be reopen.
 +
* Documentation changes around the replacement of the old pysideuic module
 +
* Q_ENUM update
 +
** How to get a reference from the QMetaObjectBuilder without a QObject based project?
 +
* mypy compatibility
 +
** depends a bit on the Q_ENUM
 +
 +
==== 16. April 2020 ====
 +
 +
* Plan for 5.14.2-1 release
 +
* Research on Pickling support, PYSIDE-15
 +
* Provided fix for PYSIDE-1267  related to efforts of exposing QScintilla
 +
* Object dumper to help debugging python implementations
 +
* Debugging options for the code model.
 +
* pysideuic old functionality into the QUiTools module
 +
** compileUI
 +
** loadUiType
 +
* Q_ENUM discussion
 +
 +
==== 9. April 2020 ====
 +
 +
* Most bugs reported in 5.14.2 are fix on 5.14
 +
** Preparing the process for the release of 5.14.2-1
 +
** Check about versioning on pypi to not override 5.14.2 wheels.
 +
* PYSIDE-813 is now fixed
 +
* PYSIDE-1255, Signals not being emitted.
 +
* Working on Q_ENUM
 +
 +
==== 2. April 2020 ====
 +
 +
* 5.14.2 is out:
 +
** keep an eye on new bug reports.
 +
*** https://bugreports.qt.io/browse/PYSIDE-1253
 +
*** https://bugreports.qt.io/browse/PYSIDE-1254
 +
*** https://bugreports.qt.io/browse/PYSIDE-1255
 +
** The new documentation is out too: https://doc.qt.io/qtforpython/
 +
* 'manylinux1' discussion
 +
* CI status
 +
* 'loadUiType' status https://bugreports.qt.io/browse/PYSIDE-1223
 +
** two approaches for it, a Python and another in C.
 +
* PYSIDE-813
 +
** Finding where the reference is gone, but there is the only issue left.
 +
** All the other issues were solved.
 +
** A solution should be out soon.
 +
* Research on adding Python support for Qt's lupdate: PYSIDE-1252
  
 
==== 26. March 2020 ====
 
==== 26. March 2020 ====
Line 7: Line 128:
 
* OKRs Update
 
* OKRs Update
 
** Looking for commercial opportunities
 
** Looking for commercial opportunities
* CI Updates
+
* PYSIDE-813 new discoveries found:
* PYSIDE-813 new discoveries.
+
** There are a couple of issues with one of the PYSIDE-803 patches that will be solved soon.
* Lambda functions for QWebEnginePageCallback PYSIDE-946
+
** PYSIDE-164 is out of the picture
 +
* Lambda functions for QWebEngineCallback PYSIDE-946 so we can expose the missing bindings.
 
* QVariant conversions tweaks PYSIDE-1250
 
* QVariant conversions tweaks PYSIDE-1250
* Working on adding 'loadUiType' into PySide (PYSIDE-1223)
+
* Working on adding 'loadUiType' into PySide PYSIDE-1223
* Research on adding Python support for Qt's lupdate
+
* Research on adding Python support for Qt's lupdate: PYSIDE-1252
  
 
==== 19. March 2020 ====
 
==== 19. March 2020 ====

Revision as of 08:56, 28 May 2020

2020

28. May 2020

  • Releases
  • Documentation
  • CI Status
  • Backlog status check it here
  • QML Integration update
    • We are working on finishing the implementation of Q_ENUM, to be able to use the singletonType registration
    • Additionally, we are looking into the uncreatableType registration too.
  • Development branch for Qt6
    • We need the following before jumping into dev.
      • QList/QVector
      • QString -> integrated (clarity)

21. May 2020

  • Holiday

14. May 2020

  • CI Updates
    • CI blocked due to some provisioning issues in red hat
    • 5.14.2.2 Release is on hold
    • 5.15 commercial release in preparation
    • License check
  • 5.15 Release
    • Pickling changes
    • Examples
    • loadUiType
  • Tutorials rcc, designer
    • Add project's tutorial.
  • Continue research of using Qt6
  • __qualname__ attributes are almost done
    • This changes was required for the pickling support.

7. May 2020

  • CI Updates
    • Issues with the provisioning, for example the connection with PyPi, still in progress.
    • We will add a requirements.txt for provisioning.
  • Issues
    • PYSIDE-1255 Signal not reached in QML
    • Pickling Qt Enums PYSIDE-15
      • Almost finished, but we are waiting for PYSIDE-1285 to be fix (modulename, qualname).
    • Many other minor bugs have been fixed, but still there are a couple of strange ones.
    • First attempts to build shiboken with Qt6
    • Ideas repo re-organization
  • Features
    • Commercial addons
    • Tutorials
      • rcc
      • uic
      • QTranslator (*)
      • ...
    • QtAssistant integration
    • loadUiType
    • The new way of registering QML properties needs to be applied to the code base.

30. April 2020

  • CI Updates
    • Issues with pip upgrades
    • Planning new Python versions for new configurations.
  • Update on bugs still around after 5.14.2.1
    • 1271: Deadlock (fixed)
    • 1255: Signal not reached in QML (still in progress)
    • 1280: Research
  • Features
    • QML interaction
    • Q_ENUM and pickling SbkEnum
    • Commercial Addons

23. April 2020

16. April 2020

  • Plan for 5.14.2-1 release
  • Research on Pickling support, PYSIDE-15
  • Provided fix for PYSIDE-1267 related to efforts of exposing QScintilla
  • Object dumper to help debugging python implementations
  • Debugging options for the code model.
  • pysideuic old functionality into the QUiTools module
    • compileUI
    • loadUiType
  • Q_ENUM discussion

9. April 2020

  • Most bugs reported in 5.14.2 are fix on 5.14
    • Preparing the process for the release of 5.14.2-1
    • Check about versioning on pypi to not override 5.14.2 wheels.
  • PYSIDE-813 is now fixed
  • PYSIDE-1255, Signals not being emitted.
  • Working on Q_ENUM

2. April 2020

26. March 2020

  • 5.14.2 Release
  • OKRs Update
    • Looking for commercial opportunities
  • PYSIDE-813 new discoveries found:
    • There are a couple of issues with one of the PYSIDE-803 patches that will be solved soon.
    • PYSIDE-164 is out of the picture
  • Lambda functions for QWebEngineCallback PYSIDE-946 so we can expose the missing bindings.
  • QVariant conversions tweaks PYSIDE-1250
  • Working on adding 'loadUiType' into PySide PYSIDE-1223
  • Research on adding Python support for Qt's lupdate: PYSIDE-1252

19. March 2020

  • 5.14.2 Release preparations
  • Work on Widget gallery example
  • Done: Refinements to wheel-tester.py
  • Done: Reworked test_wheel.py for macOS
  • Done: Fixed PYSIDE-1247 signature warning in Python 3.6
  • In progress: Instrumentation of PYSIDE-164/813

12. March 2020

  • CI Status
    • Everything up and running
    • 5.14.2 to be released next week hopefully.
  • PYSIDE-803
    • Almost there!
    • retrieveMetaObject improvements.
    • We will try to test it without the allow-thread patch to evaluate performance.
  • PYSIDE-813
    • we will keep PYSIDE-164 open until we find a solution that fixes both.
  • Starting to evaluate std::function compatibility with Shiboken.

5. March 2020

  • CI Update
    • Including Python 3.8
    • Maybe using alternatives to have many Python versions.
  • Priority bugs
    • PYSIDE-803
      • major changes in (caching)
      • still other minor patches to be merged.
      • allow-thread patch has a bug, maybe this can be detach from the snippets one.
    • PYSIDE-813
      • PYSIDE-164 appears again if we fix it,
      • Maybe a solution is to fix 164 in another way.
  • 5.15 feature status
  • Changes for Qt 6

27. February 2020

  • CI Updates
    • 5.12 cherry-picks
  • qApp
    • Deprecation message or alias (when using QtWidgets.qApp)
  • PYSIDE-803
    • Missing patches to be merged
      • Python 2.7 issues
      • allow-thread commit message (add a changelog)
      • second caching mechanism to be studied after we merge the first set of patches.
      • Third attempt after the stackless gilstate approach
    • Documentation
  • Python 3.8 testing is still being worked out

20. February 2020

  • CI Updates
    • Cherry-picking some changes to 5.12 to fix the virtualenv 20 issues.
    • macOS timeouts
    • possibility of merging simple changes directly.
  • qApp issues
    • Patches ready for review
  • PYSIDE-803
    • Patches needs some polishing
  • Testrunner improvements
    • stdout/stderr issues with ctest on windows
    • smart pointers tests crashing, due to qApp issues.
    • Python 3.8 is also giving problems (DLLs missing)
    • debug builds on windows does not work.
  • Shiboken documentation being reorganized
  • Starting testing Python 3.9

13. February 2020

  • CI updates
    • Windows package signing will be possible, hopefully soon.
  • Documentation updates
    • Example gallery
    • WebChannel example merged,
  • Python 3.8 changes on Windows are still being tackled.
  • Bugs
    • PYSIDE-803 status: A patch waiting for review is there, but we need to combine it with the other solutions we currently have. Still, there are some corner cases where the problem is not properly solved.
    • qApp issues to be solved, but we will remove the import features. qApp will remain as a built-in.
  • OKRS 1Q/2020

6. February 2020

  • CI status and issues with the Qt provisioning 5.12
    • 5.12.7 release will take more time to add new features.
    • 5.14 has some issues with OpenGLFunctions.
  • Documentation: Interest for the new shiboken2 documentation structure and usage of the ApiExtractor.
  • Python 3.8 compatibility with older branches.
  • Updates on PYSIDE-803 link
  • Suggestion about iterations a-la-python https://bugreports.qt.io/browse/PYSIDE-1216
  • Events
    • Qt World Summit 2020 Palm Springs
    • PyCon US

30. January 2020

  • 5.14.1 release rolling
  • Work on PYSIDE-1204
  • Work on PYSIDE-1191 PySide2 5.14 source now builds against Qt 5.12 as well
  • Further research on PYSIDE-803
    • full instrumentation of generated source for tracing,
    • discovery of new hooks to support. Still in flux.
  • Fixed some issues of Python 3.8 (most prominently warnings about implicit conversion to integers for QFlags), will be fixed in 5.14.2
  • qApp macro PYSIDE-1178 PYSIDE-1158 PYSIDE-1135 finally closed. One cleanup check in may follow.

23. January 2020

  • Fix for CI/macOS problem is in, but it requires some merges in Qt5. Until all required merges are done, we will use Qt5 5.14.1 with Qt For Python 5.14
  • Research on PYSIDE-803
  • Proposed an "until" attribute for typesystem files to make it possible to build Pyside 5.14 against Qt 5.12 PYSIDE-1195
  • Improved the view of compare app for PYSIDE-803
  • Analysis of PyQt5 and SIP implementation

16. January 2020

  • CI/macOS problems are being worked.
  • qApp fix waiting to be merged.
  • first attempts to tackle PYSIDE-803
  • Python 3.8 fix to old branches is required for distributions using 5.12 LTS like Conda.
  • Working on Q_ENUM support.
  • Viewer for PYSIDE-803 is ready to try. Please check out https://git.qt.io/playground/pyside-compare.git and give feedback.

9. January 2020

  • PYSIDE-803 needs to be tackled soon, it's critical, and we cannot carry that into Qt6.
  • Python 3.8.1 on Windows has some issues while building.
  • qApp macro changes discussion.
  • documentation updates are still pending.
  • with the release of 5.14 we have been fixing many details from uic's Python support.
  • designer's RUNPATH needed to be patched, waiting for approval,
  • A modular way of packing wheels is being studied.
  • Re-take the Python extensions for QtCreator project evaluation.

2019

2018