Jump to content

Qt for Python Development Notes: Difference between revisions

From Qt Wiki
AlexBlasche (talk | contribs)
No edit summary
 
(545 intermediate revisions by 14 users not shown)
Line 1: Line 1:
== 2018 ==  
[[Category:Qt for Python]]
==2023==


==== 08. March 2018 ====
===21. September 2023===
- msvcrt.dll to be shipped on Windows
- Release process still missing (do we follow Qt)


==== 01. March 2018 ====
*General
- automatic snapshot process almost in place (pending reviews) (RTA to follow)
**Python 3.12.0rc3 is out, final release scheduled for October 2
- general bug fixing (including build and version problems)
*Infra & Releases
- most community Pyside1 pages point to official Pyside 2 (Qt for Python) wiki pages
**6.6 branched
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] - Heap Type conversions ongoing
**6.5.3 preparations
- documentation improving
*Bugs & Features
  -> class diagrams being generated
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2465 PYSIDE-2465] (3.11.5 test fail)
  -> missing links and references
**Work on [https://bugreports.qt.io/browse/PYSIDE-2462 PYSIDE-2462] (smart pointer features)
  -> dependencies to qdoc bugs
**Refactored options parsing of shiboken
  -> snapshot process in works
**Fixed clang-tidy static analysis issues
- added support for scoped enums in pyside
**Android permissions API: Adapt more C++ examples
- Important things discussed:
**Couple more cleanups and additions to pyside6-android-deploy
  - PySide2 versioning (current proposal WIP patch at https://codereview.qt-project.org/#/c/221767/)
**More manual testing of pyside6-android-deploy. Need to write more integration (mocks) for Android deployment.
    - Do official releases follow Qt branch names? -  
**Final cleanup and resolving tests for python-for-android Qt for Python patch
        -> yes (minor release of Pyside is bound to same minor release of Qt
**[https://bugreports.qt.io/browse/PYSIDE-2468 PYSIDE-2468] -requestPermission() on macOS. Tricky scenario similar to [https://bugreports.qt.io/browse/PYSIDE-2419 PYSIDE-2419]
        -> patch level version may differ
**asyncio's requirement to use ThreadPoolExecutor keeps screwing us over, but resolution close
    - Will we have snapshots, and if so, will they be uploaded to pip? How will we handle snapshot versions?
        -> tentative yes, if public pip server supports snapshots Pyside should be good citizen
    - alpha / beta / RC versioning?
        -> Pyside should follow the Qt schema
    - Probably need to take into account PEPs for versions pushed to Pypi.
    - Shiboken / PySide2 versions in sync?
        -> yes, they should be in sync
    - Will we specify a version for 5.6 branch?
        -> yes, but no packages being made
    - Are we sticking to the package name PySide2, but follow Qt 5.x versions as PySide2 versions?
        -> Pyside2_5.11.0 as in https://codereview.qt-project.org/#/c/221767/
  - Do we want to deploy msvcrt dlls into Windows packages?
    -> needs more research - is it really needed ?
  - Do we want to ship debug symbols for Qt inside the PySide2 packages?
    -> not for now
  - Do we want to ship debug Qt shared libraries for macOS packages? (not possible on Windows, not applicable on Linux afaik).
    -> not for now
  - How will the pip upload process look like? Manual uploads? Who takes care of it?
    -> Qt release team will take care of it
  - Current branching policies:
    -> 5.6 branch stops being merged into 5.9 (after pending patches have merged) -> cherry-pick mode
    -> 5.9 is base line for patches and being forward merged to 5.11
    -> no packages from 5.9 & 5.6 (interested parties need to get it from git)
    -> 5.11 becomes branch for first TP
    -> dev is feature development
    -> all first TP release related patches go to 5.9 (and 5.11 subsequently)


==== 22. February 2018 ====
===14. September 2023===
- dev branch is still/again broken in CI, seems like pyside issues
- changes to create automatic snapshots out of CI is still under review
- Numerous small fixes to the [https://bugreports.qt.io/browse/PYSIDE-363 doc] generation, significantly bringing down the number of documentation warnings
- Massaged build rules to improve built packages
    - Removed unnecessary _utils.py file [https://bugreports.qt.io/browse/PYSIDE-600 PYSIDE-600]
    - Changed wheel package names to contain both PySide2 version and Qt version against which it was built [https://bugreports.qt.io/browse/PYSIDE-613 PYSIDE-613]
    - Finally got libclang to be deployed into packages
    - Improved build process not to copy unnecessary symlinks and duplicating libraries when creating wheel (so that you don't get 3x size increase because of 3x number of WebEngine libraries) [https://bugreports.qt.io/browse/PYSIDE-495 PYSIDE-495]
    - Fixed wheel package names to contain correct minimum deployment target with which macOS was built with (on further analysis, this will need further improvement) [https://bugreports.qt.io/browse/PYSIDE-612 PYSIDE-612]
    - Fixed rpath handling for QtWebEngineProcess when creating standalone packages on macOS [https://bugreports.qt.io/browse/PYSIDE-605 PYSIDE-605]
- Added CMake build rules for scriptable application example [https://bugreports.qt.io/browse/PYSIDE-597 PYSIDE-597]
- Investigated and fixed a heap corruption bug in a test that caused constant crashes on macOS CI runs
- Reduced number of warnings when running shiboken to create user bindings (like scriptable application example) [https://bugreports.qt.io/browse/PYSIDE-587 PYSIDE-587]
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]: Making slow progress, still debugging. It's a difficult process, but assumption is that it will work.
- Havent's merge [https://codereview.qt-project.org/#/c/220083/ this new patch] because we should be 200% sure it's properly working.
- Working on a few bugs [https://bugreports.qt.io/browse/PYSIDE-106 PYSIDE-106] [https://bugreports.qt.io/browse/PYSIDE-570 PYSIDE-570]
- One of the bugs [https://bugreports.qt.io/browse/PYSIDE-611 PYSIDE-611] was valid only for 5.6, but I noticed a strange behaviour on 5.9, so I will keep working on it, even after we move 5.6 to cherry pick mode.


==== 15. February 2018 ====
*Infra & Releases
- CI broken, 5.6 & dev branch broken, 5.9 just got working again
**Testing and fixing qtpip for commercial wheels
- first TP will be 5.11 based (needs 5.11 git branches, 5.6 branch goes into cherry-pick mode, 5.9 branch remains main target)
*Bugs & Features
- more modules added to doc, qt3d & qtquick has some special handling
**[https://bugreports.qt.io/browse/PYSIDE-2460 PYSIDE-2460] Work on some OpenGL issues, updated hellogl2 example
- snippet work ongoing
**[https://bugreports.qt.io/browse/PYSIDE-2461 PYSIDE-2461] Build system for cross build fixes
- snapshot generation on the agenda
**[https://bugreports.qt.io/browse/PYSIDE-2463 PYSIDE-2463] Fixed some type hints
- lots of bug fixing e.g.: [https://bugreports.qt.io/browse/PYSIDE-104 PYSIDE-104]
**Android auto sdk and nkd download merged.
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
**Requestpermission API and all android changes set for 6.6 merged. Will write tests in the meantime and do some manual testing with deploying apps.
**patchelf removal for Qfp binaries merged.


==== 8. February 2018 ====
===07. September 2023===
- Looking through previous EuroPython talks to write a proposal for this year.         
- Working on a few bugs (fixed a couple related to objects references),               
    - that sadly will open new issues with memory management. A further analysis on this matter could improve the current memory leaks on PySide.                         
- Trying to "organise" a little the typesystem XML files.                             
- Working on [https://bugreports.qt.io/browse/PYSIDE-104 PYSIDE-104] that ended up being a general issue on PySide about a proper verification between slots and signals arguments, to find the best match.
- Merged a few build related changes in 5.6
  - Pending change for [https://bugreports.qt.io/browse/PYSIDE-593 PYSIDE-593]
  - Pending change for [https://bugreports.qt.io/browse/PYSIDE-605 PYSIDE-605]
  - Merged changes for [https://bugreports.qt.io/browse/PYSIDE-603 PYSIDE-603] and [https://bugreports.qt.io/browse/PYSIDE-604 PYSIDE-604]
- Investigated and attached minimal reproducible example for [https://bugreports.qt.io/browse/PYSIDE-585 PYSIDE-585]
- Investigated some macOS build related aspects for package release
- 5.6 CI is unblocked, but 5.9 CI is blocked due to qtbase issues (version bumping)
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560] waiting for view
- [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595] work ongoing, not ready yet
- [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363]  Documentation: Fixed images, fix handling of qdocconf files  that contain several modules. Looking at snippet resolution.
- Problems with Qt3D due to refactoring of Qt3Dextras in 5.10. Pushed  [https://codereview.qt-project.org/#/c/219105/ patch] suggestion.


==== 1. February 2018 ====
*General
- Continued work on documentation [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363], fixed static pages, add more modules, fixed parameters to qdoc, images
**Majority of the team on holiday
- The GettingStarted wiki is getting better, besides a cleaning it a bit
*Infra & Releases
  - moved the topics around to have guidelines by supported platform (''a la Qt'')
**Preparing 6.2.10, 6.5.3, 6.6.0
  - have received feedback and trying to add more information
*Bugs & Features
- Addressed bugs:
**PYSIDE-2393 pytest problem with feature is fixed
  - [https://bugreports.qt.io/browse/PYSIDE-34 PYSIDE-34]
**PYSIDE-2428 feature problem caused long search, has to be fixed in matplotlib
  - [https://bugreports.qt.io/browse/PYSIDE-264 PYSIDE-264]
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2444 PYSIDE-2444] QState.assignProperty - incorrect type annotation
  - cleaning a bit Shiboken's XML files.
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2454 PYSIDE-2454] Default argument is not used for containers
  - [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
**Added some number protocol slots [https://bugreports.qt.io/browse/PYSIDE-2446 PYSIDE-2446]
    - ported to 5.9, extended to 18 header files
**Research on submodules [https://bugreports.qt.io/browse/PYSIDE-2447 PYSIDE-2447]
    - solved unicode problem
**qtpip for commercial wheels polishing touches
    - reduced the patches to be minimal (avoid many #ifdef's, use a verbose macro name if possible)
    - made everything compile but one announced file: "object.h" depends on the heaptypes solution ([https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]). Removed WIP status,review pending.
  - [https://bugreports.qt.io/browse/PYSIDE-595 PYSIDE-595]
    - Started experimenting
    - turned out that the signature extension barfed because it could no longer find the type "__name__". The function PyType_Type.tp_new needs to be called to provide the "ht_name" attribute that is used in heaptypes.
- solving the attribution file issues.
- Pending patches to fix libICU issues
- Pending patches to fix OpenSSL issues [https://bugreports.qt.io/browse/PYSIDE-599 PYSIDE-599]
- Pending patches to deploy libclang library for shiboken
- Improved documentation about OpenSSL dependency
- Pending patches for cleaning up build scripts a bit (logging and refactoring)
- Pending patches to reduce barrage of warnings [https://bugreports.qt.io/browse/PYSIDE-587 PYSIDE-587]
- Pending patch for adding CMake build rules for the scriptable_application example (useful as a reference on how to use shiboken for custom bindings) [https://bugreports.qt.io/browse/PYSIDE-597 PYSIDE-597]
- Old 5.6 CI integration issue fix, but a new issue appeared that was fixed for 5.9 and dev, but still blocks 5.6
- Updated the qml basics tutorial


==== 25. January 2018 ====
===31. August 2023===
- Pyside not renamed
- Releasing preparation
  - pip packages created by coin
  - Automated release testing (RTA) (installing pip, launching an example)
  - final selection of release package targets to be define closer to release (depending on current stable ABI work)
- Investigation doc issues when using prefix & shadow builds
- Need to identify prime demos/examples
- Started to rework [[PySide2 GettingStarted|Getting Started Guide]] wiki
- Addressed cmake build issues
- Handling libICU issues (causing linker issues when importing QtCore)
- Continued work on [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
-


==== 18. January 2018 ====
*General
  - macOS framework fix (should ignore qt4 system headers)
**Python 3.11.5 released
  - another patch on top to fix OpenGL integer types on mac / Linux (GLuint64, GLint64)
**PyCon Spain talk was accepted - Adrian giving a talk for the new Async story, in October.
  - Fixed so that PySide 5.6/5.9 is not linked against the Python shared / static library (this was wrong because the symbols need to be picked up by the dynamic loader from the python interpreter itself). http://bugreports.qt.io/browse/PYSIDE-522
**People on leave in September
  - Completed move of examples from pyside-examples.git to pyside-setup
**FF on Qt for Python overview
  - added additional OpenGL2 core example
*Infra & Releases
  - fixed testrunner (these silently failed since forever) https://codereview.qt-project.org/#/c/216732/
**Planning 6.6 for the last days of September
  - fixed issues whereby wrong QObject ctors were selected
***Maintenance Tool update for qt for python
  - removed webkit from Pyside2 build 
***Features until 12.09
  - talk about Windows specific instructions for [[PySide2 GettingStarted|Getting Started Guide]]
****Feature issues + multiple inheritance
  - Qt3D issues in Qt 5.10 fixes
****Async story needs some testing
  - clazy warning fixes
****Android patches (new modules, plugins, permissions, etc)
  - Stable ABI work (started to convert implementations) (see [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560])
****qtpip for commercial wheels
    - requires adoption of HeapTypes
****new QtCreator templates?
  - QML tutorial updates
**6.2.10 Commercial LTS and 6.5.3
  - Doc snapshots being prepared
*Bugs & Features
**Lazy imports still in progress, might be available for 6.7
**QmlSingleton crash was fixed
**JIRA was cleaned a bit, many invalid issues
**Signal signatures were adjusted
**PYSIDE-748 additional parameter metamethod (old issue)
**QDataStream read/write data accepting bytes too
**New CMake Qt API has lots of features for qml, resources, etc which might not be too compatible with Qt for Python.
**PYSIDE-2429 macOS deployment min version fixed
**patchelf removal is ready to merge (motivated by android research)
**android: permission API, need some extra testing. Soon ready for review.
**QIODevice buffer object issue was fixed, and is waiting for review (motivated by the async story)
**qtpip development continues.


==== 11. January 2018 ====
===24. August 2023===
- multi pyside packages (not easy to do)
  - unlikely to achieve until TP
  - a package per python release (3.4, 3.5, 3.6, 2.7)
  - package per platform (win 32bit|64bit, mac, linux)
  - long term task to convert to reduced Python API (to support multi 3x packages)
  => have to cut some targets: one 3x and 2.7 release
  -> create doc howto to encourage custom builds for not covered platform combo
  -> do we need commercial for release
- pysinstaller is an installer
    -> deployqt tool not necessary
    -> documentation required stating the option
- rename import options
  - rename via alias possible
  -> still an issue when looking up particular types but probably manageable 
  - renaming option: Qt4Pyton, QtPy, QtPython, Python4Qt, Qt
- example shift
  - https://codereview.qt-project.org/#/c/215900/
- Basics for doc generation toolchain
- Issues where cmake picks up platform Qt references where it should use a Qt custom install
- Qt3D bindings still under progress
- [https://bugreports.qt.io/browse/PYSIDE-34 PYSIDE-34] & [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560]
- Documentation
  - minor doc fixes
  - documenting examples


==== 4. January 2018 ====
*General
  - multi pyside packages (not easy to do)
**New board on JIRA to reflect our work clearly https://bugreports.qt.io/secure/RapidBoard.jspa?rapidView=262&view=planning.nodetail&issueLimit=100
  - renaming Pyside to "Qt for Python"
**Qt Meetups are starting to popup in Berlin and other countries! we might join some of them.
    - quite challenging due to implied import and lib changes
**Discussions around improving the Qt Creator experience and UI creation in general.
    - alias for existing imports would be beneficial
**There has been some motivation from Qt/C++ to use more CMake in projects (like for resources), which is negatively affecting the Python projects, due to the lack of CMake in the Python projects.
  - discussion around existing function test
*Infra & Releases
    -> working assumption is that we ignore added function and check for existing base line only
**Commercial LTS 5.15.15 to be released soon.
    -> effort too large to maintain every single new addition
**6.5.3 scheduled for the first week of September
  - discussed issues around concurrent existing Qt builds while building pyside (potential cross leakage)
*Bugs & Features
  - various fixes to doc generation steps (see [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363])
**QIODevice::read(char*, qint64) functions are removed, but they are useful for the asyncio story. Discussion on if it's worth exposing them.
  - discussed need for good examples as part of documentation
**More changes related to QtAsyncIO are ready for review.
    -> considered options to cleanup and remove need for submodule
**PYSIDE-2417 overflow issue was fixed
**[ot] i18n in the Qt framework
**PYSIDE-2418 connection issue with python overloads
**6.6 documentation has some issues due to the QtGraph new module
**PYSIDE-2423 connecting signals to python callable doesn't properly work - trying to find a proper solution
**PYSIDE-2424 Installing shiboken in a non-standard way discussion - it might not be properly fixed.
**Next Wednesday 10am: session about Shiboken + QtScrypt status
**PYSIDE-2419 locale issue on macOS due to the Info.plist that python includes that overrides the QLocale settings. A bug report was filed upstream, and a workaround is suggested.
**PYSIDE-2421 webengine issue was discussed, it's an Qt/C++ chromium issue.
**CMake FindPython patches are still being worked out, the wrong interpreter is being found.
**patchelf removal is causing some issues with cross compilation.
**qtpip works continues.


== 2017 ==  
===17. August 2023===


<div class="mw-collapsible mw-collapsed" style="overflow:auto;">


==== 21. December 2017 ====
*Bugs & Features
- Issues building for Windows for Python 2 and 3 (on coin)
**Investigating on PyPySide MI segfault postponed but on To-Do list [https://bugreports.qt.io/browse/PYSIDE-1991 PYSIDE-1991]
- discussing potential pyside demo/example for RTA purposes
**[https://bugreports.qt.io/browse/PYSIDE-2404 PYSIDE-2404] More Progress in Lazy Initialization
- Continued work on macOS / Qt 4 header issues, progress is there
***the optional __getattr__ in module objects was successfully implemented (but is seldom used)
  - breaks GL signature test on Linux, needs further investigation
***lazy init of Enums is probably no more needed, covered by the import scheme below
- Investigated PyInstaller (potential option to deploy apps written with Pyside)
***most common cases like "from PySide6.QtWidgets import QLabel" supported by another __import__ override
  - seems to work almost out-of-the-box for deploying PySide apps
***Keep your fingers crossed, testing starts today
- Investigated building one package compatible with multiple Python 3.x minor versions
**[https://bugreports.qt.io/browse/PYSIDE-2419 PYSIDE-2419] QLocale::language() returns wrong on macOS.  
  - not possible currently, will require a lot of work, possibly not feasible
***Caused by QLocale infrastructure which looks at Info.plist inside the Python interpreter macOS bundle.
  => we need to build 3.4,3.5,3.6 * win, linux, mac packages = 9 packages
***Working on a hack fix after consulting Tor Arne and Eddy.
  => 3 more for each platform and Python 2.x
**Pacthelf removal - cross compilation breaks. Working on a fix.
  => commercial packages?
**[https://bugreports.qt.io/browse/PYSIDE-2421 PYSIDE-2421] - QWebEngineView.print() - rerouted to Qt
- lots of discussions and fixing of doc tool chain (qdoc in dev currently broken)
***But, might requires an ownership fix in Shiboken once [https://bugreports.qt.io/browse/QTBUG-116052 QTBUG-116052] is resolved
  - adding documentation has begun in earnest
**Research - use the .debug files provided by the Qt installer to debug from VSCode.
- continued work on PYSIDE-578
***Saves time from not building Qt everytime
***Still ongoing
**QtAsyncio: Implementation of asyncio.Server (one open question remains - asyncio API and Qt API don't always match as cleanly as desirable).


==== 7. December 2017 ====
===10. August 2023===
- pip wheel installation
  - adding support for simultaneously python 2 and 3 builds
  - open issues: test installation towards multi python 3 versions
  - delivery channel for Pyside binaries (pip server? local install from qt account download?)
- investigate options to have sth like pyinstallqt (pysinstaller is a possibility)
- final keyword support by shiboken
- Qt3D bindings patch close to completion - > requires some Qt changes in 5.9.4 or later Qt
- fixing pyside build issues when encountering Qt 4 headers on macOS
- PYSIDE-578 (testing procedure/testrunner) -> adds heuristic to adapt to failure rates (flakiness handling)
  - concerns that running all tests 5 times adds too much load on the CI (test runs needed)


==== 30. November 2017 ====
*General
- packaging related coin changes
**
- last weeks merges between 5.6 and 5.9+ blocking coin have been fixed (in particular on RHEL)
*Infra & Releases
  - 5.9 + 5.6 are passing, dev has some private Qt changes which will affect pyside/dev
**
- lots of coin infrastructure issues
*Bugs & Features
- RTA test wheels added (install and launch single example)
**Patchelf removal only partially possible because of using patchelf on prebuilt Qt binaries.  
- crash bugs in 5.6 branch reported but not details known yet (waiting for more details)
***For Qfp binaries patchelf removal under review. MacOS issue being fixed. This is needed for Android.
- some discussion what changes should be put to 5.6 vs 5.9 branch
**Shiboken module cmake installation bug fixed.
- Qt3D bindings started
**Progressing with Android C++ to Python callback, now that Qfp binaries could be loaded on startup.
  - some changes in qt3d/5.9 required)
**Further investigating on PyPySide MI segfault [https://bugreports.qt.io/browse/PYSIDE-1991 PYSIDE-1991]
  - shiboken bugs discovered in the process (virtual function guessing & some comparison operators for namespace generated)
**[https://bugreports.qt.io/browse/PYSIDE-2404 PYSIDE-2404] Progress in Lazy Initialization
- small regression related to rpath handling on Linux
***the new dual registration is done and builds the base for concrete lazy init
- open pip wheel issues:
***lazy init of Enums postponed because
  - handling of multi Python version wheels
***an undocumented optional __getattr__ in module objects makes it much easier to lazy-load whole classes, first.
- testrunner bugs addressed and reducing flakiness
- issues in Pyside when building with gcc 7.x
- qdoc from qt5/dev is required for pyside due to webxml support
  - it is a problem for the pyside/5.9 branch


==== 23. November 2017 ====
===3. August 2023===
- pip wheel support issues on Linux solved (not yet verified)
  -> libICU usage on Linux should be enabled via pyside setup script
  -> downloaded from qt account download area
  - discussion how to do wheel builds for different Qt base lines -> implies to different wheel packages
  - need to evaluate how different python versions on various Linux distros impact wheel binaries
  - target: 6 wheels (2 per platform for 2.7 & 3.5+ Python)
  - OpenGL example
  - merge 5.6-> 5.9 attempted
    - signature update to match Qt 5.9 ABI/signatures
    - plenty of testing flakiness and also test crashes
  - improvements to signature tests


==== 16. November 2017 ====
*General
- Build system cleanup. It is now possible to build only a subset of Qt modules per cmd line option
**New reports board
  -  this is not complete and may need further patches
**QtCreator support
- Added QAxContainer, more classes from 5.10
**Integration cycle on gerrit overview
- Preparing to add Qt3D
*Infra & Releases
- Removed flaky test
**CI down next Monday for a few hours
- further research on how pip wheels might be used for Pyside
**First tests on linux arm64
  - seems to work well on win & macOS
**Preparing 5.15.15 Commercial LTS
  - problems on Linux related to libICU (or in general due to different system libraries)
**qtpip first trials on the CI
- implemented and tested --standalone feature for the main Qt platforms [https://bugreports.qt.io/browse/PYSIDE-558 PYSIDE-558]
*Bugs & Features
- open question remains how 3rdparty Pyside deployment path might look like
**Async research continues, new things are being discovered while is being developed
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]
***Implementing a few new things for improving the support
***Initial patch got merged, but a few others are in the making
**Team contributing to QtAcademy
**SQL queries issues, inconsistencies in the API were fixed
**Build with ninja had some problems regarding mixing stdout and stderr
**Testing initial support for rvalues
**2272 fixing signatures for some qmlRegister* functions
**Examples: new mediaplayer was fully ported
**Example gallery scans now a doc directory for images
**Some other multimedia examples are pending for review
**Team contributing to Qt translations
**Adjusting the deployment tool, and fixing issues with pyenv, and upgrading nuitka
**CMake: adjusting the files to use the new API for finding python, reducing our cmake files
***Considering also the removal of patchelf, and follow the cmake approach
**Lazy initialization of enums is showing a good improvement on the performance


==== 9. November 2017 ====
===27. July 2023===
- Work on simplifying the build system, made it possible to specify a module subset to build
- [https://bugreports.qt.io/browse/PYSIDE-558 PYSIDE-558] Fixing rpaths and making --standalone work on the 3 platforms. Result: Self-contained binary wheels. Needs Review.
- Trying to setup the project for building the docs. I managed to build the rsts from the patch in gerrit but running sphinx on those rsts results in errors about python 2 style code.
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] work continued


==== 2. November 2017 ====
*General
- Releasing:
**Shyam wrote trip report to Europython
  - continued work on macOS installer
**Some vacations starting soon for some team members
  - binaries must be patched during the install from repo (rpath setting)
**Got some cool t-shirts (internal only so far) - Is there interest for merch?
  - adopting the scripts from Qt for Pyside
*Infra & Releases
  - made pip install work on Mac -> would be alternative to online installer approach
**6.5.2 released
      - two deployment choices available
**Some LTS releases soon as well
- discussions on how void* pointer should be handled, two options on the table
**Issues on the CI (RHEL8.6) and python interpreter.
  - add additional Pyside module handling such pointers
**Formalization of release besides wheels on PyPI and account.qt.io
  - add feature to shiboken to transparently add the support to any arbitrary C++/pyside project using shiboken
**Soon to enable CI on qtpip
- documentation snapshot generated
*Bugs & Features
- simplified setup-pyside and related build script options
**[ext] designer issue, translations
**PYSIDE-2402 QtHttpServer module was missing on Windows
**QSql methods were un-deprecated (module seems to need more love)
**Port QtGraph example
**AsyncIO module: there is a second change in preparation
**Finally the android issue we had was solved. It seems that patchelf was breaking our binaries, and now we are using a cmake approach instead.
**Enable unity builds for android
**Nuitka will be pinned to a recent version
**PYSIDE-2404 lazy loader research
*Interesting projects we checked
**https://github.com/larryhastings/appeal
**Stable Diffusion
**https://docs.hpyproject.org/en/latest/quickstart.html
**https://github.com/rui314/mold


==== 26. October 2017 ====
===20. July 2023===
- Releasing:
  - test repo for online installer created (mac seems to deploy)
  - first evaluation of suggested installer approach on various platforms
- Documentation:
  - Qt doc team joined the effort
  - first experiences are collected
  - should new documentation be done in rst rather than qdoc format?
  - Getting started, General platform requirements and general fixes turning up during generation
- [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571] received further fixes and reviews
- REDHAT not working on Coin (caused by gcc header issues)
- other minor improvements


==== 19. October 2017 ====
*General
- Discuss open Pyside 2 release & documentation
**Two team members @ Europython 2023
- Release packaging suggestion
*Infra & Releases
  - Qt for Python installed via Qt installer and python scripts pointed to module via PYTHON_PATH
*Bugs & Features
  - create test online repository for Qt installer
**Implementing transports and protocols of asyncio API
  - follow up how this Pyside installation approach might impact deployment of Python apps using Qt for Python
**Lazy importer still under development. Ongoings:
  - Linux distros shipping Pyside? (not sure yet either)
***necessary to register all types without creating them
- coin
***turning all PyTypeObject into PyTypeObject valued functions
  - breakage in CI provisioning due to competing Python binaries coming from MSVC 2017
***quite hard because deeply buried in the generated code
  - coin template needs updating
- [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571] work progressing (ready for review)
- lots of fixes in Pyside dev branch and
- feedback from Qt World Summit:
  - is Pyside on Android and iOS?
  - iOS probably out since platform cannot have interpreted code
  - Scriptable application use case was a sought after feature
  - qdoc got WebXML patch -> open question which version to use for doc generation across the various pyside versions
    - add script to support single command to generate documentation


==== 12. October 2017 ====
===13. July 2023===
- no update due to Qt World Summit 2017


==== 05. October 2017 ====
*General
- Qt DataVisualization port has finished including an example
**CI is not behaving, so be cautious
- Coin no progress due to pending Qt 5.9.2 release
**3.12 beta 4 was released
- webxml support being implemented inside qdoc (beginning of the pyside documentation toolchain)
**Next week some people are going to Europython
*Infra & Releases
**6.5.2 still in progress, waiting to have the RC wheels
*Bugs & Features
**Qt Akademy to prepare a Qt for Python course
**Examples: we might adapt our gallery to https://bugreports.qt.io/browse/QTBUG-115174
**Android: callback issue from C++ to Python, some ideas are around, but the problem persists.
***Might be related to the usage of patchelf.
**Research on Lazy loader continues
***Some ideas are behaving well at the moment, but still being tested.
***We might need to discover some classes that we cannot initialize lazily (manual code injection, need init before usage)
**We need some reviews for the eventloop patch (asyncio)
**An enum class with an issue for stubs.
**qtpip work continues
**Some good-first-issue are planned for the project, so more contributors can join us!


==== 28. September 2017 ====
===6. July 2023===
- 5.6 and 5.9 branches are *finally* enforced by CI - yeeeaaahh
- Dev branch is still missing some forward merges before it can be enabled.
- port of QtDataVisualization progressing
- fixed bugs: [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510], [https://bugreports.qt.io/browse/PYSIDE-517 PYSIDE-517], [https://bugreports.qt.io/browse/PYSIDE-562 PYSIDE-562], [https://bugreports.qt.io/browse/PYSIDE-564 PYSIDE-564]
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] in progress, first example of qApp protection, benchmark of impact ongoing


==== 21. September 2017 ====
*General
**PySide 6.6 will support Python 3.8+
**Python 3.12 support will be back-ported to 6.5 only, and not 6.2
*Infra & Releases
**6.2.9 commercial lts was released yesterday.
**6.5.2 RC wheels to be tested.
**5.15 open commercial lts tags are in the pyside/pyside-setup repo.
**qtpip configuration file being improved and updated
**ARM CI host configuration continues
*Bugs & Features
**Removal of old enums was finished
**Starting to work with lazy loaders for enums
**First iteration of the asyncio support for the qt eventloop, tests are being prepared.
**PYSIDE-2370 cross compilation issue, might be related to host python, provided some options to try.
**Android issue, we cannot get C++ callbacks to Python. Might be related to a python version incompatibility.
**Preparing a contribution back to python-to-android
**Rewriting some enum code
**Add mediaplayer demo in qtdoc for python (some issues with qml)
**Add document viewer qtdoc example
**PYSIDE-2381 QSettings issue
**pyside6-lupdate issues related to encoding.
**qtpip works continues


- Prototyping and exploring of Pyside packaging options
===29. June 2023===
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] done and merged
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] being addressed thanks to [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]
- [https://bugreports.qt.io/browse/PYSIDE-487 PYSIDE-487] Qt Data Visualization port progressing


==== 14. September 2017 ====
*General
- Coin
**Next maintenance break in August.
  - 5.6 testing is back online (5.9 target unblocking pending a merge)
*Infra & Releases
  - Packaging of Pyside started to become a discussion topic
**6.5.2 postponed until next week
      - Standard PIP deployment
**6.2.9 Commercial LTS soon to be released (a new qt build)
      - Separate delivery via the usual Qt account channel
**5.15.15 LTS in the next weeks
- void* support has a pending patch (https://codereview.qt-project.org/#/c/205124/ and related example https://codereview.qt-project.org/#/c/205272/)
**ARM CI host still in progress
- Documentation work ongoing
**Brainstorming some additional matrix testing infra for Python versions
  - WebXML support was added to qdoc - see [https://bugreports.qt.io/browse/PYSIDE-363 PYSIDE-363]
**Tags for OSS and new LTS public releases (IFW ticket)
  - inputting the resulting WebXML to shiboken gave promising results
*Bugs & Features
  - Qt Creator gain ability to fold away Python license headers
**Research on scripting continues
- Signature patch (https://codereview.qt-project.org/#/c/198654/)
**Designer related features/ QtCreator
**Memory leak related to REG is solved
**New icon theme for examples coming
**Some qdoc examples might be enabled for Python
**Enum removal is still generating detail discussions
***Two implementation versions are suggested.
***The old ones were written in C++ so the startup time is a lot slower
***Lazy generator is helping a A LOT
**Android dev build - unity had some complications
**Async event loop work, last issues were addressed.
***still some network io features are missing
**[Research] PySide components for QtDS needs to follow QtDS release cycle rather than Qt.


==== 7. September 2017 ====
- Pyside CI broken (timeout for tests is zero)
  - Pyside provisioning scripts are very fragile
  - Qt's own  provisioning is interfering when e.g. Pyside relevant tools get changed by Qt
  - new ideas and redesign is likely to be needed
- New Bindings: QRegularExpression, QVersionNumber, QUuid,
- Discussions around Documentation for pyside
  - couple of options for generation pipeline
    1.) qdoc generates WebXML -> Shiboken converts WebXML to ReST (used to work in Qt 4 days)
    2.) qdoc is lib which creates AST - > shiboken uses the AST to generate ReST
    3.) \pyside to document python classes (lots of documentation effort and not ReST integratable)
    4.) minimalistic approach is to merely link to the Qt object class reference (python specific docs are somewhat separate
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] further investigation how to deal with void* APIs
  -> prototyping ongoing
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] redesigned once again (no more internal Python dependencies, Python version independent implementation)
 
==== 31. August 2017 ====
- 5.9 passes on all platforms but one (10.10 still failing)
  -> fix for provisioning scripts pending
- 5.6 no problems at hand (all passing)
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] hit a dead end
  -> fundamental way of passing vertex data (void*) pointer between Python and C++ not addressed yet
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] complete


==== 24. August 2017 ====
===21. June 2023===
- Coin 5.9 provisioning is in place, but there are some issues with paths to tools which are being addressed
- Build issue on Windows 10 5.9 branch, addressed by patch in review https://codereview.qt-project.org/#/c/203406/
- Fix to macOS build when old Qt 4.8 is present, addressed by patch https://codereview.qt-project.org/#/c/203313/
- [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516] progress on bringing in more of the QOpenGL classes
- [https://bugreports.qt.io/browse/PYSIDE-560 PYSIDE-560] stable ABI was investigated, decision is required
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] finalizing license modifications
- [https://bugreports.qt.io/browse/PYSIDE-156 PYSIDE-156] ongoing implementation for fixing qApp crashes
- [https://bugreports.qt.io/browse/PYSIDE-552 PYSIDE-552] in process of being merged
- [https://bugreports.qt.io/browse/PYSIDE-562 PYSIDE-562] pending patch
- [https://bugreports.qt.io/browse/PYSIDE-563 PYSIDE-563] in process of being merged
- PySide 2 presentation being prepared for Qt World Summit 2017


==== 17. August 2017 ====
*General
- Almost everyone is still on holiday - not much progress
**PyPI limit increase for PySide6-Addons
- PySide 5.9 branch CI changes are still pending integration / ongoing due to issues with the CI infrastructure switch
**PySide 6.6 might have support for Python 3.8+ (due to Python 3.7 EOL in a week)
- Investigation ongoing regarding QSSL classes on 5.9 branch
**Python 3.12b3 is out - test!
- PYSIDE-510 - ongoing work to make separation of different licensed code
**Qt Contributor Summit
- PYSIDE-156 - initial work to stop crashes when using methods that require an allocated QApplication instance
***General session + maybe another one for specific topics.
- PYSIDE-558 - initial investigation on how to proceed
*Infra & Releases
- Updated the PySide2 wiki documentation to clear up build steps and requirements.
**6.2.9 is ready, but waiting for Qt/c++ release
**6.5.2 release date is next week.
**Tags for OSS and new LTS public releases
*Bugs & Features
**Android research: extra functionality is there, and working on bluetooth/permission integration with a device (example)
**PYSIDE-2364 Invalid syntax on a pyi file
**Continue with the old enum removal.
***Maybe delayed initialization to improve startup time.
**AsyncIO eventloop work continues
**Research for scripting continues
**6.6 adaptations
**Fix Enum issue with clang with invalid hex


==== 10. August 2017 ====
===15. June 2023===
- holiday time is hampering project at the moment -  not much progress
- CI changesin Qt affected Pyside project such that focus was on different CI matters
- [https://bugreports.qt.io/browse/PYSIDE-557 PYSIDE-557] being addressed
- some very minor issues were fixed


==== 03. August 2017 ====
*General
- PYSIDE-510 under code review https://codereview.qt-project.org/198654
**Going to EuroPython
  - > license issues have to be addressed
**Participation in Qt Academy
  - > some testing aspects still open (delayed till later on)
*Infra & Releases
  - > investigation of impact on deployment across multiple python run-time versions required
**6.2.9 LTS to be released
- missing bindings script/wiki page updated: [[PySide2_Missing_Bindings|Missing PySide2 bindings]]
**NFS issues in the CI, being worked on.
- first working array support has been delivered (some adjustments still required), now proceeding to extend for OpenGL [https://bugreports.qt.io/browse/PYSIDE-516 PYSIDE-516]
**ARM host on CI experiencing some issues.
- Missing classes in works (e.g. QAbstractnativeEventFilter, QFileLock,....)
***Some preliminary wheels were generated in order to test.
  - > revealed some issues of handling void* pointers
***Might help the Android story, but this needs to be confirmed.
*Bugs & Features
**Async research revisited
***Testing eventloop wrapping
**Memory leak issue still needs to be fixed (hopefully for 6.5.2)
**Examples in Qt revamp
**Translations and fixes for 6.6
**Discussion about Enums implementation
**Scripting on C++ research continues
**PYSIDE-1735 removing old enums continues
**Android improvements in review
***Adding more modules
**QVariant enum change (temporary patch until Qt7)
**shiboken_generator research to make it publicly available (libclang dependency)


==== 27. July 2017 ====
===8. June 2023===
- Fix for [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] causes lots crashes in auto tests
  -> more investigation ongoing
- coin
  - since 5.6 is now enforced by Qt CI the focus shifted to the 5.9 branch of Pyside
  - still encountering build issues on 5.6 though
  - cmake upgrade for macOS 10.10
  - missing virtual env for macOS 10.12 being deployed
  - msvc 2013 being removed from CI targets
  - clang on OpenSuSE deployment ongoing
  - lots of effort went into debugging the above Coin issues
- numpy support for 2d array feature development progressing ([https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354])


==== 20. July 2017 ====
*General
- coin
**Python 3.11.4 released, 3.12.0beta2
  - license test passing
**PySide6-addons reaching the 10G limit on PyPI
  - setup issues wit Python 3 and msvc 2008 vs 2015 issues
*Infra & Releases
  => need to install newer Python 3 binaries
**6.5.1.1 released due to a regression (introduced by a mem leak fix)
  => otherwise looks like enforced testing can be set alive on 5.6 branch
**Maintenance Tool > wheels
  - 5.9 still having clang header issues
***Special case for M2M protocols to be tested
- 2D array support work in progress
**CI on arm64 continues (Linux and Windows)
- [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] -> waiting for PYSIDE-510 dependency
*Bugs & Features
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510]-> issues with Python 2.x left
**Fixed some type-hint related issues PYSIDE-2357/PYSIDE-2331/PYSIDE-2340
- need to get a handling what functions are not supported by pyside due to exclusions or missing support in shiboken
**Scripting research
**Qt pip tool has updated the configuration file and wheels to continue the work on the new tool
**QVariant PyEnum issue -> solution for review
**Android work continues: improving the dependency detection
**PYSIDE-2335 unraisable is finally checked in (the current solution works, it could be improved but low prio -> xml definitions)
**PYSIDE-2354 type error due to the usage of Generic (related to 939) - related to cpython issue
**PYSIDE-1735 old enums removal started
**Example tunings
**Bug fixing week


==== 13. July 2017 ====
===1. Juni 2023===
- coin
  - Production coin was updated today and all fixes are finally executed
  - 5.6
  - macOS 10.11 machines have Python 2.6, which causes test script to fail due its usage of a
          module added in 2.7. Investigation in progress on the best way to fix this.
  - build failure with Windows 8.1 (msvc2013-x86)
  - 5.9
  - macOS 10.12 missing virtual env (https://codereview.qt-project.org/200006)
  - Rest Linux/macOS configs are failing various build issues
  - dev is still pending for qt5 merge from 5.9 
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] development completed, test added, needs review
- [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] ongoing work
- [https://bugreports.qt.io/browse/PYSIDE-550 PYSIDE-550] investigated, needs a working solution to allow proper building on distros that separate Qt private headers into separate packages
- [https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354] ongoing work on C / C++ array support in PySide, some questions remains on how to deal with xml syntax and multiple dimensions.


==== 29. June 2017 ====
*General
- coin
**Europython - call for first time speakers (open to anyone)
  - Qt 5.6 all coin changes for Pyside are done but waiting for coin production update (after Qt 5.9.1 release)
**Waiting until API review to move dev to 6.6
  - Pyside/Qt 5.6 on new OpenNebula infrastructure confirmed to run
**New Epic/User Stories policy
  - Qt 5.9 based setup still misses clang libs (merge pending)
**Participating into Qt Academy
  - Pyside/Qt 5.9 test failure fixes on macOS
*Infra & Releases
- worked on array support (passing arrays between Pyside and Qt API) - work in progress ([https://bugreports.qt.io/browse/PYSIDE-354 PYSIDE-354])
**6.5.1 released, a leak fix is causing issues with signal connections.
- continued work on debug builds across the platforms
***Initially we thought it was purely functools.partial but there are other cases that are not working.
- embedded Python example under review (further testing across the platforms)
***Testing alternative solutions, otherwise we revert
- [https://bugreports.qt.io/browse/PYSIDE-510 PYSIDE-510] finished (not yet merged) -> revealed a few more  problems in [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] & [https://bugreports.qt.io/browse/PYSIDE-308 PYSIDE-308]
***In any case a 6.5.1.1 will be out soon
- added a way to dynamically detect the available Qt modules in Pyside
**Need to test the new conf file for the commercial wheel install mechanism
**5.15 needs to skip libclang16
**Testing maintenance tool with a license without Qt for Automation (for wheel check)
**JIRA release versions are pending.
*Bugs & Features
**(External) Designer fonts issues
**PYSIDE-2347 metaobject tool missing types
**Scxml events missing connections.
**Scripting research (check report)
**Leak research continue
**Issue with new example state machine to be solved (event handling)
**PYSIDE-1930 PYSIDE-2239 QVariant Enum issue, the fix is out, but we need some tests.
**Finish the problem with unraisable exceptions
***Discussion on special cases with a run function
***Blocking functions are still an issue, because we cannot break
**PYSIDE-2354 typing.Generic issue with inheritance in progress
**PyTest research continues


==== 22. June 2017 ====
===25. Mai 2023===
- building pyside on Win with debug and non-debug
- QSSL* classes do not build on macOS & Windows (patch in progress)
- dll name handling work finished (build system issues were addressed)
- PYSIDE-531 discussions
- coin
  - followup from 18 May (windows issues in coin)
  - test runner changes being merged should address this
  - new regression on macOS targets though
  - 5.9 issues due to clang continue to exist (will be addressed after 5.6 is enforced)


==== 15. June 2017 ====
*General
- dll name handling fixed across the platforms (e.g. pkgconfig handling)
**QtWS - One talk accepted
- PYSIDE-500 fixed
**Europython - One talk accepted
- PYSIDE-331 is still not done (in parts a module by module fix is required)
*Infra & Releases
- PYSIDE-510 ongoing
**6.5.1 one issue was found, so release will be available once we merge the fix.
- no further progress on coin
**5.15.14 to be release soon.
- Getting started guide has been updated dealing with Qt 5.6 and Qt 5.9 based Pyside builds
**CI arm64 experiments continue
- scriptable Pyside example been developed to demonstrate SDK-like usage of Pyside
**Asking about M2M wheels on the maintenance tool, for 6.6
- lots of small infrastructure changes/fixes
**Solving LTS issues of missing tags on public repo, might take some time.
*Bugs & Features
**Evaluating shiboken6_generator to be published on PyPi
**Few small fixes around the project (release preparation, new features, small bugs, doc issues)
**QtScrypt experimental work continues
**Permission API added (motivated by the android support)
**Improvements for the android deployment.
**Trying to fix an issue of getting Enums to Ints
**Delayed exceptions work continues, trying to fix some corner cases still.
**Starting to explore PEP 658
**Research on PyTest compatibility
**[Designer] Fixing some issues, and warnings


==== 8. June 2017 ====
===18. Mai 2023===
- Proposed solution for PYSIDE-500
- Further work on example for PYSIDE-526, work on shiboken2 command line handling to ease usage with qmake
- Updated Getting started Wiki
- Introspection work continued (PYSIDE-510)


==== 1. June 2017 ====
*Infra & Releases
- PYSIDE-500
**6.5.1 Preparations
- https://wiki.qt.io/PySide2_GettingStarted needs a serious cleanup
**5.15.14 Preparations
  - 5.6 vs 5.9 differences not explained
*Bugs & Features
  - specify exact version matching conditions
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2325 PYSIDE-2325] typesystem incomplete
- pyside repo merge completed
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2328 PYSIDE-2328] Segmentation fault/access violation when connecting signal of temporary object
  - Coin changes required to catchup - > recent CI issues have caused delay
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2329 PYSIDE-2329] Signal connections with init kwargs
- Introspection work continued (PYSIDE-510) -> not yet complete
**Reverted temporarily the delayed exception patch, in order to not block the 6.5.1 release. This should be discussed at the next meeting
- qtcharts and related examples have been ported (5.9 only)
***Fixed [https://bugreports.qt.io/browse/PYSIDE-2310 PYSIDE-2310]
- license header checks of Pyside for Coin able to distinguish branches
***Fixed [https://bugreports.qt.io/browse/PYSIDE-2321 PYSIDE-2321]
- Array support for Pyside missing (numpy_array support?)


==== 18. May 2017 ====
===11. Mai 2023===
- Coin
  - Win nodes didn't run the cleanup functions -> test failures due to artifacts -> no solution yet
  - Clang issues persist and this must be addressed in the broader scope of Qt/qdoc depending on libclang too
    -> until this point in time the setup is a manual one for pyside/5.9+
- merge of psyide repositories -> no objections against the plan in the community
  -> merge will happen in the next few days (pyside.git, pyside-setup.git and shiboken.git become one repo)
  -> examples, wiki and tools will remain as they are
- QOpenGL* porting continuing
- qttext2speech ported to Pyside2
- failing QML tests in Qt 5.9 based Pyside
- PYSIDE-510 - introspection solution in the works
- Qt World Summit Berlin 2017 (talk for Pyside being handed in)


==== 12. May 2017 ====
*General
- looked into the Windows tests failures, and the reason might be related to how we copy around build artifacts, leading to an incorrect folder structure. Coin team to look at it.
**Python Users Berlin meetup talk today
- Fixed a small regression in 5.9 with building on macOS after some cmake changes that happened in 5.6
**Europython, QtWS
- Implemented, tested, reviewed and committed the multimedia widgets examples
**Qt FF 02.06
- documentation from Pyside1 days can not be generated anymore
**Android team «ketchup»
  -> new approach required using exiting Qt5 doc tools
**Example revamp update
- QOpenGL* port to Pyside has started -> missing support for arrays in shiboken
***Quick examples needs to be ported to loadFromModule (Quick3D, QuickLocation, missing)
  - more thorough design discussion needed
*Infra & Releases
- Coin
**6.5.1 to be release around 15.05 -> shifted to next week.
  - provisioning for clang in Qt CI ongoing: https://codereview.qt-project.org/#/c/192517/10
***https://bugreports.qt.io/browse/PYSIDE-2310 regression
***https://bugreports.qt.io/browse/PYSIDE-2299 memory leak
**5.15.14 to be release around 16.05
*Bugs & Features
**Fixing regressions issue related to threads - delayed exceptions
**https://bugreports.qt.io/browse/PYSIDE-2321 event handlers issues
**https://bugreports.qt.io/browse/PYSIDE-1951 virtual method override - still in progress
**https://bugreports.qt.io/browse/PYSIDE-2230 3.12 support
**nogil research continues - mutex might slow down things, but doing a proper division of the code could help.
**QML example tutorials - one review pending
**2313 longtype issue with numpy
**examples revamping - loadFromModule
**Icon library -> icon theme soon available on a new module.
**PYSIDE-2316 sharedpointer template issues
**Shiboken refactoring
**Finally the memory leak is fixed
**Enhancing android story, detection of modules, finding dependencies, got ideas from the current qt/c++ tool.
**Build infrastructure, setup.py install has been deprecated since 3.11 - looking into a new build infrastructure.
**Internal technical talks
***Shiboken generating bindings
***Shiboken for documentation generation
***type hints generation
***QML integration via decorators


==== 04. May 2017 ====
===4. Mai 2023===
- Coin
  - libclang 4.0 provisioning available (code reviews ongoing -> enabler for Pyside and qdoc testing)
  - 5.6 coin issues resolved
  - macOS related CI/cmake failures were resolved
  - some CI sync issues among pyside submodules (always submodules HEAD is tested)
  => may have to change once we come closer to the final release ->
  => fine as long as we are in heavy development mode
  - discussion around Ubuntu and OpenSuse configurations
  - minimal cmake requirements not met on all distros
    - 5.6 only be build using RedHat 6.6
    - 5.9 builds have updated Linux distros -> may be able to obtain a new cmake version without hacking the standard toolchain
- QtMultimedia and QRaster* API bindings further completed
- added tests and examples for the above bindings/APIs
- PYSIDE-510 (required for simplified and more generic testing of bindings)
- PYSIDE-504 work is ongoing
- PYSIDE-507 -> avoid hardcoded includes when certain Qt modules are not available
- brief discussion whether to merge the shiboken and pyside repo
  -> advantages from a CI perspective and reduces pyside setup complexity


==== 26. April 2017 ====
*General
- Coin
**Europython talk by Shyam still under consideration
  - provision for 5.9+ branches -> we would like to use libclang 4.0
**Qt for Android catch up meeting scheduled for 09/05/2023
  - test still not yet executed due to branch mismatch which pulls in dev branches
**Discussion with kivy developers done on discord. They seem to be onboard with the Qt support.
- missing bindings in QtCore/QtGui/QtMultimedia - work in progress
*Infra & Releases
- clang support done (except for a Mac issue)
*Bugs & Features
  - Pyside clang version required Qt 5.7 or later
**Android Deployment Enhancements - Bringing pyside6-android-deploy at the level of androiddeployqt - Ongoing
- [https://bugreports.qt.io/browse/PYSIDE-500 PYSIDE-500] done
**python-for-android PR Enhancements - Ongoing
- work on PYSIDE-500, 502, 504, 497 will continue
**PYSIDE-1951 super().__lt__ global solution ongoing
- qdoc work started trying to recover whatever documentation is left from Pyside 1.x
**[https://bugreports.qt.io/browse/PYSIDE-2206 PYSIDE-2206] QML examples/tutorials revamping
**PYSIDE-2221 Python runs NoGil version of mandelbrot.py 7.7 times faster on a 10-code M1 machine
**[https://bugreports.qt.io/browse/PYSIDE-2288 PYSIDE-2288] Fixed Clang 16 support for 6.6/6.5.
**PYSIDE-2310 Crashing without error reporting in Qt-based threads, debugging
**PYSIDE-2299 Ongoing, current attempt fixes most tests but leaves some SegFaults, might be a dead-end.


==== 20. April 2017 ====
===27. April 2023===
- Fix for [https://bugreports.qt.io/browse/PYSIDE-331 PYSIDE-331] broke the Windows build; under investigation
- Refactoring, fixed build warnings
- Looked at debug builds on Windows


==== 13. April 2017 ====
*General
- discussion around merge policies between 5.9 and 5.6 branch
**Planning collaboration with other projects like Kivy, towards a better mobile support.
- Linux debug library issues fixed
**QtWS talks submitted
- PYSIDE-488 fixed via workaround
**PyConES, PyConPT, PyConAPAC
- fixed a unit tests
**Qt for Android catching up meeting
- worked on qdoc/html generation in Pyside (failed so far - waiting for qdoc maintainer feedback)
**Bug fixing week
- PYSIDE-331 patches merged -> more bugs found in the meantime
*Infra & Releases
**5.15.8 wrong source code was published PYSIDE-2297
*Bugs & Features
*PYSIDE-1951 super() and `__lt__` operator issue related to our wrapper.
*asyncio work continues
*enhancements for python-for-android to improve the android stories
*pyside6-android-deploy polished as well
*2299 memory leak might have special cases related to the callback
*clang16 is giving some issues in Qt
*Icon examples libraries for the python examples research
*Snippet translator improvements


==== 6. April 2017 ====
===20. April 2023===
- 5.6 branch created
- 5.9 branch to be created as well (easier setup for Qt 5.9 testing in Coin)
- Coin
    - not passing build platforms have been disabled
    - otherwise COIN passing on 5.6 (except for 2 failing test) -> soon to be enforced
    - license checker passing in dev
- clang changes merged to dev branch (after reviews)
  - clang provisioning on Coin still missing
- for now shiboken is not a generic C++ bindings generator (targeting Qt use cases only)
- TODO: enabling the generation of documentation from repos
- fixed mixed usage of debug and release build (no debug builds for windows)
- [PYSIDE-331] work continuing - fixed, tests are missing


==== 30. March 2017 ====
*Bugs & Features
- Coin
**Work on support for clang 16, which changes behavior quite a bit
    - some platforms passing and will be enabled by default
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2284 PYSIDE-2284] issue with NoneType
    - MinGW, some OSX and cross compile targets remain out
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2285 PYSIDE-2285] Type hints / Tuples
- will branch pyside dev branches to 5.6, new dev becomes clang branch
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2298 PYSIDE-2298] and others, fixed some missing 6.5 API
    - regular merges from 5.6 -> dev will start happening
**Added new tools - pyside6-qmlsc (commercial only) and pyside6-qmlcachegen
    - Pyside 5.6 branch will continue to work against Qt 5.6
**Simplified tool adding process
- need reviews for [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323] to merge clang changes
**PySide6 to Android Deployment blog published 🤞
    - Qt 5.10, 5.9 (on main desktop plawtforms working)
**[https://bugreports.qt.io/browse/PYSIDE-1564 PYSIDE-1564] Final approach was implemented with a new super() class. But This approach was not helpful. Issue finally closed.
    - for now the Pyside dev development will be based on Qt 5.9 (to be bumped up later on)
**[https://bugreports.qt.io/browse/PYSIDE-1951 PYSIDE-1951] A solution was finally found and implemented. Trying to improve.
- [PYSIDE-331] - in progress
**[https://bugreports.qt.io/browse/PYSIDE-2304 PYSIDE-2304] Issue resolved, Cooperative Multiple Inheritance explained with a custom example, customer is happy
- [PYSIDE-156] -
**[https://bugreports.qt.io/browse/PYSIDE-2299 PYSIDE-2299] Cause for memory leak has been found, but fix will not be trivial (might require extensive refactoring in worst case).
**Debugging QtAsyncIoEventLoop, partly functional but still early.


==== 23. March 2017 ====
===13. April 2023===
- Coin
  - progressing
- More tests fixed
- wip/clang branch created, will receive Clang parser port with instructions
- Refactoring of shiboken, replaced QtXml classes by QXmlStreamReader allowing for stricter error checking


==== 16. March 2017 ====
*General
- Coin
**SF 24.04 -> 16.05 ooo
  - the fixes are still integrating or are under review (no further progress until this is done)
**CM 19.04 -> 27.04 ooo
- clang parser replacement [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323]
**QtCreator beta now includes an extra option to create virtual environments
  - most test failures related to clang are fixed
*Infra & Releases
  - tests ran pretty much through on Qt 5.9 (Windows and Linux - Mac not yet verified)
**6.5.0 released, but one missing DLL on windows for people without hw acceleration.
  - code cleanups in shiboken
***To be fixed in 6.5.1
  - will create feature branch on all pyside repos to get the clang patch series under CI control
**6.2.8 LTS to be released this week
  - merges from regular pyside branches into clang branch will commence
**Improving current state of the maintenance tool for Python
  - readme required that explains how clang is to be built (if not provided by platform)
**Second version of the packages in the server
- [PYSIDE-331] - in progress
**https://discuss.python.org/t/pep-684-a-per-interpreter-gil/19583
**https://discuss.python.org/t/pep-711-pybi-a-standard-format-for-distributing-python-binaries/25547
**Qt Design Studio integration is on research
*Bugs & Features
**Type hints PYSIDE-2284 issue with NoneType
**2283 Platform dependencies into our docs
**Clang16 improvements to be compatible
**Research on the missing DLL issue on Windows
**Research on a memory leak possible related to Signal instances.
**asyncio debugging with a self-made event loop
**Improving the python-for-android changes to prepare a patch
**Technical Preview blog post for Android in the making
**PYSIDE-2294 multiple inheritance issue for a corner case with positional arguments
***Researching a new approach that could improve things further


==== 09. March 2017 ====
===6. April 2023===
- Coin
  - lots of changes in Gerrit for Pyside and coin
  - the outcome has to be check once everything merged
  - upcoming clang dependencies in shiboken introduces new requirements for Coin
  - clang changes to be dealt with after pyside branching
- clang
  - first complete bindings generation with Qt 5.6 and Qt 5.9
  - some failing unit tests which have to be looked at individually
  - actual merge depends on pyside branching which in turn depends on recent Coin changes
- smart pointer support
  - patches generally done, gerrit review ongoing
  - rather large patch
- created list of missing bindings in Pyside ([https://wiki.qt.io/PySide2_Missing_Bindings Missing Bindings])
  - mostly class level view, global functions at al not covered
- Jira cleanup
  - PYSIDE-464, PYSIDE-217, Pyside-224 fixed
  - most bugs reviewed now and valid ~100 bugs were identified


==== 02. March 2017 ====
*General
- Coin
**New Python releases 3.11.3, 3.10.11
  - Coin runs tests on Windows and OSX (some failures in the test - to be investigated)
*Infra & Releases
  - Windows provisioning somewhat blocked due to CI issues
**6.5.0 released
  - no progress on Linux
**6.2.8 commercial LTS to go out soon
  - OSX 10.8 ran tests with expected results
**Review Maitenance Tool integration
  - OSX 10.9 has issues due to Pyside not supporting namespace builds of Qt
**qtpip server configuration still in progress
- clang
*Bugs & Features
  - preprocessor has remaining issue
**Android: preparing post, tests, and general improvements.
      -> with clang compiler but gcc seems OK
**PYSIDE-2266 venv issue with the deployment tool.
      -> Qt Core wrapper close to compiling (QHash issues remaining)
**Documentation was released for 6.5.0 and many things were polished.
- Smart pointer work continues
**Async: continue working on the event loop wrapper implementation.
  - some uses cases work, other use cases might remain
**Research on memory leak that pyqtgraph found
- [https://bugreports.qt.io/browse/PYSIDE-364 PYSIDE-364] was fixed (patch pending)
**Brushing up tutorials: expenses
- General error review on bugreports.qt.io
**Adding new examples: simplebrowser, screen capture
  - 50% done (prioritized bugs are handled/checked bugs - "done" bugs)
**Documentation: found some issues with qdoc (from the move of examples to auto tests)
- ran address and leak sanitizer over Pyside which resulted in some worrying cases (need to be addressed going forward)
**PYSIDE-2278 type hinting issue was fixed
**Improvements to the documentation
**Cleaning imports from examples
**Add isort to the development guide
**Exploring other projects where Python can shine


==== 22. February 2017 ====
===30. March 2023===
- [https://bugreports.qt.io/browse/PYSIDE-462 PYSIDE-462] Improved solution approved
- [https://bugreports.qt.io/browse/PYSIDE-205 PYSIDE-205] Hard-to-detect memory leak plugged
  - slow memory leak found in shiboken with thousands of false positives
  - used differential analysis of valgrind output
- Clang: Fixed Preprocessor handling (set defines, include paths), got minimal binding tests to pass, now adapting MetaBuilder and PySide to what Clang finds when parsing Qt. Good news: Very little need to set Q_DOC or other magic defines
- Coin: Slow progress, currently struggling with provisioning
- extensive bug triaging ongoing in Pyside Jira project


==== 16. February 2017 ====
*General
- Coin (no update - other priorities in release/CI team)
*Infra & Releases
- Clang (progressing on pre-processor work)
**6.5 to be released next week
- PYSIDE-315 closed
**including requirements.txt along the commercial bundle
- PYSIDE-462 more review needed
***research if possible retroactively
- Shared pointer API very slowly progressing (lots of different fixes needed)
**qtpip research continues
- QMimeDataBase support added
*Bugs & Features
- QUrlQuery support blocked on QDOC defines in Qt sources (shiboken sets the wrong define)
**Features that needs to be in before 6.5
- chasing memory leaks (PSYIDE-205)
***deployment tool nuitka patch
- extensive bug triaging ongoing in Pyside Jira project
***android tool
  - confirming and testing the reported bugs (70 of 200 processed)
***tutorial of thew new quick styled app
  - some smaller bugs were fixed in the process
**Improving enums to avoid using the old implementation
- quite a few bugs were discovered this week while working on the above items, e.g.:
**Deployment tool and android research continues
  - deployment of pyside applications partly broken due to hard-coded install paths in Qt libs
**Async research on asyncio and trio proper integration
  - Qt events are swallowed when Pyside error/exception occurs
**Refactoring
-
**Shiboken examples are not displayed on the docs
**Updating the new image of the project
**Re-porting multimedia examples, simplebrowser
**Initial support for permission API
**small fixes on metaobjectdump


==== 9. February 2017 ====
- Clang progressed
  - pure C++ tests for API extractions are passing (C++ parsing based on clang)
  - even works with cmake
  - old C++ preprocessor still to be replaced
  - working through old preprocessor and checking what magic it did and how clang might be able to replace it
- PYSIDE-315 & PYSIDE-462 fixes pending for review
- COIN
  - continue progress an getting more platforms to pass (unblocking one step at a time)
  - Windows (32bit) and mac are building, Win 64bit still not building
  - OSX and Windows are stopping in the test runner phase
  - missing cmake update still on Linux (provisioning update required)


==== 26 January 2017 ====
===23. March 2023===
- PYSIDE-315
  - principle fix merged but some minor improvements still pending
- Pyside-462
  - essentially a feature request as C++ default parameters are not yet supported by Pyside
  - discussion ongoing how to address the problem
- COIN
  - 10.11, 10.9 & 10.8 build passes
  - 10.10 still failing during build
  - Progress on Windows and running into new problems further down the path
  - Redhat failed to general brokenness of the platform in CI
  - Ubuntu no further progress
- clang parser work progressing
  - completeness of work is currently measured by passing unit tests
  - there is a long way to go
  - see [https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323] and associated patches for progress monitoring
- Fixed regression which prevented Pyside to compile with Qt 5.5.1
- shared pointer support
- no update on 2nd February 2017 (next week)


==== 19 January 2017 ====
*General
- PYSIDE-315
**QtWS CfP open
  - a possible fix is pending, some minor performance improvements are still possible
**EuroPython talks submitted
  - caused by different signal/slot ordering in Qt4 and Qt 5
**Keeping an eye on future Python events
- COIN
*Infra & Releases
  - issues on 10.8 and 10.9 platforms should pass now
**6.4.3 is out
  - 10.11 & 10.10 still have issues
***pypy3 3.9.12 compatible, newer versions included an incompatibility
  - Windows timeout problem fix in COIN (but no COIN update until 5.8.0 released)
**6.5 branching out today
  - Linux builds are failing
*Bugs & Features
    - Ubuntu 14.04 fails due to cmake issue
**async support continues.
    - Redhat 6.6 & OpenSuse 13.01 deferred
**Fixing a couple of issues related to the pyside6-deploy tool.
  - current COIN freeze for 5.8.0 release affecting patching of COIN for Pyside
***venv compatibility
  - next steps in priority -> run tests on 10.8/10.9 and get Linux running
***qml apps are not properly working
- PYSIDE-79 regression fixed as well (some interaction between PYSIDE-315 & PYSIDE-79)
**android support almost ready for TP
- PYSIDE-462 to be looked at next
**PYSIDE-2261 cython signature module incompatibility fixed
- clang parser work progressing
**Removed goto from PySide
**Multiple inheritance issues were fixed.
**old Enums are being removed, and the startup time will improve a bit (still in progress)
**PYSIDE-971 GL funtions implementation
**including texttospeech into the wheels (missing by mistake)
**adapting scripts to 6.5
**metaobjectdump issue fixed
**doc updates


==== 12 January 2017 ====
===16. March 2023===
- PYSIDE-315
  - sorting of slots/signal connection changed on Qt side and Pyside side has not caught up
  - had similar connection issues on the QML side, need to investigate whether there is a connection
- PYSIDE-79
  - caused a regressions (not yet investigated)
- fixed OpenGL types not being recognized on MacOS (partly fixed)
- API's with shared/smart pointers in Qt don't work
  - has potential long term effects and investigation has started into the reasons
- Refactoring shiboken in preparation for clang
- COIN currently runs tests with namespaced Qt
  - short term fix to exclude namespaced Qt builds with Pyside (broken on MacOS 10.9)
  - other failures: missing libraries on MacOS (10.11), missing provisioning on Windows, cmake issues on 10.10
  - unknown state on Linux (current Redhat too old)
- Prioritization after status round:
  - PYSIDE-315 to be investigated based on recent signal/slot patches for QML
  - Smart pointer issues reduced in priority to provide space for PYSIDE-315 & PYSIDE-79 regression
- verify that COIN runs testrunner (not just building Pyside)
  -> not yet verified since we are still failing builds in COIN


==== 5 January 2017 ====
*General
- COIN update
**Preparing submissions for Europython
  - COIN changes merged (no further patches pending)
**New company colors
  - need to run an integration test
*Infra & Releases
  - issues related to different build platforms still to be expected
**6.4.3 release next week (no release branch)
- Continue with clang
**Issues with Nuitka 1.5.1 (released yesterday) and the CI didn't like it. Pining 1.5
  - backtracking a bit (reusing some node API's during parsing but otherwise use clang to populate the tree)
*Bugs & Features
- test blacklisting reviewed (some removed - mostly signal related ones, one new regression)
**qtpip: add support for many other operators (for versions)
- regressions in QtQuick were worked around (caused by recent Qt Quick changes)
**PYSIDE-2254 exit crash issue was fixed
- issues with macos framework style includes in Qt
**PYSIDE-2251 designer issue when not initializing virtual environment.
- PYSIDE-315 debugging ongoing, very hard to track down
**qmlsurface example ported (polishing the C++ code as well)
    - was it a regression from a previous Pyside release (e.g. Qt 5.4?!?
**example icons: discussions to standardize them a bit
- hard-copied Qt 5.4 based headers still in existence
**android research: fixing some issues with qtquick
  - updated needed but would shut Qt 5.4 users out
**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.
</div>
**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


== 2016 ==
===9. March 2023===
<div class="mw-collapsible mw-collapsed" style="overflow:auto;">


==== 22 December 2016 ====
*General
- lots of discussions around the COIN patches
**Packing use-cases
  - source archive setup being under review
**Europython CfP: https://ep2023.europython.eu/cfp
  - Qt 5.6 provisioning patches merged
*Infra & Releases
  - CI uses Python 2.7 at this stage
**Preparing 5.15.13: release might be today if nothing goes wrong.
- clang C++ parsing continues
**Wheel bundles on the account.qt.io, and soon to be available in the Maintenance Tool
- fix of some Pyside unit tests (now have a clean slate again)
*Bugs & Features
- finished QtQuick port
**Re-added QtLocation
- some overflow problems have been fixed in shiboken
**Added larger examples for QtLocation, QtDataVisualization
**Android research continues, preparing a TP
**https://bugreports.qt.io/browse/PYSIDE-2169 Leak related to AsyncIO was finally fixed: related to the new Enum implementation
***PyErr_Fetch/Restore does ref counting, and not borrow ref
**qtpip works continues
**https://bugreports.qt.io/browse/PYSIDE-79 bug signal instance: fixed most if not all possible errors.
**https://bugreports.qt.io/browse/PYSIDE-1403 pyi still produces something not fully working with IDEs
**https://bugreports.qt.io/browse/PYSIDE-1564 First version of the implementation of multiple inheritance is working
***Not a general solution, but a good approach (compatible with a competitor).
***Working on a full support to handle multiple inheritance


==== 15 December 2016 ====
===2. March 2023===
- COIN changes pending for testing infrastructure
    -> https://codereview.qt-project.org/177136 (Pyside change)
    -> https://codereview.qt-project.org/176968 (Coin change)
    -> https://codereview.qt-project.org/179662 (Provisioning changes)
    -> https://codereview.qt-project.org/179663 (Provisioning changes)
- waiting for COIN development team to review/accept the pending changes
- no update in PYSIDE-315 (under investigation)
- Flushed out a couple of shiboken, QML, qml example bugs
- Some bugs related to parser delayed until clang parser task done (https://bugreports.qt.io/browse/PYSIDE-322)
- most basic shiboken API extractor test to pass (global enumeration test)
- some trouble with int size data types
    -> Python 2 & 3 are different and the relevant C++ data types are yet again different from platform to platform


==== 8 December 2016 ====
*General
- COIN patches pending approval
**Preparing internal/external material
  - Windows provisioning reviewed
**Next monday CI maintenance break
  - Linux, Pyside, COIN itself
*Infra & Releases
- Clang changes progressing, comparing AST tree from old parser and clang
**commercial wheel bundles available on account.qt.io
- PYSIDE-79 done
**6.4.3 release was postponed
- PYSIDE-315 under investigation
*Bugs & Features
- QtQuick patches taking shape (some template magic and function pointer
**Improvements for qtpip
  features in Qt cannot be parsed by shiboken)
**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.


==== 1 December 2016 ====
===23. February 2023===
- COIN
- PYSIDE-79 there seems to be a final work around (https://codereview.qt-project.org/#/c/176374/)
    - fixing a few tests in the process
- clang update
  - dumping AST, identifying the required info
  - work in progress...
- problems with global static QObjects on the Qt side calling back into Python during app exit
  - may require some changes on the Qt side


==== 24 November 2016 ====
*General
- automatic COIN triggering for submodules work in progress
**Giving a talk at Python La Paz (on Saturday) - in Spanish
  - several discussions on this topic this week
*Infra & Releases
- Clang investigation (what library to use)
**6.4.3 ready to start the release process
- fixing bugs on Qt side for Pyside
**Change to fix the windows signing is merged
- Qt QML support almost done, work will continue with Qt Quick
*Bugs & Features
- PYSIDE-79 work story continues
**3.12 compatibility changes will reach 5.15, 6.2, and the future 6.5 LTS
  - reference counting not quite accurate but point of deallocation of ref count not identifiable
**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)


==== 17 November 2016 ====
===16. February 2023===
- Pyside team suffering from sickness -> not much progress this week
- Pyside-79 fix had a lot of negative side effects (breaking existing tests)
  - internal object reference counting is the predominant issue at hand
  - continue to work on the bug (no resolution yet as delayed due to sickness)
- COIN some progress but still open discussions on branching policy required


==== 11 November 2016 ====
*General
- PYSIDE-79 being fixed
**Development of a tool for commercial wheel installation started, and other general improvements.
- PYSIDE-315 to be addressed
**Blog posts -> 6.5 release, and Android research.
- Shiboken and Clang
**Don't forget about Europython.
  - familiarizing with clang and its parser's inner working
*Infra & Releases
  - added experimental qmake project definition for shiboken (makes work in Qt Creator easier)
**Branching dev to 6.5 when the Qt/C++ 6.5.0 RC is out (16 Mar '23)
- Qt QML on Pyside work progressing
***Only fixes go to dev with Pick-to: 6.5 if necessary
- work on COIN did not progress due to conflicting priorities inside COIN development
***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
***https://github.com/python/cpython/issues/60074#issuecomment-1430115581
***some other issues were found, but not as critical as the tp_new issue.
**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


==== 3 November 2016 ====
- working through the QML stack esnuring all required API's are exported (https://codereview.qt-project.org/#/c/175682/)
- small build system patches
- PYSIDE-79 work progressing
- OpenGL support fixed (PYSIDE-314)
- COIN issues
    - repo interdepencies not working yet, suggestion under discussion and to be implemented
    - most license checks have been fixed
    - Qt 5.6 based Pyside to skip check
    - after branching for C++11 work the dev branch should work from license check perspective
    - eventually the entire CI needs to run through (more hidden problems could be hidden)
- Started working on C++11 compliant parser for shiboken
    - libclang will be used
    - first target is to replace the AST tree implementation
    - requires clang setup in the CI


==== 27 October 2016 ====
===09. February 2023===
- Work on WebKit/WebEngine support
- Further work on [https://bugreports.qt.io/browse/PYSIDE-431 COIN] support
- Planning meeting
- Workshop for C++11 support in Pyside ([https://bugreports.qt.io/browse/PYSIDE-323 PYSIDE-323])


==== 20 October 2016 ====
*General
- [https://bugreports.qt.io/browse/PYSIDE-355 Qt Quick support] submitted
**How to make our API better for pathlib?
- [https://bugreports.qt.io/browse/PYSIDE-314 QtOpenGL support] submitted
**3.11.2 released, 3.10.10 as well
- Further work on [https://bugreports.qt.io/browse/PYSIDE-431 COIN] support, license headers
**https://peps.python.org/pep-0675/
==== 13 October 2016 ====
*Infra & Releases
- Qt CI update
**LTS tags cannot be pushed to community repo (permissions), hopefully in this week.
  - Coin changes have merged but integration not yet working
**Maintenance Tool updates soon
  - Qt CI enables on Pyside side merged
**Binary signing still need a little change to be working
  => COIN integration fails with license issues
**dev to use 6.5 starting today
  => requires review of license conditions for all files, some files are not even relicensable
*Bugs & Features
  => skipping license check for now, most likely to be done later again but requires changes to license check script
**Android research in progress, looking good :)
  - more issues of interworking between QtCI and Pyside expected (won't be visible until license problems resolved)
**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.
  Open issue: does a change in Pyside repo trigger a rebuild of everything?
**PYSIDE-2222 custom widget plugin, load with uic crash
- Qt QML support progressing and first patches merged
**PYSIDE-2201 was fixed: introducing weak references into the SignalInstances.
  - serious bugs have been fixed, more complex QML examples are now working
**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


==== 29 September 2016 ====
===02. February 2023===
- Coin integration close but not merged
- Bugfixing in particular on the shiboken parser side
- QML/Python binding and tests fixed -> general check all day-to-day aspects of QML are working
- QML examples porting
    -> still some failing tests
    -> Check all QML/Quick class are exported


==== 22 September 2016 ====
*General
- Refactored Shiboken, udnerstanding build sequences
**Europython 2023 will be in Prague! 17-23 July
- black list for unit tests defined and tested
*Infra & Release
- fixing of tests
**Improving wheel creation in our CI (signing windows, and other things)
- QML example fixing continued (QML bindings not working)
**Soon we will have released LTS in the OSS repo (after some complications)
- Pyside side for COIN done (pending integration checks)
**CI Maintenance break coming next Monday (keep an eye open to the Python configuration)
- COIN integration still wip due to long test and retest cycles
*Bugs & Features
- pyside and shiboken repo to be relicensed similar to other Qt products
**Unity builds were helping pyside/shiboken, and some tests are being done in qt/c++
=> this should address any issues regarding the status of generated code too
**meta task on revamping examples in the Qt Project
**Adding uic functionality and documentation
==== 16 September 2016 ====
**Doc reviews, some issues were found
- Pyside side for CI testing ready for testing
**Android development continues, and looks good!
- status of COIN side to be determined. Code exists need help from CI team to confirm status.
**introducing --log-level to change --verbose-build and --quiet
- build system infrastructure improvements in pyside setup
**Overhaul of Signal/SignalInstance continues:
- Qt logging now working
***[https://bugreports.qt.io/browse/PYSIDE-2201 PYSIDE-2201] Weak Reference handling is complete
- and more
***[https://bugreports.qt.io/browse/PYSIDE-79 PYSIDE-79] Research on Reference bug continues
- Update on bug handling
**create_wheels.py --builddir to explicitly provide build directory
  - PYSIDE-88 continuing
**WIP: QtAsyncIoEventLoop using Qt's event dispatcher, using BaseEventLoop and BaseSelectorEventLoop for guidance
  - PYSIDE-349 (Multimedia ported)
  - PYSIDE-344 fix pending on codereview
  - make debug builds of Pyside work (OSX works, Linux has work in progress patch, Windows side awaiting contribution)
- QML support work in progress
  - examples are slowly ported with aim to identify bugs


==== 25 August 2016 ====
===26. January 2023===
- Properly implementing QML experience in Pyside
- Unit test fixing
- automated CI testing for Pyside
  - working locally but still failures occurring on various other test machines


==== 4 August 2016 ====
*Infra & Releases
- Additional Pyside examples under review
**Fixed issues with Windows signing
- Fixed warnings coming from Shiboken
*Bugs & Features
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2204 PYSIDE-2204 qt.conf encoding]
**Fixed bugs in pyside6-metaobjectdump (QML) [https://bugreports.qt.io/browse/PYSIDE-2202 PYSIDE-2202] , [https://bugreports.qt.io/browse/PYSIDE-2203 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
***[https://bugreports.qt.io/browse/PYSIDE-2201 PYSIDE-2201] Handle early destruction of the object better
***[https://bugreports.qt.io/browse/PYSIDE-79 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?)


==== 21 July 2016 ====
===19. January 2023===


- main Pyside 2 example port done
*General
- additional examples to fill gaps are being ported (as per prio list)
**Hackathon in TQtC
- CI patches running, but still gaps (should be done by next week)
**The WebAssembly PySide Team was almost doubled in size (+1 brain, +1 hand)
- about 86% of auto test working (failing count of test 80+ auto test)
*Infra & Releases
- [[pyside-Teststatus|Project Test Status]]
**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


==== 14 July 2016 ====
===12. January 2023===


- Pyside 2 examples ported
*General
- OpenGL & SVG not working
**Next week is Hackathon, meeting will be shorter
- QtQuick 2 is in strange situation (QtQml depends on QtQuick)
**Discussion on how to gather information, and sharing material around Qt for Python
- Python 3 realed Unicode handling not working with Qt
*Infra & Releases
- QMessageBox hangs
**6.5 RC planning -> feature freeze for PySide
- no documentation for any example
**6.4.2 was released last Monday
- lots of warnings when building wrapper
**CMake Jumbo builds issue with Windows signing
- results: https://paste.kde.org/pgje2toyh/mlbqic
**LTS branches to land in pyside-setup soon
- COIN setup for pyside https://codereview.qt-project.org/#/c/158336/
*Bugs & Features
- Qt 5.7 still blocked due to missing C++11 support in shiboken
**Async examples: addressing memory leak and cpu usage due to the event loop interactions
    - food for ideas: https://steveire.wordpress.com/
**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===


==== 7 July 2016 ====
*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


- automated CI testing
==2022==
- patches for Pyside and Qt CI side required
 
- Testing somewhat more complicated due to closed nature of Qt CI
*[[Qt for Python Development Notes 2022]]
- script to port examples to Qt 5 -> https://bugreports.qt.io/issues/?jql=labels%20%3D%20exampleport5
 
- all examples to remain BSD licensed
==2021==
</div>
 
*[[Qt for Python Development Notes 2021]]
 
==2020==
 
*[[Qt for Python Development Notes 2020]]
 
==2019==
 
*[[Qt for Python Development Notes 2019]]
 
==2018==
 
*[[Qt for Python Development Notes 2018]]

Latest revision as of 18:05, 21 September 2023

2023

21. September 2023

  • General
    • Python 3.12.0rc3 is out, final release scheduled for October 2
  • Infra & Releases
    • 6.6 branched
    • 6.5.3 preparations
  • Bugs & Features
    • Fixed PYSIDE-2465 (3.11.5 test fail)
    • Work on PYSIDE-2462 (smart pointer features)
    • Refactored options parsing of shiboken
    • Fixed clang-tidy static analysis issues
    • Android permissions API: Adapt more C++ examples
    • Couple more cleanups and additions to pyside6-android-deploy
    • More manual testing of pyside6-android-deploy. Need to write more integration (mocks) for Android deployment.
    • Final cleanup and resolving tests for python-for-android Qt for Python patch
    • PYSIDE-2468 -requestPermission() on macOS. Tricky scenario similar to PYSIDE-2419
    • asyncio's requirement to use ThreadPoolExecutor keeps screwing us over, but resolution close

14. September 2023

  • Infra & Releases
    • Testing and fixing qtpip for commercial wheels
  • Bugs & Features
    • PYSIDE-2460 Work on some OpenGL issues, updated hellogl2 example
    • PYSIDE-2461 Build system for cross build fixes
    • PYSIDE-2463 Fixed some type hints
    • Android auto sdk and nkd download merged.
    • Requestpermission API and all android changes set for 6.6 merged. Will write tests in the meantime and do some manual testing with deploying apps.
    • patchelf removal for Qfp binaries merged.

07. September 2023

  • General
    • Majority of the team on holiday
  • Infra & Releases
    • Preparing 6.2.10, 6.5.3, 6.6.0
  • Bugs & Features
    • PYSIDE-2393 pytest problem with feature is fixed
    • PYSIDE-2428 feature problem caused long search, has to be fixed in matplotlib
    • Fixed PYSIDE-2444 QState.assignProperty - incorrect type annotation
    • Fixed PYSIDE-2454 Default argument is not used for containers
    • Added some number protocol slots PYSIDE-2446
    • Research on submodules PYSIDE-2447
    • qtpip for commercial wheels polishing touches

31. August 2023

  • General
    • Python 3.11.5 released
    • PyCon Spain talk was accepted - Adrian giving a talk for the new Async story, in October.
    • People on leave in September
    • FF on Qt for Python overview
  • Infra & Releases
    • Planning 6.6 for the last days of September
      • Maintenance Tool update for qt for python
      • Features until 12.09
        • Feature issues + multiple inheritance
        • Async story needs some testing
        • Android patches (new modules, plugins, permissions, etc)
        • qtpip for commercial wheels
        • new QtCreator templates?
    • 6.2.10 Commercial LTS and 6.5.3
  • Bugs & Features
    • Lazy imports still in progress, might be available for 6.7
    • QmlSingleton crash was fixed
    • JIRA was cleaned a bit, many invalid issues
    • Signal signatures were adjusted
    • PYSIDE-748 additional parameter metamethod (old issue)
    • QDataStream read/write data accepting bytes too
    • New CMake Qt API has lots of features for qml, resources, etc which might not be too compatible with Qt for Python.
    • PYSIDE-2429 macOS deployment min version fixed
    • patchelf removal is ready to merge (motivated by android research)
    • android: permission API, need some extra testing. Soon ready for review.
    • QIODevice buffer object issue was fixed, and is waiting for review (motivated by the async story)
    • qtpip development continues.

24. August 2023

  • General
    • New board on JIRA to reflect our work clearly https://bugreports.qt.io/secure/RapidBoard.jspa?rapidView=262&view=planning.nodetail&issueLimit=100
    • Qt Meetups are starting to popup in Berlin and other countries! we might join some of them.
    • Discussions around improving the Qt Creator experience and UI creation in general.
    • There has been some motivation from Qt/C++ to use more CMake in projects (like for resources), which is negatively affecting the Python projects, due to the lack of CMake in the Python projects.
  • Infra & Releases
    • Commercial LTS 5.15.15 to be released soon.
    • 6.5.3 scheduled for the first week of September
  • Bugs & Features
    • QIODevice::read(char*, qint64) functions are removed, but they are useful for the asyncio story. Discussion on if it's worth exposing them.
    • More changes related to QtAsyncIO are ready for review.
    • PYSIDE-2417 overflow issue was fixed
    • [ot] i18n in the Qt framework
    • PYSIDE-2418 connection issue with python overloads
    • 6.6 documentation has some issues due to the QtGraph new module
    • PYSIDE-2423 connecting signals to python callable doesn't properly work - trying to find a proper solution
    • PYSIDE-2424 Installing shiboken in a non-standard way discussion - it might not be properly fixed.
    • Next Wednesday 10am: session about Shiboken + QtScrypt status
    • PYSIDE-2419 locale issue on macOS due to the Info.plist that python includes that overrides the QLocale settings. A bug report was filed upstream, and a workaround is suggested.
    • PYSIDE-2421 webengine issue was discussed, it's an Qt/C++ chromium issue.
    • CMake FindPython patches are still being worked out, the wrong interpreter is being found.
    • patchelf removal is causing some issues with cross compilation.
    • qtpip works continues.

17. August 2023

  • Bugs & Features
    • Investigating on PyPySide MI segfault postponed but on To-Do list PYSIDE-1991
    • PYSIDE-2404 More Progress in Lazy Initialization
      • the optional __getattr__ in module objects was successfully implemented (but is seldom used)
      • lazy init of Enums is probably no more needed, covered by the import scheme below
      • most common cases like "from PySide6.QtWidgets import QLabel" supported by another __import__ override
      • Keep your fingers crossed, testing starts today
    • PYSIDE-2419 QLocale::language() returns wrong on macOS.
      • Caused by QLocale infrastructure which looks at Info.plist inside the Python interpreter macOS bundle.
      • Working on a hack fix after consulting Tor Arne and Eddy.
    • Pacthelf removal - cross compilation breaks. Working on a fix.
    • PYSIDE-2421 - QWebEngineView.print() - rerouted to Qt
      • But, might requires an ownership fix in Shiboken once QTBUG-116052 is resolved
    • Research - use the .debug files provided by the Qt installer to debug from VSCode.
      • Saves time from not building Qt everytime
      • Still ongoing
    • QtAsyncio: Implementation of asyncio.Server (one open question remains - asyncio API and Qt API don't always match as cleanly as desirable).

10. August 2023

  • General
  • Infra & Releases
  • Bugs & Features
    • Patchelf removal only partially possible because of using patchelf on prebuilt Qt binaries.
      • For Qfp binaries patchelf removal under review. MacOS issue being fixed. This is needed for Android.
    • Shiboken module cmake installation bug fixed.
    • Progressing with Android C++ to Python callback, now that Qfp binaries could be loaded on startup.
    • Further investigating on PyPySide MI segfault PYSIDE-1991
    • PYSIDE-2404 Progress in Lazy Initialization
      • the new dual registration is done and builds the base for concrete lazy init
      • lazy init of Enums postponed because
      • an undocumented optional __getattr__ in module objects makes it much easier to lazy-load whole classes, first.

3. August 2023

  • General
    • New reports board
    • QtCreator support
    • Integration cycle on gerrit overview
  • Infra & Releases
    • CI down next Monday for a few hours
    • First tests on linux arm64
    • Preparing 5.15.15 Commercial LTS
    • qtpip first trials on the CI
  • Bugs & Features
    • Async research continues, new things are being discovered while is being developed
      • Implementing a few new things for improving the support
      • Initial patch got merged, but a few others are in the making
    • Team contributing to QtAcademy
    • SQL queries issues, inconsistencies in the API were fixed
    • Build with ninja had some problems regarding mixing stdout and stderr
    • Testing initial support for rvalues
    • 2272 fixing signatures for some qmlRegister* functions
    • Examples: new mediaplayer was fully ported
    • Example gallery scans now a doc directory for images
    • Some other multimedia examples are pending for review
    • Team contributing to Qt translations
    • Adjusting the deployment tool, and fixing issues with pyenv, and upgrading nuitka
    • CMake: adjusting the files to use the new API for finding python, reducing our cmake files
      • Considering also the removal of patchelf, and follow the cmake approach
    • Lazy initialization of enums is showing a good improvement on the performance

27. July 2023

  • General
    • Shyam wrote trip report to Europython
    • Some vacations starting soon for some team members
    • Got some cool t-shirts (internal only so far) - Is there interest for merch?
  • Infra & Releases
    • 6.5.2 released
    • Some LTS releases soon as well
    • Issues on the CI (RHEL8.6) and python interpreter.
    • Formalization of release besides wheels on PyPI and account.qt.io
    • Soon to enable CI on qtpip
  • Bugs & Features
    • [ext] designer issue, translations
    • PYSIDE-2402 QtHttpServer module was missing on Windows
    • QSql methods were un-deprecated (module seems to need more love)
    • Port QtGraph example
    • AsyncIO module: there is a second change in preparation
    • Finally the android issue we had was solved. It seems that patchelf was breaking our binaries, and now we are using a cmake approach instead.
    • Enable unity builds for android
    • Nuitka will be pinned to a recent version
    • PYSIDE-2404 lazy loader research
  • Interesting projects we checked

20. July 2023

  • General
    • Two team members @ Europython 2023
  • Infra & Releases
  • Bugs & Features
    • Implementing transports and protocols of asyncio API
    • Lazy importer still under development. Ongoings:
      • necessary to register all types without creating them
      • turning all PyTypeObject into PyTypeObject valued functions
      • quite hard because deeply buried in the generated code

13. July 2023

  • General
    • CI is not behaving, so be cautious
    • 3.12 beta 4 was released
    • Next week some people are going to Europython
  • Infra & Releases
    • 6.5.2 still in progress, waiting to have the RC wheels
  • Bugs & Features
    • Qt Akademy to prepare a Qt for Python course
    • Examples: we might adapt our gallery to https://bugreports.qt.io/browse/QTBUG-115174
    • Android: callback issue from C++ to Python, some ideas are around, but the problem persists.
      • Might be related to the usage of patchelf.
    • Research on Lazy loader continues
      • Some ideas are behaving well at the moment, but still being tested.
      • We might need to discover some classes that we cannot initialize lazily (manual code injection, need init before usage)
    • We need some reviews for the eventloop patch (asyncio)
    • An enum class with an issue for stubs.
    • qtpip work continues
    • Some good-first-issue are planned for the project, so more contributors can join us!

6. July 2023

  • General
    • PySide 6.6 will support Python 3.8+
    • Python 3.12 support will be back-ported to 6.5 only, and not 6.2
  • Infra & Releases
    • 6.2.9 commercial lts was released yesterday.
    • 6.5.2 RC wheels to be tested.
    • 5.15 open commercial lts tags are in the pyside/pyside-setup repo.
    • qtpip configuration file being improved and updated
    • ARM CI host configuration continues
  • Bugs & Features
    • Removal of old enums was finished
    • Starting to work with lazy loaders for enums
    • First iteration of the asyncio support for the qt eventloop, tests are being prepared.
    • PYSIDE-2370 cross compilation issue, might be related to host python, provided some options to try.
    • Android issue, we cannot get C++ callbacks to Python. Might be related to a python version incompatibility.
    • Preparing a contribution back to python-to-android
    • Rewriting some enum code
    • Add mediaplayer demo in qtdoc for python (some issues with qml)
    • Add document viewer qtdoc example
    • PYSIDE-2381 QSettings issue
    • pyside6-lupdate issues related to encoding.
    • qtpip works continues

29. June 2023

  • General
    • Next maintenance break in August.
  • Infra & Releases
    • 6.5.2 postponed until next week
    • 6.2.9 Commercial LTS soon to be released (a new qt build)
    • 5.15.15 LTS in the next weeks
    • ARM CI host still in progress
    • Brainstorming some additional matrix testing infra for Python versions
    • Tags for OSS and new LTS public releases (IFW ticket)
  • Bugs & Features
    • Research on scripting continues
    • Designer related features/ QtCreator
    • Memory leak related to REG is solved
    • New icon theme for examples coming
    • Some qdoc examples might be enabled for Python
    • Enum removal is still generating detail discussions
      • Two implementation versions are suggested.
      • The old ones were written in C++ so the startup time is a lot slower
      • Lazy generator is helping a A LOT
    • Android dev build - unity had some complications
    • Async event loop work, last issues were addressed.
      • still some network io features are missing
    • [Research] PySide components for QtDS needs to follow QtDS release cycle rather than Qt.


21. June 2023

  • General
    • PyPI limit increase for PySide6-Addons
    • PySide 6.6 might have support for Python 3.8+ (due to Python 3.7 EOL in a week)
    • Python 3.12b3 is out - test!
    • Qt Contributor Summit
      • General session + maybe another one for specific topics.
  • Infra & Releases
    • 6.2.9 is ready, but waiting for Qt/c++ release
    • 6.5.2 release date is next week.
    • Tags for OSS and new LTS public releases
  • Bugs & Features
    • Android research: extra functionality is there, and working on bluetooth/permission integration with a device (example)
    • PYSIDE-2364 Invalid syntax on a pyi file
    • Continue with the old enum removal.
      • Maybe delayed initialization to improve startup time.
    • AsyncIO eventloop work continues
    • Research for scripting continues
    • 6.6 adaptations
    • Fix Enum issue with clang with invalid hex

15. June 2023

  • General
    • Going to EuroPython
    • Participation in Qt Academy
  • Infra & Releases
    • 6.2.9 LTS to be released
    • NFS issues in the CI, being worked on.
    • ARM host on CI experiencing some issues.
      • Some preliminary wheels were generated in order to test.
      • Might help the Android story, but this needs to be confirmed.
  • Bugs & Features
    • Async research revisited
      • Testing eventloop wrapping
    • Memory leak issue still needs to be fixed (hopefully for 6.5.2)
    • Examples in Qt revamp
    • Translations and fixes for 6.6
    • Discussion about Enums implementation
    • Scripting on C++ research continues
    • PYSIDE-1735 removing old enums continues
    • Android improvements in review
      • Adding more modules
    • QVariant enum change (temporary patch until Qt7)
    • shiboken_generator research to make it publicly available (libclang dependency)

8. June 2023

  • General
    • Python 3.11.4 released, 3.12.0beta2
    • PySide6-addons reaching the 10G limit on PyPI
  • Infra & Releases
    • 6.5.1.1 released due to a regression (introduced by a mem leak fix)
    • Maintenance Tool > wheels
      • Special case for M2M protocols to be tested
    • CI on arm64 continues (Linux and Windows)
  • Bugs & Features
    • Fixed some type-hint related issues PYSIDE-2357/PYSIDE-2331/PYSIDE-2340
    • Scripting research
    • Qt pip tool has updated the configuration file and wheels to continue the work on the new tool
    • QVariant PyEnum issue -> solution for review
    • Android work continues: improving the dependency detection
    • PYSIDE-2335 unraisable is finally checked in (the current solution works, it could be improved but low prio -> xml definitions)
    • PYSIDE-2354 type error due to the usage of Generic (related to 939) - related to cpython issue
    • PYSIDE-1735 old enums removal started
    • Example tunings
    • Bug fixing week

1. Juni 2023

  • General
    • Europython - call for first time speakers (open to anyone)
    • Waiting until API review to move dev to 6.6
    • New Epic/User Stories policy
    • Participating into Qt Academy
  • Infra & Releases
    • 6.5.1 released, a leak fix is causing issues with signal connections.
      • Initially we thought it was purely functools.partial but there are other cases that are not working.
      • Testing alternative solutions, otherwise we revert
      • In any case a 6.5.1.1 will be out soon
    • Need to test the new conf file for the commercial wheel install mechanism
    • 5.15 needs to skip libclang16
    • Testing maintenance tool with a license without Qt for Automation (for wheel check)
    • JIRA release versions are pending.
  • Bugs & Features
    • (External) Designer fonts issues
    • PYSIDE-2347 metaobject tool missing types
    • Scxml events missing connections.
    • Scripting research (check report)
    • Leak research continue
    • Issue with new example state machine to be solved (event handling)
    • PYSIDE-1930 PYSIDE-2239 QVariant Enum issue, the fix is out, but we need some tests.
    • Finish the problem with unraisable exceptions
      • Discussion on special cases with a run function
      • Blocking functions are still an issue, because we cannot break
    • PYSIDE-2354 typing.Generic issue with inheritance in progress
    • PyTest research continues

25. Mai 2023

  • General
    • QtWS - One talk accepted
    • Europython - One talk accepted
  • Infra & Releases
    • 6.5.1 one issue was found, so release will be available once we merge the fix.
    • 5.15.14 to be release soon.
    • CI arm64 experiments continue
    • Asking about M2M wheels on the maintenance tool, for 6.6
    • Solving LTS issues of missing tags on public repo, might take some time.
  • Bugs & Features
    • Evaluating shiboken6_generator to be published on PyPi
    • Few small fixes around the project (release preparation, new features, small bugs, doc issues)
    • QtScrypt experimental work continues
    • Permission API added (motivated by the android support)
    • Improvements for the android deployment.
    • Trying to fix an issue of getting Enums to Ints
    • Delayed exceptions work continues, trying to fix some corner cases still.
    • Starting to explore PEP 658
    • Research on PyTest compatibility
    • [Designer] Fixing some issues, and warnings

18. Mai 2023

  • Infra & Releases
    • 6.5.1 Preparations
    • 5.15.14 Preparations
  • Bugs & Features
    • Fixed PYSIDE-2325 typesystem incomplete
    • Fixed PYSIDE-2328 Segmentation fault/access violation when connecting signal of temporary object
    • Fixed PYSIDE-2329 Signal connections with init kwargs
    • Reverted temporarily the delayed exception patch, in order to not block the 6.5.1 release. This should be discussed at the next meeting

11. Mai 2023

  • General
    • Python Users Berlin meetup talk today
    • Europython, QtWS
    • Qt FF 02.06
    • Android team «ketchup»
    • Example revamp update
      • Quick examples needs to be ported to loadFromModule (Quick3D, QuickLocation, missing)
  • Infra & Releases
  • Bugs & Features
    • Fixing regressions issue related to threads - delayed exceptions
    • https://bugreports.qt.io/browse/PYSIDE-2321 event handlers issues
    • https://bugreports.qt.io/browse/PYSIDE-1951 virtual method override - still in progress
    • https://bugreports.qt.io/browse/PYSIDE-2230 3.12 support
    • nogil research continues - mutex might slow down things, but doing a proper division of the code could help.
    • QML example tutorials - one review pending
    • 2313 longtype issue with numpy
    • examples revamping - loadFromModule
    • Icon library -> icon theme soon available on a new module.
    • PYSIDE-2316 sharedpointer template issues
    • Shiboken refactoring
    • Finally the memory leak is fixed
    • Enhancing android story, detection of modules, finding dependencies, got ideas from the current qt/c++ tool.
    • Build infrastructure, setup.py install has been deprecated since 3.11 - looking into a new build infrastructure.
    • Internal technical talks
      • Shiboken generating bindings
      • Shiboken for documentation generation
      • type hints generation
      • QML integration via decorators

4. Mai 2023

  • General
    • Europython talk by Shyam still under consideration
    • Qt for Android catch up meeting scheduled for 09/05/2023
    • Discussion with kivy developers done on discord. They seem to be onboard with the Qt support.
  • Infra & Releases
  • Bugs & Features
    • Android Deployment Enhancements - Bringing pyside6-android-deploy at the level of androiddeployqt - Ongoing
    • python-for-android PR Enhancements - Ongoing
    • PYSIDE-1951 super().__lt__ global solution ongoing
    • PYSIDE-2206 QML examples/tutorials revamping
    • PYSIDE-2221 Python runs NoGil version of mandelbrot.py 7.7 times faster on a 10-code M1 machine
    • PYSIDE-2288 Fixed Clang 16 support for 6.6/6.5.
    • PYSIDE-2310 Crashing without error reporting in Qt-based threads, debugging
    • PYSIDE-2299 Ongoing, current attempt fixes most tests but leaves some SegFaults, might be a dead-end.

27. April 2023

  • General
    • Planning collaboration with other projects like Kivy, towards a better mobile support.
    • QtWS talks submitted
    • PyConES, PyConPT, PyConAPAC
    • Qt for Android catching up meeting
    • Bug fixing week
  • Infra & Releases
    • 5.15.8 wrong source code was published PYSIDE-2297
  • Bugs & Features
  • PYSIDE-1951 super() and `__lt__` operator issue related to our wrapper.
  • asyncio work continues
  • enhancements for python-for-android to improve the android stories
  • pyside6-android-deploy polished as well
  • 2299 memory leak might have special cases related to the callback
  • clang16 is giving some issues in Qt
  • Icon examples libraries for the python examples research
  • Snippet translator improvements

20. April 2023

  • Bugs & Features
    • Work on support for clang 16, which changes behavior quite a bit
    • Fixed PYSIDE-2284 issue with NoneType
    • Fixed PYSIDE-2285 Type hints / Tuples
    • Fixed PYSIDE-2298 and others, fixed some missing 6.5 API
    • Added new tools - pyside6-qmlsc (commercial only) and pyside6-qmlcachegen
    • Simplified tool adding process
    • PySide6 to Android Deployment blog published 🤞
    • PYSIDE-1564 Final approach was implemented with a new super() class. But This approach was not helpful. Issue finally closed.
    • PYSIDE-1951 A solution was finally found and implemented. Trying to improve.
    • PYSIDE-2304 Issue resolved, Cooperative Multiple Inheritance explained with a custom example, customer is happy
    • PYSIDE-2299 Cause for memory leak has been found, but fix will not be trivial (might require extensive refactoring in worst case).
    • Debugging QtAsyncIoEventLoop, partly functional but still early.

13. April 2023

  • General
    • SF 24.04 -> 16.05 ooo
    • CM 19.04 -> 27.04 ooo
    • QtCreator beta now includes an extra option to create virtual environments
  • Infra & Releases
  • Bugs & Features
    • Type hints PYSIDE-2284 issue with NoneType
    • 2283 Platform dependencies into our docs
    • Clang16 improvements to be compatible
    • Research on the missing DLL issue on Windows
    • Research on a memory leak possible related to Signal instances.
    • asyncio debugging with a self-made event loop
    • Improving the python-for-android changes to prepare a patch
    • Technical Preview blog post for Android in the making
    • PYSIDE-2294 multiple inheritance issue for a corner case with positional arguments
      • Researching a new approach that could improve things further

6. April 2023

  • General
    • New Python releases 3.11.3, 3.10.11
  • Infra & Releases
    • 6.5.0 released
    • 6.2.8 commercial LTS to go out soon
    • Review Maitenance Tool integration
    • qtpip server configuration still in progress
  • Bugs & Features
    • Android: preparing post, tests, and general improvements.
    • PYSIDE-2266 venv issue with the deployment tool.
    • Documentation was released for 6.5.0 and many things were polished.
    • Async: continue working on the event loop wrapper implementation.
    • Research on memory leak that pyqtgraph found
    • Brushing up tutorials: expenses
    • Adding new examples: simplebrowser, screen capture
    • Documentation: found some issues with qdoc (from the move of examples to auto tests)
    • PYSIDE-2278 type hinting issue was fixed
    • Improvements to the documentation
    • Cleaning imports from examples
    • Add isort to the development guide
    • Exploring other projects where Python can shine

30. March 2023

  • General
  • Infra & Releases
    • 6.5 to be released next week
    • including requirements.txt along the commercial bundle
      • research if possible retroactively
    • qtpip research continues
  • Bugs & Features
    • Features that needs to be in before 6.5
      • deployment tool nuitka patch
      • android tool
      • tutorial of thew new quick styled app
    • Improving enums to avoid using the old implementation
    • Deployment tool and android research continues
    • Async research on asyncio and trio proper integration
    • Refactoring
    • Shiboken examples are not displayed on the docs
    • Updating the new image of the project
    • Re-porting multimedia examples, simplebrowser
    • Initial support for permission API
    • small fixes on metaobjectdump


23. March 2023

  • General
    • QtWS CfP open
    • EuroPython talks submitted
    • Keeping an eye on future Python events
  • Infra & Releases
    • 6.4.3 is out
      • pypy3 3.9.12 compatible, newer versions included an incompatibility
    • 6.5 branching out today
  • Bugs & Features
    • async support continues.
    • Fixing a couple of issues related to the pyside6-deploy tool.
      • venv compatibility
      • qml apps are not properly working
    • android support almost ready for TP
    • PYSIDE-2261 cython signature module incompatibility fixed
    • Removed goto from PySide
    • Multiple inheritance issues were fixed.
    • old Enums are being removed, and the startup time will improve a bit (still in progress)
    • PYSIDE-971 GL funtions implementation
    • including texttospeech into the wheels (missing by mistake)
    • adapting scripts to 6.5
    • metaobjectdump issue fixed
    • doc updates

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