Qt wiki will be updated on October 12th 2023 starting at 11:30 AM (EEST) and the maintenance will last around 2-3 hours. During the maintenance the site will be unavailable.
Qt for Python Development Notes: Difference between revisions
Jump to navigation
Jump to search
(43 intermediate revisions by 5 users not shown) | |||
Line 1: | Line 1: | ||
[[Category:Qt for Python]] | [[Category:Qt for Python]] | ||
==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 [https://bugreports.qt.io/browse/PYSIDE-2465 PYSIDE-2465] (3.11.5 test fail) | |||
**Work on [https://bugreports.qt.io/browse/PYSIDE-2462 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 | |||
**[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] | |||
**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 | |||
**[https://bugreports.qt.io/browse/PYSIDE-2460 PYSIDE-2460] Work on some OpenGL issues, updated hellogl2 example | |||
**[https://bugreports.qt.io/browse/PYSIDE-2461 PYSIDE-2461] Build system for cross build fixes | |||
**[https://bugreports.qt.io/browse/PYSIDE-2463 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 [https://bugreports.qt.io/browse/PYSIDE-2444 PYSIDE-2444] QState.assignProperty - incorrect type annotation | |||
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2454 PYSIDE-2454] Default argument is not used for containers | |||
**Added some number protocol slots [https://bugreports.qt.io/browse/PYSIDE-2446 PYSIDE-2446] | |||
**Research on submodules [https://bugreports.qt.io/browse/PYSIDE-2447 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 [https://bugreports.qt.io/browse/PYSIDE-1991 PYSIDE-1991] | |||
**[https://bugreports.qt.io/browse/PYSIDE-2404 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 | |||
**[https://bugreports.qt.io/browse/PYSIDE-2419 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. | |||
**[https://bugreports.qt.io/browse/PYSIDE-2421 PYSIDE-2421] - QWebEngineView.print() - rerouted to Qt | |||
***But, might requires an ownership fix in Shiboken once [https://bugreports.qt.io/browse/QTBUG-116052 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 [https://bugreports.qt.io/browse/PYSIDE-1991 PYSIDE-1991] | |||
**[https://bugreports.qt.io/browse/PYSIDE-2404 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 | |||
**https://github.com/larryhastings/appeal | |||
**Stable Diffusion | |||
**https://docs.hpyproject.org/en/latest/quickstart.html | |||
**https://github.com/rui314/mold | |||
===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 [https://bugreports.qt.io/browse/PYSIDE-2325 PYSIDE-2325] typesystem incomplete | |||
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2328 PYSIDE-2328] Segmentation fault/access violation when connecting signal of temporary object | |||
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2329 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 | |||
***Fixed [https://bugreports.qt.io/browse/PYSIDE-2310 PYSIDE-2310] | |||
***Fixed [https://bugreports.qt.io/browse/PYSIDE-2321 PYSIDE-2321] | |||
===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 | |||
**6.5.1 to be release around 15.05 -> shifted to next week. | |||
***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 | |||
===4. Mai 2023=== | ===4. Mai 2023=== | ||
*General | *General | ||
**Europython talk by Shyam | **Europython talk by Shyam still under consideration | ||
**Qt for Android catch up meeting scheduled for 09/05/2023 | **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. | **Discussion with kivy developers done on discord. They seem to be onboard with the Qt support. | ||
Line 12: | Line 465: | ||
**Android Deployment Enhancements - Bringing pyside6-android-deploy at the level of androiddeployqt - Ongoing | **Android Deployment Enhancements - Bringing pyside6-android-deploy at the level of androiddeployqt - Ongoing | ||
**python-for-android PR Enhancements - Ongoing | **python-for-android PR Enhancements - Ongoing | ||
**PYSIDE-1951 super().__lt__ global solution ongoing | |||
**[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. | |||
===27. April 2023=== | ===27. April 2023=== |
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
- Planning 6.6 for the last days of September
- 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.
- Patchelf removal only partially possible because of using patchelf on prebuilt Qt binaries.
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
- Async research continues, new things are being discovered while is being developed
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)
- Async research revisited
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.
- 6.5.1 released, a leak fix is causing issues with signal connections.
- 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
- Fixed PYSIDE-2310
- Fixed PYSIDE-2321
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
- 6.5.1 to be release around 15.05 -> shifted to next week.
- 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
- 6.5.1 to be release around 15.05 -> shifted to next week.
- 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
- 6.5.0 released, but one missing DLL on windows for people without hw acceleration.
- To be fixed in 6.5.1
- 6.2.8 LTS to be released this week
- Improving current state of the maintenance tool for Python
- Second version of the packages in the server
- 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
- 6.5.0 released, but one missing DLL on windows for people without hw acceleration.
- 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
- Features that needs to be in before 6.5
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
- 6.4.3 is out
- 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
- Packing use-cases
- Europython CfP: https://ep2023.europython.eu/cfp
- 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
- Re-added QtLocation
- 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
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)
- Branching dev to 6.5 when the Qt/C++ 6.5.0 RC is out (16 Mar '23)
- 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
- nogil research was positive, and most of our test work. It would require for us to modify the generator for each function/module.
09. February 2023
- General
- How to make our API better for pathlib?
- 3.11.2 released, 3.10.10 as well
- https://peps.python.org/pep-0675/
- 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:
- PYSIDE-2201 Weak Reference handling is complete
- PYSIDE-79 Research on Reference bug 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
- PYSIDE-1994: De-virtualization of Shiboken embedded Python files is now an option controlled dynamically by SBK_EMBED
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