Qt for Python Development Notes: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
 
(256 intermediate revisions by 7 users not shown)
Line 1: Line 1:
[[Category:Qt for Python]]
[[Category:Qt for Python]]
==2023==


===4. Mai 2023===
==2025==


*General
=== 13. March 2025 ===
**Europython talk by Shyam stll 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


===27. April 2023===
* General
** QtCS: We need to submit talks in case we want to attend.
** Tomorrow Python 3.14a6 will be released https://peps.python.org/pep-0745/
* Infra & Releases
** Windows on ARM research continues and looks good! managed to fix an issue, but a new issues was found on samplebinding. The issue might be related to missing OpenGL.
** 6.9.0rc might be released tomorrow, which means PySide6 FF will be due.
* Bugs & Features
** Many new type hints bugs being reported :)
** Smart pointers exclusion issues fixed (shiboken)
** Designer and Linguist tools fixes (External)
** Helping the remoteobject contributions to work better.
** Documentation checks and 6.10 adaption.
** https://bugreports.qt.io/browse/PYSIDE-2221 Going back to the free threaded Python topic in PySide
*** Lots of changes since the previous attempt
** https://bugreports.qt.io/browse/PYSIDE-3012 Kept working on the pep8 compatibility for type hints issues
** https://bugreports.qt.io/browse/PYSIDE-3034 trying to figure out to get type information from public variables
** https://bugreports.qt.io/browse/PYSIDE-3046 fixing type issues
** Re-Starting research on iOS compatibility
** QML Bridges: Slots registration is working now! new tests are being written.


*General
=== 6. March 2025 ===
**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===
* General
** Jaime's internal presentation will be next Monday at 11am
** QtCS registration is up.
** Discussion on IPC options for Qt developers.
* Infra & Releases
** 6.9 Qt for Python FF happening next week.
** Windows on ARM deployment test failing.
* Bugs & Features
** Remote object contributions are going well, and we might merge them for 6.9
** Binary size reduction research continued, but it seems we have reached the reduction we can, without touching the C++ side of our bindings.
** PYSIDE-3012 Type hints issues were addressed (typing.Sequence -> typing.Collection) even if it is a simple change in theory, to change it internally and for our generation it took a lot of time.
*** Removing object-inheritance in the pyi files
*** White-space around equal operators issue (default parameters)
** Update Widget Gallery example
** Changed to adapt std::chrono patches in shiboken (identify overloads and choose the better option)
** Cleaning up some  bug reports, metamethod connection issue fixed.
** Addressing some coverity issues for Designer
** Started 6.10 adaption.
** QML Next works continues.
** Changes in the build system scripts are still in progress, some stuff is broken when used, but it's going in a good direction.
** Finalizing the pyside6-project changes to adapt the pyproject.toml changes.
** Addressing new found QtCreator issues with the pyproject.toml compatibility.


*Bugs & Features
=== 27. February 2025 ===
**Work on support for clang 16, which changes behavior quite a bit
* General
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2284 PYSIDE-2284] issue with NoneType
** Windows on ARM improving
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2285 PYSIDE-2285] Type hints / Tuples
* Bugs & Features
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2298 PYSIDE-2298] and others, fixed some missing 6.5 API
** PYSIDE-2701 Size reduction, investigating removing redundant overloads
**Added new tools - pyside6-qmlsc (commercial only) and pyside6-qmlcachegen
** PYSIDE-2701 Size reduction, trying wrapper folding, needs massive reordering
**Simplified tool adding process
** PYSIDE-3012 replacement of typing.Sequence by collections.abc.Sequence
**PySide6 to Android Deployment blog published 🤞
*** Identified incompatibility with Python < 3.9.8 and Python < 3.10.1, fixed by small patch
**[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.
*** First change finally done, needs series of further changes
**[https://bugreports.qt.io/browse/PYSIDE-1951 PYSIDE-1951] A solution was finally found and implemented. Trying to improve.
** 6.10 adaption continues
**[https://bugreports.qt.io/browse/PYSIDE-2304 PYSIDE-2304] Issue resolved, Cooperative Multiple Inheritance explained with a custom example, customer is happy
** PYSIDE 2942 Slot type annotation fix
**[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).
** QTBUG-132266 Checked the code on macOS that the user uploaded, no issues were found related to PySide or macOS.
**Debugging QtAsyncIoEventLoop, partly functional but still early.


===13. April 2023===
=== 20. February 2025 ===
* General
** QtWS possible participation
** QtCS has a priority of bringing more external contributors
* Infra & Releases
** 6.9 RC February 28th (maybe postponed)
** Windows on ARM test cases failing due to mypy fast cache (requires rust toolchain, that's currently missing from the CI). static libclang doesn't work on ARM builds (but does in x86_64).
** RTA trials continue, possibility to use qtpip
* Bugs & Features
** PYSIDE-2701 Size reduction for virtual functions patch was merged
** PYSIDE-3002 painted virtual functions solved (even though we had our own opinion about performance)
** 3020 SignalInstance disconnect issue fixed
** Templates/snippets cleanup in the typesystem.
** 6.10 adaption continues
** QtCreator toml changes:
*** psyide6-project adaption to the latest changed related
** QtDS changes postponed (to be available in QtDS 4.8)
** PYSIDE-3017 QSerialBus overload order issue was fixed
** PYSIDE-3012 Still addressing issues (CI currently failing)
** qtqa improving  the wheel testing process.
** Brainstorming a better approach for QML Next
** Finishing the folding patches, they don't make a lot of sense at the moment due to previous changes (being added into shiboken)


*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
*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===
=== 13. February 2025 ===
* General
** Did you know Shiboken translates into "Death Sword"? 死某剣
** QtCS happening after QtWS in Munich in early May.
** Qt Design Studio integration (internal presentation) with Python to be prepared.
* Infra & Releases
** Windows on ARM research continues.
** QtDS wheels to be updated for the new release
** 6.9.0 RC by the end of the February.
** RTA testing initiative to be restart
** Evaluating scikit-core-build for replacing build_scripts/
* Bugs & Features
** Flatpak issue was solved (cleanup)
** Brainstorming ideas for QML Next (preparing internal presentation)
** Android wheel names to be adapted https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/#android
** Qt Creator finishing .toml support for Python Projects.
** Qt DS Python changes ready to be merged
*** Tutorial changes to be prepared
** Type hints heuristic evaluation in order to address newly found issues related to overloads with similar shape.
** Handling of value-types in shiboken (refactoring, new features and doc)
** PYSIDE-3005 OpenGL issues were fixed
** PYSIDE-3013 Font issue was fixed
** PYSIDE-3015 OpcUA support bug fixed
** PYSIDE-3014 virtual function on QSpinBox issue fixed
** 6.9 adaption patches
*** Found newly moc changes were breaking our enums
** Size Reduction
*** hashing functions to re-use them.
*** changing the policy to use absolute size measure (sizebench)
*** Removing a few things from the folding patch, in order to merge it
** PYSIDE-2997 and PYSIDE-3003 type hints issues were solved. A couple are still open.


*General
=== 6. February 2025 ===
**New Python releases 3.11.3, 3.10.11
* General
*Infra & Releases
** We went to FOSDEM and meet many PySide users!
**6.5.0 released
** Commercial / LTS naming on the Installer.
**6.2.8 commercial LTS to go out soon
* Infra & Releases
**Review Maitenance Tool integration
** Reviewing our branching policies. There is interest in branching pyside-setup sooner.
**qtpip server configuration still in progress
** We might need to move the Android wheels to PyPI (Probably from 6.9 on)
*Bugs & Features
** 6.8.2.1 release is planned in order to fix the missing DLLs in Windows (MSVC)
**Android: preparing post, tests, and general improvements.
*** cheery pick is missing for 5.15
**PYSIDE-2266 venv issue with the deployment tool.
** PySide6_DS 4.7 to be released in the next couple of weeks.
**Documentation was released for 6.5.0 and many things were polished.
* Bugs & Features
**Async: continue working on the event loop wrapper implementation.
** Adding TOML support for Python projects in QtCreator
**Research on memory leak that pyqtgraph found
** TypeHints new reports, trying to get an idea of what's causing the errors
**Brushing up tutorials: expenses
** Issues in Flatpak: updating version, checking a cleanup issue. Addressing dependencies issues for optional packages.
**Adding new examples: simplebrowser, screen capture
** QtQA internal scripting: Adapting an automatic wheel download.
**Documentation: found some issues with qdoc (from the move of examples to auto tests)
** Size reduction
**PYSIDE-2278 type hinting issue was fixed
*** Move virtual function overrides. Only generated on the base classes.
**Improvements to the documentation
*** Discovered and fixed a few multiple inheritance with shiboken
**Cleaning imports from examples
** Snippets translation tool: Trying to add a feature to use fully qualified enums.
**Add isort to the development guide
** clang-tidy warnings were fixes
**Exploring other projects where Python can shine
** Handling value types on non-default constructors (inspired by 6.9 changes)
** Discussion on moving away out internal building process to scikit-build
** Size reduction (folding approach): To publish first results soon.
** Supporting team member with pyi session to understand the internal mechanism.
** Ideas from the size reduction research were implemented
** Changing the benchmark code for the size reduction (which might not include the new changes to shiboken)


===30. March 2023===
=== 30. January 2025 ===


*General
* General
*Infra & Releases
* Infra & Releases
**6.5 to be released next week
** Preparing 6.8.2
**including requirements.txt along the commercial bundle
* Bugs & Features
***research if possible retroactively
** Size reduction [https://bugreports.qt.io/browse/PYSIDE-2701 PYSIDE-2701] : Implemented code reuse for Python overrides of virtual functions
**qtpip research continues
** QtPythonScripting: continue working on multiple inheritance, added more widgets
*Bugs & Features
** Size reduction: PYSIDE-2701 Folding progress: We can now combine multiple foldings of the same function. This will bring some more reduction.
**Features that needs to be in before 6.5
** Simplebrowser example updated
***deployment tool nuitka patch
** adding imageviewer docs
***android tool
=== 23. January 2025 ===
***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


* General
** [https://invent.kde.org/frameworks/kconfig/-/jobs/2497118 KDE testing Qt betas and snapshots]
*** Should we update our Branching policy?
*** Our branching policy:
**** We branch briefly after API Review is done in qt meta repo.
** Yocto libclang issue - https://codereview.qt-project.org/c/pyside/pyside-setup/+/609352
* Infra & Releases
** Windows on ARM configuration testing.
** 6.8.2 scheduled release next week, and branching will happen today.
* Bugs & Features
** QtPythonScripting: continue working on Stable ABI support and multiple inheritance
** [ext] 6.9 Designer release issues with macOS drag and drop + bug fixing
** PYSIDE-2990 Slot Executed in Signal's Thread Even With Auto & QueuedConnection
*** People is getting the documentation from an outdated wiki page, which is causing new reports.
*** Wiki will be updated.
** Size reduction: we generate a lot of code for parsing keyword arguments. The code was moved to libshiboken and the size was reduced 3%
*** Optimization reviews: it seems it's only the virtual functions, but not the actual bindings.
** Size reduction: Windows is giving some issues for special characters, which seems to be also present in Linux.
** Cross compiling and creating wheels with the new JNI classes bindings. Trying to test them in an emulator, found other issues.
** pyside6-deploy/project and DS changes integrating, hopefully they will be merged today \o/
** DS-only changes are still in review.
** TOML integration - continue research on adding new format for python projects
** QtGraphWidgets issue with yocto build was fixed.


===23. March 2023===
=== 16. January 2025 ===


*General
* General
**QtWS CfP open
** Highly probable that one of us will go to FOSDEM to help with the Qt Project stand! so if you /reader/ are going, drop by and say hi!
**EuroPython talks submitted
* Infra & Releases
**Keeping an eye on future Python events
** 6.8.2 will be released on 23th January so far, so we expect providing the wheels in the following days.
*Infra & Releases
** 3.13 on the CI still on-going.  
**6.4.3 is out
** 6.5.4 OSS released
***pypy3 3.9.12 compatible, newer versions included an incompatibility
* Bugs & Features
**6.5 branching out today
** Discussion about QJni* bindings when cross compiling.
*Bugs & Features
*** It did built (and installed) for aarch64 and x86_64 but armv7a will be tried later on.
**async support continues.
*** The main issue with this story was that it was bindings only for cross compiled pyside
**Fixing a couple of issues related to the pyside6-deploy tool.
** Exploring toml compatibilities within QtCreator
***venv compatibility
** DS patches still needs review.
***qml apps are not properly working
** Binary size work continues
**android support almost ready for TP
*** 17% reduction so far, and this could be included in the future-features list.
**PYSIDE-2261 cython signature module incompatibility fixed
*** Once is ready, we might provide an option to disable it to go back to the more readable wrapper code.
**Removed goto from PySide
*** We might evaluate a template approach once the solution is out, to avoid maintaining regexes.
**Multiple inheritance issues were fixed.
** Remote Object reviews ready in order to merge changes (only a few details)
**old Enums are being removed, and the startup time will improve a bit (still in progress)
** Qt Python Scripting
**PYSIDE-971 GL funtions implementation
*** Multiple inheritance is not supported yet.
**including texttospeech into the wheels (missing by mistake)
*** REPL function to help development
**adapting scripts to 6.5
*** Research on Limited API usage.
**metaobjectdump issue fixed
*** find_python macro in 3.26 allow to find the stable abi
**doc updates
** docstring changes in order to expose them as docstring per methods.
*** some experiment to add it to the pyi files, but it doesn't show.


===16. March 2023===
=== 09. January 2025 ===


*General
* General
**Preparing submissions for Europython
** FOSDEM 2025: Qt got a stand!
**New company colors
** Internal Hackathon going on.
*Infra & Releases
* Infra & Releases
**6.4.3 release next week (no release branch)
** https://download.qt.io/official_releases/QtForPython/ got restructured and it's now very tidy
**Issues with Nuitka 1.5.1 (released yesterday) and the CI didn't like it. Pining 1.5
** Preparing 6.8.2
*Bugs & Features
** 6.8.1.1 Windows and Linux wheels were uploaded for consistency thanks to user-reports when uploading only the 6.8.1.1 on macOS due to a missing module
**qtpip: add support for many other operators (for versions)
** Tests with 3.13 on the CI
**PYSIDE-2254 exit crash issue was fixed
* Bugs & Features
**PYSIDE-2251 designer issue when not initializing virtual environment.
** [https://bugreports.qt.io/browse/PYSIDE-2966 PYSIDE-2966] Disabled instantiating non-instantiable classes
**qmlsurface example ported (polishing the C++ code as well)
** [https://bugreports.qt.io/browse/PYSIDE-1735 PYSIDE-1735] Examples and tests were ported to use fully qualified enumerations
**example icons: discussions to standardize them a bit
** Python Scripting continues (enable adding __repr__ functions)
**android research: fixing some issues with qtquick
** Discussion about QJni* bindings when cross compiling.
**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.
*** We might try a few new configurations for adding this bindings.
**PYSIDE-2255 virtual method issue related to access to those members.
** Tutorial for Boot2Qt and PySide apps deployment
**Generalization of QApplication usage on the tests.
** Doc changes: adding comments for using uv
**Research: Add course to QtLearn related to Qt for Python
** QML Next: still working on improved decorators for a smoother integration
**doc: some links are broken.
** Qt Remote Objects: Big set of patches by external contributor
**doc: migration to sphinx-design from sphinx-panels
** Binary size reduction work continues with new ideas from other projects: folding, string handling, renaming, etc.  
** Yocto builds issues with LLVM still not solved.


===9. March 2023===
==2024==


*General
*[[Qt for Python Development Notes 2024]]
**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===
==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
***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
 
 
===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:
***[https://bugreports.qt.io/browse/PYSIDE-2201 PYSIDE-2201] Weak Reference handling is complete
***[https://bugreports.qt.io/browse/PYSIDE-79 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 [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?)
 
===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
*[[Qt for Python Development Notes 2023]]
**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==
==2022==

Latest revision as of 09:58, 13 March 2025


2025

13. March 2025

  • General
  • Infra & Releases
    • Windows on ARM research continues and looks good! managed to fix an issue, but a new issues was found on samplebinding. The issue might be related to missing OpenGL.
    • 6.9.0rc might be released tomorrow, which means PySide6 FF will be due.
  • Bugs & Features

6. March 2025

  • General
    • Jaime's internal presentation will be next Monday at 11am
    • QtCS registration is up.
    • Discussion on IPC options for Qt developers.
  • Infra & Releases
    • 6.9 Qt for Python FF happening next week.
    • Windows on ARM deployment test failing.
  • Bugs & Features
    • Remote object contributions are going well, and we might merge them for 6.9
    • Binary size reduction research continued, but it seems we have reached the reduction we can, without touching the C++ side of our bindings.
    • PYSIDE-3012 Type hints issues were addressed (typing.Sequence -> typing.Collection) even if it is a simple change in theory, to change it internally and for our generation it took a lot of time.
      • Removing object-inheritance in the pyi files
      • White-space around equal operators issue (default parameters)
    • Update Widget Gallery example
    • Changed to adapt std::chrono patches in shiboken (identify overloads and choose the better option)
    • Cleaning up some bug reports, metamethod connection issue fixed.
    • Addressing some coverity issues for Designer
    • Started 6.10 adaption.
    • QML Next works continues.
    • Changes in the build system scripts are still in progress, some stuff is broken when used, but it's going in a good direction.
    • Finalizing the pyside6-project changes to adapt the pyproject.toml changes.
    • Addressing new found QtCreator issues with the pyproject.toml compatibility.

27. February 2025

  • General
    • Windows on ARM improving
  • Bugs & Features
    • PYSIDE-2701 Size reduction, investigating removing redundant overloads
    • PYSIDE-2701 Size reduction, trying wrapper folding, needs massive reordering
    • PYSIDE-3012 replacement of typing.Sequence by collections.abc.Sequence
      • Identified incompatibility with Python < 3.9.8 and Python < 3.10.1, fixed by small patch
      • First change finally done, needs series of further changes
    • 6.10 adaption continues
    • PYSIDE 2942 Slot type annotation fix
    • QTBUG-132266 Checked the code on macOS that the user uploaded, no issues were found related to PySide or macOS.

20. February 2025

  • General
    • QtWS possible participation
    • QtCS has a priority of bringing more external contributors
  • Infra & Releases
    • 6.9 RC February 28th (maybe postponed)
    • Windows on ARM test cases failing due to mypy fast cache (requires rust toolchain, that's currently missing from the CI). static libclang doesn't work on ARM builds (but does in x86_64).
    • RTA trials continue, possibility to use qtpip
  • Bugs & Features
    • PYSIDE-2701 Size reduction for virtual functions patch was merged
    • PYSIDE-3002 painted virtual functions solved (even though we had our own opinion about performance)
    • 3020 SignalInstance disconnect issue fixed
    • Templates/snippets cleanup in the typesystem.
    • 6.10 adaption continues
    • QtCreator toml changes:
      • psyide6-project adaption to the latest changed related
    • QtDS changes postponed (to be available in QtDS 4.8)
    • PYSIDE-3017 QSerialBus overload order issue was fixed
    • PYSIDE-3012 Still addressing issues (CI currently failing)
    • qtqa improving the wheel testing process.
    • Brainstorming a better approach for QML Next
    • Finishing the folding patches, they don't make a lot of sense at the moment due to previous changes (being added into shiboken)


13. February 2025

  • General
    • Did you know Shiboken translates into "Death Sword"? 死某剣
    • QtCS happening after QtWS in Munich in early May.
    • Qt Design Studio integration (internal presentation) with Python to be prepared.
  • Infra & Releases
    • Windows on ARM research continues.
    • QtDS wheels to be updated for the new release
    • 6.9.0 RC by the end of the February.
    • RTA testing initiative to be restart
    • Evaluating scikit-core-build for replacing build_scripts/
  • Bugs & Features
    • Flatpak issue was solved (cleanup)
    • Brainstorming ideas for QML Next (preparing internal presentation)
    • Android wheel names to be adapted https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/#android
    • Qt Creator finishing .toml support for Python Projects.
    • Qt DS Python changes ready to be merged
      • Tutorial changes to be prepared
    • Type hints heuristic evaluation in order to address newly found issues related to overloads with similar shape.
    • Handling of value-types in shiboken (refactoring, new features and doc)
    • PYSIDE-3005 OpenGL issues were fixed
    • PYSIDE-3013 Font issue was fixed
    • PYSIDE-3015 OpcUA support bug fixed
    • PYSIDE-3014 virtual function on QSpinBox issue fixed
    • 6.9 adaption patches
      • Found newly moc changes were breaking our enums
    • Size Reduction
      • hashing functions to re-use them.
      • changing the policy to use absolute size measure (sizebench)
      • Removing a few things from the folding patch, in order to merge it
    • PYSIDE-2997 and PYSIDE-3003 type hints issues were solved. A couple are still open.

6. February 2025

  • General
    • We went to FOSDEM and meet many PySide users!
    • Commercial / LTS naming on the Installer.
  • Infra & Releases
    • Reviewing our branching policies. There is interest in branching pyside-setup sooner.
    • We might need to move the Android wheels to PyPI (Probably from 6.9 on)
    • 6.8.2.1 release is planned in order to fix the missing DLLs in Windows (MSVC)
      • cheery pick is missing for 5.15
    • PySide6_DS 4.7 to be released in the next couple of weeks.
  • Bugs & Features
    • Adding TOML support for Python projects in QtCreator
    • TypeHints new reports, trying to get an idea of what's causing the errors
    • Issues in Flatpak: updating version, checking a cleanup issue. Addressing dependencies issues for optional packages.
    • QtQA internal scripting: Adapting an automatic wheel download.
    • Size reduction
      • Move virtual function overrides. Only generated on the base classes.
      • Discovered and fixed a few multiple inheritance with shiboken
    • Snippets translation tool: Trying to add a feature to use fully qualified enums.
    • clang-tidy warnings were fixes
    • Handling value types on non-default constructors (inspired by 6.9 changes)
    • Discussion on moving away out internal building process to scikit-build
    • Size reduction (folding approach): To publish first results soon.
    • Supporting team member with pyi session to understand the internal mechanism.
    • Ideas from the size reduction research were implemented
    • Changing the benchmark code for the size reduction (which might not include the new changes to shiboken)

30. January 2025

  • General
  • Infra & Releases
    • Preparing 6.8.2
  • Bugs & Features
    • Size reduction PYSIDE-2701 : Implemented code reuse for Python overrides of virtual functions
    • QtPythonScripting: continue working on multiple inheritance, added more widgets
    • Size reduction: PYSIDE-2701 Folding progress: We can now combine multiple foldings of the same function. This will bring some more reduction.
    • Simplebrowser example updated
    • adding imageviewer docs

23. January 2025

  • General
  • Infra & Releases
    • Windows on ARM configuration testing.
    • 6.8.2 scheduled release next week, and branching will happen today.
  • Bugs & Features
    • QtPythonScripting: continue working on Stable ABI support and multiple inheritance
    • [ext] 6.9 Designer release issues with macOS drag and drop + bug fixing
    • PYSIDE-2990 Slot Executed in Signal's Thread Even With Auto & QueuedConnection
      • People is getting the documentation from an outdated wiki page, which is causing new reports.
      • Wiki will be updated.
    • Size reduction: we generate a lot of code for parsing keyword arguments. The code was moved to libshiboken and the size was reduced 3%
      • Optimization reviews: it seems it's only the virtual functions, but not the actual bindings.
    • Size reduction: Windows is giving some issues for special characters, which seems to be also present in Linux.
    • Cross compiling and creating wheels with the new JNI classes bindings. Trying to test them in an emulator, found other issues.
    • pyside6-deploy/project and DS changes integrating, hopefully they will be merged today \o/
    • DS-only changes are still in review.
    • TOML integration - continue research on adding new format for python projects
    • QtGraphWidgets issue with yocto build was fixed.

16. January 2025

  • General
    • Highly probable that one of us will go to FOSDEM to help with the Qt Project stand! so if you /reader/ are going, drop by and say hi!
  • Infra & Releases
    • 6.8.2 will be released on 23th January so far, so we expect providing the wheels in the following days.
    • 3.13 on the CI still on-going.
    • 6.5.4 OSS released
  • Bugs & Features
    • Discussion about QJni* bindings when cross compiling.
      • It did built (and installed) for aarch64 and x86_64 but armv7a will be tried later on.
      • The main issue with this story was that it was bindings only for cross compiled pyside
    • Exploring toml compatibilities within QtCreator
    • DS patches still needs review.
    • Binary size work continues
      • 17% reduction so far, and this could be included in the future-features list.
      • Once is ready, we might provide an option to disable it to go back to the more readable wrapper code.
      • We might evaluate a template approach once the solution is out, to avoid maintaining regexes.
    • Remote Object reviews ready in order to merge changes (only a few details)
    • Qt Python Scripting
      • Multiple inheritance is not supported yet.
      • REPL function to help development
      • Research on Limited API usage.
      • find_python macro in 3.26 allow to find the stable abi
    • docstring changes in order to expose them as docstring per methods.
      • some experiment to add it to the pyi files, but it doesn't show.

09. January 2025

  • General
    • FOSDEM 2025: Qt got a stand!
    • Internal Hackathon going on.
  • Infra & Releases
    • https://download.qt.io/official_releases/QtForPython/ got restructured and it's now very tidy
    • Preparing 6.8.2
    • 6.8.1.1 Windows and Linux wheels were uploaded for consistency thanks to user-reports when uploading only the 6.8.1.1 on macOS due to a missing module
    • Tests with 3.13 on the CI
  • Bugs & Features
    • PYSIDE-2966 Disabled instantiating non-instantiable classes
    • PYSIDE-1735 Examples and tests were ported to use fully qualified enumerations
    • Python Scripting continues (enable adding __repr__ functions)
    • Discussion about QJni* bindings when cross compiling.
      • We might try a few new configurations for adding this bindings.
    • Tutorial for Boot2Qt and PySide apps deployment
    • Doc changes: adding comments for using uv
    • QML Next: still working on improved decorators for a smoother integration
    • Qt Remote Objects: Big set of patches by external contributor
    • Binary size reduction work continues with new ideas from other projects: folding, string handling, renaming, etc.
    • Yocto builds issues with LLVM still not solved.

2024

2023

2022

2021

2020

2019

2018