Qt for Python Development Notes

From Qt Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

2023

16. March 2023

  • General
    • Preparing submissions for Europython
    • New company colors
  • Infra & Releases
    • 6.4.3 release next week (no release branch)
    • Issues with Nuitka 1.5.1 (released yesterday) and the CI didn't like it. Pining 1.5
  • Bugs & Features
    • qtpip: add support for many other operators (for versions)
    • PYSIDE-2254 exit crash issue was fixed
    • PYSIDE-2251 designer issue when not initializing virtual environment.
    • qmlsurface example ported (polishing the C++ code as well)
    • example icons: discussions to standardize them a bit
    • android research: fixing some issues with qtquick
    • PYSIDE-1564 multiple inheritance work continues, really far but found new issues. Generalizing the solution a bit from a Shiboken point of view. Research on how shiboken handle multiple inheritance to be compatible with Python's way.
    • PYSIDE-2255 virtual method issue related to access to those members.
    • Generalization of QApplication usage on the tests.
    • Research: Add course to QtLearn related to Qt for Python
    • doc: some links are broken.
    • doc: migration to sphinx-design from sphinx-panels

9. March 2023

  • General
  • Infra & Releases
    • Preparing 5.15.13: release might be today if nothing goes wrong.
    • Wheel bundles on the account.qt.io, and soon to be available in the Maintenance Tool
  • Bugs & Features

2. March 2023

  • General
    • Preparing internal/external material
    • Next monday CI maintenance break
  • Infra & Releases
    • commercial wheel bundles available on account.qt.io
    • 6.4.3 release was postponed
  • Bugs & Features
    • Improvements for qtpip
    • postEvent() memory leak still has an unknown origin
    • PYSIDE-2236 QMetaMethod.fromSignal added
    • PYSIDE-2237 be careful with using reserved words in examples/docs/...
    • PYSIDE-2239 opaquecontainers wrong dunder name
    • PYSIDE-2206 Examples revamping
      • Maybe we keep some examples around even if they are removed in Qt/C++
    • Android work continues! looking good with 6.5
    • PYSIDE-1564 Multiple inheritance story was improved, still in progress.

23. February 2023

  • General
    • Giving a talk at Python La Paz (on Saturday) - in Spanish
  • Infra & Releases
    • 6.4.3 ready to start the release process
    • Change to fix the windows signing is merged
  • Bugs & Features
    • 3.12 compatibility changes will reach 5.15, 6.2, and the future 6.5 LTS
    • PYSIDE-79 (caused by PYSIDE-68) refcounting issues addressed
    • Continue the 3.12 support because of some new issues found
    • PYSIDE-1564: Multiple inheritance support is still being worked (old ABC issues might be related)
    • Issues with documentation build (sphinx)
    • Research on a memory leak related to the asyncio example: it's not related to asyncio, but from the posting action (pyside, and not Qt, because a C++ example with no async doesn't have any leak)
    • PYSIDE-2234 adding QRunnableCreate
    • fixed 6.5 issues with cross compilation
    • Designer examples revamp
    • Works continues on qtpip (a pip wrapper to install commercial wheels)
    • PYSIDE-2232 NixOS issues was fixed (another was deferred)
    • Research on the std::span support
    • Unity compilation research continues
    • Bug cleanup, closing and fixing old ones.
    • OpenGL getProc issue is being worked on.
    • PYSIDE-2192 interactive matplotlib issue (hook)

16. February 2023

  • General
    • Development of a tool for commercial wheel installation started, and other general improvements.
    • Blog posts -> 6.5 release, and Android research.
    • Don't forget about Europython.
  • Infra & Releases
    • Branching dev to 6.5 when the Qt/C++ 6.5.0 RC is out (16 Mar '23)
      • Only fixes go to dev with Pick-to: 6.5 if necessary
      • new features remain in dev (for 6.6)
  • Bugs & Features
    • nogil research was positive, and most of our test work. It would require for us to modify the generator for each function/module.
      • mandelbrot example works and improves its performance around 3.5 times.
    • Python 3.12 will include an incompatibility due to the changes in the type generation
    • It will be possible to install pyside6 in conda environments starting from 6.4.3 and 6.5
    • commercial identifier on commercial wheels will be replaced to be compatible with distutils
    • asyncio research continues
    • Adapting the deploy tool to include compatibility with android (in progress)
    • research on ML-based tool to transform c++ <-> python
    • Getting started docs updated
    • qtdoc documentation content will be included in the docs
    • doc issues: some broken links and references
    • General slides to be updated


09. February 2023

  • General
  • Infra & Releases
    • LTS tags cannot be pushed to community repo (permissions), hopefully in this week.
    • Maintenance Tool updates soon
    • Binary signing still need a little change to be working
    • dev to use 6.5 starting today
  • Bugs & Features
    • Android research in progress, looking good :)
    • A solution was proposed to fix the usage of PySide6 in conda environments: still needs tweaks to work, mainly related to an internal qt.conf that's loaded at runtime.
    • PYSIDE-2222 custom widget plugin, load with uic crash
    • PYSIDE-2201 was fixed: introducing weak references into the SignalInstances.
    • PYSIDE-79 was possible to solve (from PYSIDE-68 solution). Still needs to some documentation to be written.
    • PYSIDE-2221 research on future compatibility with NoGIL Python https://github.com/colesbury/nogil https://peps.python.org/pep-0703/
    • https://github.com/blueloveTH/pocketpy also interesting

02. February 2023

  • General
    • Europython 2023 will be in Prague! 17-23 July
  • Infra & Release
    • Improving wheel creation in our CI (signing windows, and other things)
    • Soon we will have released LTS in the OSS repo (after some complications)
    • CI Maintenance break coming next Monday (keep an eye open to the Python configuration)
  • Bugs & Features
    • Unity builds were helping pyside/shiboken, and some tests are being done in qt/c++
    • meta task on revamping examples in the Qt Project
    • Adding uic functionality and documentation
    • Doc reviews, some issues were found
    • Android development continues, and looks good!
    • introducing --log-level to change --verbose-build and --quiet
    • Overhaul of Signal/SignalInstance continues:
    • create_wheels.py --builddir to explicitly provide build directory
    • WIP: QtAsyncIoEventLoop using Qt's event dispatcher, using BaseEventLoop and BaseSelectorEventLoop for guidance

26. January 2023

  • Infra & Releases
    • Fixed issues with Windows signing
  • Bugs & Features
    • Fixed PYSIDE-2204 qt.conf encoding
    • Fixed bugs in pyside6-metaobjectdump (QML) PYSIDE-2202 , PYSIDE-2203
    • PYSIDE-2194: Possibly requires refactoring of QLowEnergyController to use the new WinRT API, instead of COM API
    • Android Deployment - Patches incoming to automate cross compilation to produce android wheels
    • Overhaul of Signal/SignalInstance
      • Implement Weak Reference Handling
      • PYSIDE-2201 Handle early destruction of the object better
      • PYSIDE-79 Trying to finally fix the reference leak using weakref.
    • Alternative approach to Anaconda issue: Register internal qt6.conf with site-packages prefix (still WIP).
    • WIP: Implement class QtAsyncIoEventLoop(asyncio.AbstractEventLoop) that wraps around Qt's event loop to enable Qt + asyncio.
    • Memory leak with current asyncio example (or space leak?)

19. January 2023

  • General
    • Hackathon in TQtC
    • The WebAssembly PySide Team was almost doubled in size (+1 brain, +1 hand)
  • Infra & Releases
    • Windows signing to be improved.
    • LTS releases into oss repo: some issues appeared but will be merged soon.
  • Bugs & Features
    • PYSIDE-1994: De-virtualization of Shiboken embedded Python files is now an option controlled dynamically by SBK_EMBED
      • PYSIDE-1019: A dormant __feature__ initialization timing problem was fixed while implementing de-virtualization
    • PYSIDE-1735: De-coupling of old and new enums was started
    • PYSIDE-1564: Debugging of multiple inheritance continues
    • Fixed some bluetooth functions in PySide6.
    • Low Energy Scanner Example
    • PYSIDE-2194: Progressing with this. Definitely a thread issue which allow-thread doesn't seem to fix.
    • Possible solution for problems with PySide6 inside conda (compat package with qt6.conf file), but investigating if best solution

12. January 2023

  • General
    • Next week is Hackathon, meeting will be shorter
    • Discussion on how to gather information, and sharing material around Qt for Python
  • Infra & Releases
    • 6.5 RC planning -> feature freeze for PySide
    • 6.4.2 was released last Monday
    • CMake Jumbo builds issue with Windows signing
    • LTS branches to land in pyside-setup soon
  • Bugs & Features
    • Async examples: addressing memory leak and cpu usage due to the event loop interactions
    • Review conda packaging story and PySide6
    • De-virtualization of Python files: still some issues
    • Incompatibility with pywin32: __feature__ related when trying to check if the ext module uses PySide. Also related to an issue with the inspect module.
    • Installing PySide6.support via CMake (was previously not considered)
    • Work continues on the multiple inheritance issues related to classes based on QObject
    • locate issues related to to* methods
    • std::array support in shiboken (still in progress)
    • fixing imports in matplotlib examples
    • adaptation to 6.5
    • splitting shiboken generator source to its own
    • Android deployment works - tested on Widget applications
    • Fixing QTBUG-109510 leading to discovering issues with certain functions in PySide6. Being fixed.

5. January 2023

  • General
    • Next monday CI maintenance
    • OKRs
  • Infra & Releases
    • 5.15.12 LTS, 6.2.7 LTS released
    • Open Source LTS releases to be moved to the pyside-setup
    • 6.4 CI hanging, issues on lts-5.15 due to Python
    • 6.4.2 to be release in the following days
  • Bugs & Features
    • PYSIDE-1931 SQL issue regarding allow-thread
    • helping 6.5 translations
    • Adaptations with 6.5
    • QSharedPointer -> std::shared_ptr attempt
    • research on adding std::span into shiboken
    • PYSIDE-2160 properties qml types issues
    • Tutorials language review
    • Android research continues
    • QTBUG-109510 BTLE issue on pyside

2022

2021

2020

2019

2018