Qt for Python Development Notes: Difference between revisions

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


===20. April 2023===
==2024==
 
===18. April 2024===


* General
** Bug fixing week
** PyConDE (Mon-Wed next week)
** Planning a workshop for TQtC solution engineers (internal)
** Possibility to include shiboken into the Axivion infra
* Infra & Releases
** 5.15.17 commercial LTS was postponed to Friday. Still need test on Windows.
** 6.5.6 release planned
** 6.7.1 release has been postponed to the first week of May
** DS-compatibility wheel postponed due to CI issues
** We might need to create a testing platform in order to check other errors that are not detectable with simple tests.
* Bugs & Features
* Bugs & Features
** Work on support for clang 16, which changes behavior quite a bit
** Few new type hints issues from 6.7.0 release, needs to be address on 6.7.1
** Fixed [https://bugreports.qt.io/browse/PYSIDE-2284 PYSIDE-2284] issue with NoneType
** QtAsyncio issue related to Task groups. Tricky, because it can be related to Qt Events.
** Fixed [https://bugreports.qt.io/browse/PYSIDE-2285 PYSIDE-2285] Type hints / Tuples
** PYSIDE-2629 Adding more Qt-tools to the wheels
** Fixed [https://bugreports.qt.io/browse/PYSIDE-2298 PYSIDE-2298] and others, fixed some missing 6.5 API
** PYSIDE-2622 Adding a new option to the deploy tool (exposing an option from Nuitka)
** PYSIDE-2675 Lazy loading issues with trees of polymorphic classes.
*** first approach made things less effective
*** The impact of the solution was reduced a bit, by disabling the feature for special multiple-inheritance cases
*** New idea on 'groups' that be handled differently, so we have group or classes grouped and dependant
** 825 qml bug is still around
*** PYSIDE-2676 seems to be a new approach to fix it
** A few customer bugs made it the bug fixing week.
** PYSIDE-2675 type discovery code, class inheritance
** QtAudio -> QAudio refactory
** Virtual function compatibility to modify the signature (from typesystem)
** PYSIDE-2492 uic issues for Enum compatibility
*** More improvements for Python projects (import options)
** PYSIDE-2685 nan type definition
** Removing code from shiboken
** 6.8 Adaption already started
** PYSIDE-2689 sphinx directives doesn't seems to be compatible with the search context.


===13. April 2023===
===11. April 2024===
* General
** Bug fixing week.
** Qt 6.6.3 Library split broke our release, so we provided 6.6.3.1 as a fix.
** Qt 6.7.0 also had an issue with a binary incompatibility change on QtAudio and QAudio
** Maybe we implement a simple channel of communicating this details, in order to avoid breakage [maybe architect meetings]
** Qt Creator 13 creates venvs automatically. This needs to be revisited to avoid multiple environments to be created.
** New epics with brainstorming ideas.
* Infra & Releases
** 6.7.0 was released, we found a couple of issues we are trying to solve, and 6.7.1 will soon be released due to a binary compatibility break, and other small breakage.
**  5.15.17 commercial LTS to be release next week.
** QtDS packages a bit delay due to CI errors.
** Qt Installer (Maintenance tool) has  still some issues with the structure.
* Bugs & Features
** Adding new Qt tools to the wheels (wrappers)
** PYSIDE-2602 special virtual function research
** PYSIDE-2669 designer issue
** PYSIDE-2675 Addressing the lazy import issues that were found in 6.7.0
*** Studying the possible solution, but it needs to consider other cases as well.
*** the *-import handling seems to be related, and affecting the mro content, duplicating some entries.
*** the type discovery handler might be related as well
** Still working on the qml 825 bug issues.


===4. April 2024===
* General
* General
** SF 24.04 -> 16.05 ooo
** Large part of the team at conferences/on Easter holiday
** CM 19.04 -> 27.04 ooo
** QtCreator beta now includes an extra option to create virtual environments
* Infra & Releases
* Infra & Releases
** 6.5.0 released, but one missing DLL on windows for people without hw acceleration.
** Released 6.6.3.1 release with fixes for Quick Controls/Multimedia
*** To be fixed in 6.5.1
** Preparing for 6.7.0
** 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
* Bugs & Features
** Type hints PYSIDE-2284 issue with NoneType
** [https://bugreports.qt.io/browse/PYSIDE-2646 PYSIDE-2646] Improved cleanup of signal manager objects
** 2283 Platform dependencies into our docs
** [https://bugreports.qt.io/browse/PYSIDE-2662 PYSIDE-2662] Fix for a signal in OpcUA
** Clang16 improvements to be compatible
** [https://bugreports.qt.io/browse/PYSIDE-2663 PYSIDE-2663] Fixed a crash in webengine bindings
** Research on the missing DLL issue on Windows
** [https://bugreports.qt.io/browse/PYSIDE-2668 PYSIDE-2668] Fixed an error in enums
** 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===
===28. March 2024===
* General
* Infra & Releases
** Prepared 6.6.3.1 release; 6.6.3 was unfortunately broken due to missing libraries (Quick Controls/Multimedia)
* Bugs & Features
** [https://bugreports.qt.io/browse/PYSIDE-2654 PYSIDE-2654] Fixed multiple inheritance when no __init__ is in a subclass
** Still investigating a crash on Ubuntu with Python 3.12 and bug_825.py . The crash is deeply hiding in Qt6.
** [https://bugreports.qt.io/browse/PYSIDE-2652 PYSIDE-2652] Fixed an int overflow
** [https://bugreports.qt.io/browse/PYSIDE-2649 PYSIDE-2649] Work on building without OpenGL
** [https://bugreports.qt.io/browse/PYSIDE-2653 PYSIDE-2653] Fixed a syntax error in type hints


===21. March 2024===
* General
* General
** New Python releases 3.11.3, 3.10.11
** Ideas to improve the module.
** Most of the team is going on vacation the following weeks.
* Infra & Releases
* Infra & Releases
** 6.5.0 released
** 6.7.0 to be released the first week of April [delayed]
** 6.2.8 commercial LTS to go out soon
** 6.2.12 Commercial LTS to be release in the following days [delayed]
** Review Maitenance Tool integration
** 6.6.3 to be release next week [delayed]
** qtpip server configuration still in progress
* Bugs & Features
* Bugs & Features
** Android: preparing post, tests, and general improvements.
** 6.8 adaption patches are being worked
** PYSIDE-2266 venv issue with the deployment tool.
** PYSIDE-2638 fix crash QLayout when None is passed
** Documentation was released for 6.5.0 and many things were polished.
** Documentation updates: for tooling and examples.
** Async: continue working on the event loop wrapper implementation.
** QtRhi missing API provided
** Research on memory leak that pyqtgraph found
** Memory leak regression being worked out
** Brushing up tutorials: expenses
** Shiboken Qt namespaces patches being cherry picked to previous versions.
** Adding new examples: simplebrowser, screen capture
** Android deployment and qml tool documentations
** Documentation: found some issues with qdoc (from the move of examples to auto tests)
** Android wheels generation on the CI process is being improved.
** PYSIDE-2278 type hinting issue was fixed
** Debugging deep into Nuitka to understand a problem with the lazy loading functionality.
** Improvements to the documentation
** QAsyncio bug fixed
** Cleaning imports from examples
** Adding more tools docs pages for our tools.
** Add isort to the development guide
** Exploring other projects where Python can shine


===30. March 2023===
===14. March 2024===
* General
* General
** PyConDE schedule is out, don't miss Shyam's talk https://pretalx.com/pyconde-pydata-2024/talk/W7YDRX/
** Python 3.13.0a5 is out.
* Infra & Releases
* Infra & Releases
** 6.5 to be released next week
** 6.7.0 in preparation, docs adjustments and new pages will come. Branching on Monday.
** including requirements.txt along the commercial bundle
** 6.2.12 LTS release in preparation.
*** research if possible retroactively
** 6.6.3 will be release next week.
** qtpip research continues
** qtpip 0.1.1 to be released
** dev is already Python 3.8 free, and we support 3.9+ for 6.7+
* Bugs & Features
* Bugs & Features
** Features that needs to be in before 6.5
** Triaging and fixing issues in general: 2638 layout crash.
*** deployment tool nuitka patch
** PYSIDE-2690 namespaces support continues
*** android tool
** Lazy initialization got merged
*** tutorial of thew new quick styled app
*** New improvements might land in future versions
** Improving enums to avoid using the old implementation
** PYSIDE-2635 OpcUA example problem
** Deployment tool and android research continues
** PYSIDE-2633 remoteobjects issue
** Async research on asyncio and trio proper integration
** Using new icons on the examples
** Refactoring
** Testing libclang 18
** Shiboken examples are not displayed on the docs
** QObject.connect bug when a callable is a QObject (workaround with manual overload)
** Updating the new image of the project
** QIOPipe implementation for QAsyncio (base in the Qt/C++ one)
** Re-porting multimedia examples, simplebrowser
** New use cases for QAsyncio and aiohttp
** Initial support for permission API
** permission API changes got merge
** small fixes on metaobjectdump
** android wheel compilation was adapted for qt 6.7.0 (PR on python-for-android was merged)
 
** PYSIDE-1639 QLocale issue was fixed


===23. March 2023===
===07. March 2024===
* General
* General
** QtWS CfP open
** Participation in FOSS Backstage
** EuroPython talks submitted
** Keeping an eye on future Python events
* Infra & Releases
* Infra & Releases
** 6.4.3 is out
** 6.5.5 Commercial LTS was released
*** pypy3 3.9.12 compatible, newer versions included an incompatibility
** 5.15.13 OSS Package will be released tomorrow
** 6.5 branching out today
** qtpip 0.1.1 release delayed
** Python 3.8 deprecation is still pending due to CI configuration dependencies.
* Bugs & Features
* Bugs & Features
** async support continues.
** permission api changes are mostly merged, one pending https://codereview.qt-project.org/c/pyside/pyside-setup/+/536759/15
** Fixing a couple of issues related to the pyside6-deploy tool.
** all deployment fixes are in.
*** venv compatibility
** lazy initialization work continues, and some issues were fixed already.
*** qml apps are not properly working
*** Ubuntu 22.04 | Python 3.10.2 |is showing an issue with scriptableapplication
** android support almost ready for TP
** Continue implementing more API for QtAsyncio which is currently working well
** PYSIDE-2261 cython signature module incompatibility fixed
** two pending change for 6.7.0 and 6.6.3 to be merged.
** Removed goto from PySide
** PYSIDE-2590 qt namespaces support required a patch for Qt/C++
** Multiple inheritance issues were fixed.
** PYSIDE-2619 gentoo issue with a build
** old Enums are being removed, and the startup time will improve a bit (still in progress)
** PYSIDE-2624 typing issue with '/' is being researched
** PYSIDE-971 GL funtions implementation
** Qt Icon Teams issues were discovered
** including texttospeech into the wheels (missing by mistake)
** PYSIDE-2602 virtual function research on a special signature
** adapting scripts to 6.5
** One regression related to the QObject.connect changes.
** metaobjectdump issue fixed
** doc updates


===16. March 2023===
===29. February 2024===


* General
* General
** Preparing submissions for Europython
** Leap day!
** New company colors
** Documentation changes
* Infra & Releases
* Infra & Releases
** 6.4.3 release next week (no release branch)
** 6.7.0 will drop support of Python 3.8
** Issues with Nuitka 1.5.1 (released yesterday) and the CI didn't like it. Pining 1.5
** 6.5.5 to be released in the following days
** 6.7.0 RC marks our feature freeze, some exceptions will be discussed in order to release on time.
** qtpip 0.1.1 to be released soon for new indexing and shiboken_wizard package
** General update of Python versions in our CI configuration is being planned (for dev-6.7)
* Bugs & Features
* Bugs & Features
** qtpip: add support for many other operators (for versions)
** PYSIDE-2599 QMatrix3x3 issues with QVariant
** PYSIDE-2254 exit crash issue was fixed
** PYSIDE-2605 Embedding an application, using .style() - qAPP
** PYSIDE-2251 designer issue when not initializing virtual environment.
** PYSIDE-2590 QT_NAMESPACES support
** qmlsurface example ported (polishing the C++ code as well)
** PYSIDE-2602 clash on signature for QtWebEngine returning tuple
** example icons: discussions to standardize them a bit
** Preparing 6.5.5 and 6.7.0 releases.
** android research: fixing some issues with qtquick
** PYSIDE-2612 CMake issue from Anaconda builds when find_package
** 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.
** macOS permissions changes are almost all merged
** PYSIDE-2255 virtual method issue related to access to those members.
** Windows BTLE services crash
** Generalization of QApplication usage on the tests.
** QIO-class are required for some new QAsyncio API using pipes
** Research: Add course to QtLearn related to Qt for Python
** Lazy loading moving forward, but still a few issues are around
** doc: some links are broken.
*** A couple of shiboken tests seems to have outdated imports that are not helping.
** doc: migration to sphinx-design from sphinx-panels
*** shiboken compatibility types missing
 
** Typing issues being solved in order to improve the pyi quality
===9. March 2023===


===22. February 2024===
* General
* General
** Packing use-cases
** Brainstorming discussion about new JIRA items.
** Europython CfP: https://ep2023.europython.eu/cfp
* Infra & Releases
* Infra & Releases
** Preparing 5.15.13: release might be today if nothing goes wrong.
** 6.6.2 was released!
** Wheel bundles on the account.qt.io, and soon to be available in the Maintenance Tool
** qtpip getting a new minor version in order to be able to install new shiboken wizard
* Bugs & Features
* Bugs & Features
** Re-added QtLocation
** Permission API issue failing on the release framework. QtLocation problems were addressed.
** Added larger examples for QtLocation, QtDataVisualization
** QtAsyncio blog post was published.
** Android research continues, preparing a TP
** Definition of done for QtAsyncio story, some functions will be implemented, but other ones (until reaching the whole set of user facing API) will be implemented in the future.
** https://bugreports.qt.io/browse/PYSIDE-2169 Leak related to AsyncIO was finally fixed: related to the new Enum implementation
** Lazy initialization of numpy support in PySide, to improve the general lazy loading effort.
*** PyErr_Fetch/Restore does ref counting, and not borrow ref
** Starting documenting pyside6-* tools
** qtpip works continues
** PYSIDE-2610 Qt3D issues
** https://bugreports.qt.io/browse/PYSIDE-79 bug signal instance: fixed most if not all possible errors.
** 6.7 adaption was a lot of work, namespaces were something tricky.
** https://bugreports.qt.io/browse/PYSIDE-1403 pyi still produces something not fully working with IDEs
** 6.7 changelog drafted.
** https://bugreports.qt.io/browse/PYSIDE-1564 First version of the implementation of multiple inheritance is working
** Started to improve the type hinting issues.
*** Not a general solution, but a good approach (compatible with a competitor).
 
*** Working on a full support to handle multiple inheritance
===15. February 2024===


===2. March 2023===
* General
* General
** Preparing internal/external material
** Brainstorming session was held.
** Next monday CI maintenance break
** Europython Call for Proposal is open!
* Infra & Releases
* Infra & Releases
** commercial wheel bundles available on account.qt.io
** 6.6.2 release waiting for Qt/C++ packages to be done.
** 6.4.3 release was postponed
** Commercial 6.5.5 LTS to be out next week.
** Some improvements to the CI and macOS behavior
** Cherry pick bot on commercial repositories.
* Bugs & Features
* Bugs & Features
** Improvements for qtpip
** singleShot changes are merged, keep an eye on strange behavior.
** postEvent() memory leak still has an unknown origin
** 6.7 adaption: metaobjectdump improvements
** PYSIDE-2236 QMetaMethod.fromSignal added
** 6.6.2 fixes with the commercial shibokenwizard
** PYSIDE-2237 be careful with using reserved words in examples/docs/...
** lupdate support for pyside improved (qm files)
** PYSIDE-2239 opaquecontainers wrong dunder name
** pyside6-project problems with dry-run were fixed. Some improvements planned.
** PYSIDE-2206 Examples revamping
** CI android wheels upgrade [skip armv7 in the meantime]
*** Maybe we keep some examples around even if they are removed in Qt/C++
** Lazy imports research continues, we see lots of improvements on apple M* devices.
** Android work continues! looking good with 6.5
 
** PYSIDE-1564 Multiple inheritance story was improved, still in progress.
 
===8. February 2024===


===23. February 2023===
* General
* General
** Giving a talk at Python La Paz (on Saturday) - in Spanish
** We got a PyConDE 2024 talk accepted (python -> android deployment)!
* Infra & Releases
* Infra & Releases
** 6.4.3 ready to start the release process
** Addressing some issues with the android wheels
** Change to fix the windows signing is merged
** 6.6.2 got delayed until next week
** Preparing for the 6.7 switch on dev
* Bugs & Features
* Bugs & Features
** 3.12 compatibility changes will reach 5.15, 6.2, and the future 6.5 LTS
** macOS: permission api patches ready for review
** PYSIDE-79 (caused by PYSIDE-68) refcounting issues addressed
** singleShot patches merged
** Continue the 3.12 support because of some new issues found
** Lazy initialization was finished, and ready for discussion.
** PYSIDE-1564: Multiple inheritance support is still being worked (old ABC issues might be related)
** Check compatibility with the new REST module (from Qt/C++)
** Issues with documentation build (sphinx)
** Preparations for 6.7 continues.
** 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===
===1. February 2024===


* General
* General
** Development of a tool for commercial wheel installation started, and other general improvements.
** Interest from KDE to enable flatpak packages (maybe base pyside app).
** Blog posts -> 6.5 release, and Android research.
** Discussion on adding more tutorials of specific functionality.
** Don't forget about Europython.
** CI Maintenance Break next Monday (first Monday of each month)
* Infra & Releases
* Infra & Releases
** Branching dev to 6.5 when the Qt/C++ 6.5.0 RC is out (16 Mar '23)
** no unity build discussion and checks
*** Only fixes go to dev with Pick-to: 6.5 if necessary
** 6.6.2 to be released next week.
*** new features remain in dev (for 6.6)
** More granularity on the commercial wheels: shiboken wizard wheel.
* Bugs & Features
* 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.
** singleShot timer implementation (to use underlying c++ impl) - still an issue with a context object, and a signal as a functor. A new QObject::connect might handle the situation. More changes to come in order to fix newly discovered issues.
*** mandelbrot example works and improves its performance around 3.5 times.
** Android: using the master branch on python-for-android, and other changes related for macOS deployment.
** Python 3.12 will include an incompatibility due to the changes in the type generation
** PYSIDE-2597 optimization for the deployment procedure
*** https://github.com/python/cpython/issues/60074#issuecomment-1430115581
** Lazy initialization: works continues, and it's looking good. 13 bugs to go on lazy mode. The new implementation seems to be working better.
*** some other issues were found, but not as critical as the tp_new issue.
** 6.7 adaptation still in progress (many changes from Qt)
** It will be possible to install pyside6 in conda environments starting from 6.4.3 and 6.5
** General documentation adjustments
** commercial identifier on commercial wheels will be replaced to be compatible with distutils
** Improvements on shiboken: better error messages
** asyncio research continues
** Qt Namespaces compatibility attempts.
** Adapting the deploy tool to include compatibility with android (in progress)
** Moving away from a couple of setup.py options towards pyproject.toml after upgrading 'build' to 1.0.x
** research on ML-based tool to transform c++ <-> python
** Design Studio compatibility wheel work continues
** 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===
===25. January 2024===


* General
* General
** How to make our API better for pathlib?
** Configuring additional embedded devices for RTA
** 3.11.2 released, 3.10.10 as well
** Focus on spending some time on embedded linux, in order to see usability, and compatibility with Boot2Qt images.
** https://peps.python.org/pep-0675/
** Conferences: submissions to PyCon SK, PyCon DE, PyCon LT, PyCon US
* Infra & Releases
* Infra & Releases
** LTS tags cannot be pushed to community repo (permissions), hopefully in this week.
** Decouple of the commercial wheels in order to have a finer granularity and simpler tree on the Qt Installer (Maintenance Tool)
** Maintenance Tool updates soon
** Qt for Python 6.6.2 is waiting for Qt to be released (by the end of the month)
** Binary signing still need a little change to be working
** The next 5.15.13 LTS open source release will include a new fix for a missing symbol (PyIndex_Check)
** dev to use 6.5 starting today
** New CI configuration without '--unity' for manual testing, to spot issues.
* Bugs & Features
* Bugs & Features
** Android research in progress, looking good :)
** VS Code will use .flake8 (formerly setup.cfg) file for configuration once merged
** 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-2575: Added a new argument to QtAsyncio to configure whether the QCoreApplication at the core of QtAsyncio should be shut down when asyncio finishes (requested by user).
** PYSIDE-2222 custom widget plugin, load with uic crash
** SingleShot timer issue: Slight "complexity explosion" because correct implementation for one case requires implementation of QObject.connect overload with context arguments (and we implement QObject.connect ourselves, see PySide::qobjectConnectCallback).
** PYSIDE-2201 was fixed: introducing weak references into the SignalInstances.  
** Scripting: code simplification, and massage it to a Qt module.
** PYSIDE-79 was possible to solve (from PYSIDE-68 solution). Still needs to some documentation to be written.
** Documentation updates to fix issues we had.
** PYSIDE-2221 research on future compatibility with NoGIL Python https://github.com/colesbury/nogil https://peps.python.org/pep-0703/
** Unity build some issues when building without.
** https://github.com/blueloveTH/pocketpy also interesting
** 6.7 updates, adapting some warning messages
** QTBUG-99313 related issues
** macOS permissions: made an example to work (for deployed apps) - patches incoming
** Android wheels provisioning and configuration in order to generate the base-wheels.
** armv7 complications due to an upstream find_python command.
** Lazy initialization: re-wrote approach from scratch, to reduce the patches to one that can be analyzed easily. Some complications with this approach that needs to be improve. It can be tried with https://codereview.qt-project.org/c/pyside/pyside-setup/+/496118
*** https://peps.python.org/pep-0690/ was rejected, but the idea can be implemented per-module
** Moving entry_points declaration to pyproject.toml from setup.py
** Drop the bdist_wheel steps from the CI (old wheels)
** Started working on split commercial wheels, wheels for QtDS and examples on QtCreator.


===02. February 2023===
===18. January 2024===


* General
* General
** Europython 2023 will be in Prague! 17-23 July
* Infra & Releases
* Infra & Release
** Commercial LTS 6.2.11 was released
** Improving wheel creation in our CI (signing windows, and other things)
** Add missing tags OSS LTS 5.15.x
** Soon we will have released LTS in the OSS repo (after some complications)
** 6.6.2 scheduled by the end of the month
** CI Maintenance break coming next Monday (keep an eye open to the Python configuration)
** Release documentation to be written to have tasks on JIRA
* Bugs & Features
* Bugs & Features
** Unity builds were helping pyside/shiboken, and some tests are being done in qt/c++
** Python Scripting: looking into stable API, and cleanup
** meta task on revamping examples in the Qt Project
** PYSIDE-2577 doxygen issue
** Adding uic functionality and documentation
** PYSIDE-2570 closing some roadmap items
** Doc reviews, some issues were found
** Polishing documentation to use more sphinx directives
** Android development continues, and looks good!
** Qt 6.7 adaption
** introducing --log-level to change --verbose-build and --quiet
** Addressing some flake8 issues in the build_script
**Overhaul of Signal/SignalInstance continues:
** macOS permission API work continues: limitation for interpreted script, only compatible when deployed. Working around nuitka.
*** [https://bugreports.qt.io/browse/PYSIDE-2201 PYSIDE-2201] Weak Reference handling is complete
** singleShot: trying to solve a corner case when no sender is specified (for using the C++ function directly)
*** [https://bugreports.qt.io/browse/PYSIDE-79 PYSIDE-79] Research on Reference bug continues
** Fixing some CI problems with 3.11 -> 3.12 changes.
** create_wheels.py --builddir to explicitly provide build directory
** PYSIDE-2404 adding more information regarding the lazy evaluation, new approach might work.
** WIP: QtAsyncIoEventLoop using Qt's event dispatcher, using BaseEventLoop and BaseSelectorEventLoop for guidance
** pyside6 is now an official recipe on the python-for-android!
** Improvements to the doc build process


===26. January 2023===
===11. January 2024===


*Infra & Releases
* General
**Fixed issues with Windows signing
** Hackathon at TQtC
*Bugs & Features
** CI process presentation
**Fixed [https://bugreports.qt.io/browse/PYSIDE-2204 PYSIDE-2204 qt.conf encoding]
* Infra & Releases
**Fixed bugs in pyside6-metaobjectdump (QML) [https://bugreports.qt.io/browse/PYSIDE-2202 PYSIDE-2202] , [https://bugreports.qt.io/browse/PYSIDE-2203 PYSIDE-2203]
** Commercial LTS 6.5.4 release starting (to be finished today)
**PYSIDE-2194: Possibly requires refactoring of QLowEnergyController to use the new WinRT API, instead of COM API
** Commercial LTS 6.2.11 still pending release
**Android Deployment - Patches incoming to automate cross compilation to produce android wheels
** 6.6.2 schedule by the end of the month.
**Overhaul of Signal/SignalInstance
** CI still showing some issues after the maintenance break.
*** Implement Weak Reference Handling
** Update of the Python versions are pending.
*** [https://bugreports.qt.io/browse/PYSIDE-2201 PYSIDE-2201] Handle early destruction of the object better
* Bugs & Features
*** [https://bugreports.qt.io/browse/PYSIDE-79 PYSIDE-79] Trying to finally fix the reference leak using weakref.
** Fixing a few small issues with QtAsyncio
**Alternative approach to Anaconda issue: Register internal qt6.conf with site-packages prefix (still WIP).
** Documentation for the QtAsyncio is currently in review.
**WIP: Implement class QtAsyncIoEventLoop(asyncio.AbstractEventLoop) that wraps around Qt's event loop to enable Qt + asyncio.
** New behavior for singleShot (relying on the C++ impl)
**Memory leak with current asyncio example (or space leak?)
** macOS request permission API work continues.
** 6.7 adaptions patches
** M2M fixes on the current impl
** Native interfaces were added (new ones) to public headers
** favicon issue with out docs
** Making our doc diagram generation optional
** Improvements for the doc build process


===19. January 2023===
===04.January 2024===
* General
** Happy new year fellow readers :D
** New OKR organization
** Keeping in an eye on Conferences
** PyPy is now on 3.10
** Ideas on the wheel organization for the Qt Installer
* Infra & Releases
** CI Maintenance break continues. Some new issues were discovered.
** Pending releases: 6.2.11 and 6.5.4
** Android [https://download.qt.io/snapshots/ci/pyside/test/Android/aarch64/ wheels for testing] purposes are available (not for production)
** Xcode issues with a new M3
** Planning the inclusion of Python 3.12 in the CI
* Bugs & Features
** async: A few bug fixes were pushed and ready for review
** async: the module is missing from our docs
** async: we have been getting some interests from users, so new issues are appearing.
** new android tag added to the examples for a better browsing
** pyside6 designer pyenv crash was fixed
** pyside cmake module update crash was fixed
** working on the request permission API for macOS
** docs: free functions as separate section and other improvements
** Python scripting in c++ works continues
** PyPy 3.10 compatibility patches
** nogil: working again on a compatibility with PEP703
*** locking mechanism for our modules.
** Typing adjustments, we need '/' in our signatures due to not having keywords parameters.


*General
==2023==
**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==

Revision as of 08:33, 18 April 2024


2024

18. April 2024

  • General
    • Bug fixing week
    • PyConDE (Mon-Wed next week)
    • Planning a workshop for TQtC solution engineers (internal)
    • Possibility to include shiboken into the Axivion infra
  • Infra & Releases
    • 5.15.17 commercial LTS was postponed to Friday. Still need test on Windows.
    • 6.5.6 release planned
    • 6.7.1 release has been postponed to the first week of May
    • DS-compatibility wheel postponed due to CI issues
    • We might need to create a testing platform in order to check other errors that are not detectable with simple tests.
  • Bugs & Features
    • Few new type hints issues from 6.7.0 release, needs to be address on 6.7.1
    • QtAsyncio issue related to Task groups. Tricky, because it can be related to Qt Events.
    • PYSIDE-2629 Adding more Qt-tools to the wheels
    • PYSIDE-2622 Adding a new option to the deploy tool (exposing an option from Nuitka)
    • PYSIDE-2675 Lazy loading issues with trees of polymorphic classes.
      • first approach made things less effective
      • The impact of the solution was reduced a bit, by disabling the feature for special multiple-inheritance cases
      • New idea on 'groups' that be handled differently, so we have group or classes grouped and dependant
    • 825 qml bug is still around
      • PYSIDE-2676 seems to be a new approach to fix it
    • A few customer bugs made it the bug fixing week.
    • PYSIDE-2675 type discovery code, class inheritance
    • QtAudio -> QAudio refactory
    • Virtual function compatibility to modify the signature (from typesystem)
    • PYSIDE-2492 uic issues for Enum compatibility
      • More improvements for Python projects (import options)
    • PYSIDE-2685 nan type definition
    • Removing code from shiboken
    • 6.8 Adaption already started
    • PYSIDE-2689 sphinx directives doesn't seems to be compatible with the search context.

11. April 2024

  • General
    • Bug fixing week.
    • Qt 6.6.3 Library split broke our release, so we provided 6.6.3.1 as a fix.
    • Qt 6.7.0 also had an issue with a binary incompatibility change on QtAudio and QAudio
    • Maybe we implement a simple channel of communicating this details, in order to avoid breakage [maybe architect meetings]
    • Qt Creator 13 creates venvs automatically. This needs to be revisited to avoid multiple environments to be created.
    • New epics with brainstorming ideas.
  • Infra & Releases
    • 6.7.0 was released, we found a couple of issues we are trying to solve, and 6.7.1 will soon be released due to a binary compatibility break, and other small breakage.
    • 5.15.17 commercial LTS to be release next week.
    • QtDS packages a bit delay due to CI errors.
    • Qt Installer (Maintenance tool) has still some issues with the structure.
  • Bugs & Features
    • Adding new Qt tools to the wheels (wrappers)
    • PYSIDE-2602 special virtual function research
    • PYSIDE-2669 designer issue
    • PYSIDE-2675 Addressing the lazy import issues that were found in 6.7.0
      • Studying the possible solution, but it needs to consider other cases as well.
      • the *-import handling seems to be related, and affecting the mro content, duplicating some entries.
      • the type discovery handler might be related as well
    • Still working on the qml 825 bug issues.

4. April 2024

  • General
    • Large part of the team at conferences/on Easter holiday
  • Infra & Releases
    • Released 6.6.3.1 release with fixes for Quick Controls/Multimedia
    • Preparing for 6.7.0
  • Bugs & Features

28. March 2024

  • General
  • Infra & Releases
    • Prepared 6.6.3.1 release; 6.6.3 was unfortunately broken due to missing libraries (Quick Controls/Multimedia)
  • Bugs & Features
    • PYSIDE-2654 Fixed multiple inheritance when no __init__ is in a subclass
    • Still investigating a crash on Ubuntu with Python 3.12 and bug_825.py . The crash is deeply hiding in Qt6.
    • PYSIDE-2652 Fixed an int overflow
    • PYSIDE-2649 Work on building without OpenGL
    • PYSIDE-2653 Fixed a syntax error in type hints

21. March 2024

  • General
    • Ideas to improve the module.
    • Most of the team is going on vacation the following weeks.
  • Infra & Releases
    • 6.7.0 to be released the first week of April [delayed]
    • 6.2.12 Commercial LTS to be release in the following days [delayed]
    • 6.6.3 to be release next week [delayed]
  • Bugs & Features
    • 6.8 adaption patches are being worked
    • PYSIDE-2638 fix crash QLayout when None is passed
    • Documentation updates: for tooling and examples.
    • QtRhi missing API provided
    • Memory leak regression being worked out
    • Shiboken Qt namespaces patches being cherry picked to previous versions.
    • Android deployment and qml tool documentations
    • Android wheels generation on the CI process is being improved.
    • Debugging deep into Nuitka to understand a problem with the lazy loading functionality.
    • QAsyncio bug fixed
    • Adding more tools docs pages for our tools.

14. March 2024

  • General
  • Infra & Releases
    • 6.7.0 in preparation, docs adjustments and new pages will come. Branching on Monday.
    • 6.2.12 LTS release in preparation.
    • 6.6.3 will be release next week.
    • qtpip 0.1.1 to be released
    • dev is already Python 3.8 free, and we support 3.9+ for 6.7+
  • Bugs & Features
    • Triaging and fixing issues in general: 2638 layout crash.
    • PYSIDE-2690 namespaces support continues
    • Lazy initialization got merged
      • New improvements might land in future versions
    • PYSIDE-2635 OpcUA example problem
    • PYSIDE-2633 remoteobjects issue
    • Using new icons on the examples
    • Testing libclang 18
    • QObject.connect bug when a callable is a QObject (workaround with manual overload)
    • QIOPipe implementation for QAsyncio (base in the Qt/C++ one)
    • New use cases for QAsyncio and aiohttp
    • permission API changes got merge
    • android wheel compilation was adapted for qt 6.7.0 (PR on python-for-android was merged)
    • PYSIDE-1639 QLocale issue was fixed

07. March 2024

  • General
    • Participation in FOSS Backstage
  • Infra & Releases
    • 6.5.5 Commercial LTS was released
    • 5.15.13 OSS Package will be released tomorrow
    • qtpip 0.1.1 release delayed
    • Python 3.8 deprecation is still pending due to CI configuration dependencies.
  • Bugs & Features
    • permission api changes are mostly merged, one pending https://codereview.qt-project.org/c/pyside/pyside-setup/+/536759/15
    • all deployment fixes are in.
    • lazy initialization work continues, and some issues were fixed already.
      • Ubuntu 22.04 | Python 3.10.2 |is showing an issue with scriptableapplication
    • Continue implementing more API for QtAsyncio which is currently working well
    • two pending change for 6.7.0 and 6.6.3 to be merged.
    • PYSIDE-2590 qt namespaces support required a patch for Qt/C++
    • PYSIDE-2619 gentoo issue with a build
    • PYSIDE-2624 typing issue with '/' is being researched
    • Qt Icon Teams issues were discovered
    • PYSIDE-2602 virtual function research on a special signature
    • One regression related to the QObject.connect changes.

29. February 2024

  • General
    • Leap day!
    • Documentation changes
  • Infra & Releases
    • 6.7.0 will drop support of Python 3.8
    • 6.5.5 to be released in the following days
    • 6.7.0 RC marks our feature freeze, some exceptions will be discussed in order to release on time.
    • qtpip 0.1.1 to be released soon for new indexing and shiboken_wizard package
    • General update of Python versions in our CI configuration is being planned (for dev-6.7)
  • Bugs & Features
    • PYSIDE-2599 QMatrix3x3 issues with QVariant
    • PYSIDE-2605 Embedding an application, using .style() - qAPP
    • PYSIDE-2590 QT_NAMESPACES support
    • PYSIDE-2602 clash on signature for QtWebEngine returning tuple
    • Preparing 6.5.5 and 6.7.0 releases.
    • PYSIDE-2612 CMake issue from Anaconda builds when find_package
    • macOS permissions changes are almost all merged
    • Windows BTLE services crash
    • QIO-class are required for some new QAsyncio API using pipes
    • Lazy loading moving forward, but still a few issues are around
      • A couple of shiboken tests seems to have outdated imports that are not helping.
      • shiboken compatibility types missing
    • Typing issues being solved in order to improve the pyi quality

22. February 2024

  • General
    • Brainstorming discussion about new JIRA items.
  • Infra & Releases
    • 6.6.2 was released!
    • qtpip getting a new minor version in order to be able to install new shiboken wizard
  • Bugs & Features
    • Permission API issue failing on the release framework. QtLocation problems were addressed.
    • QtAsyncio blog post was published.
    • Definition of done for QtAsyncio story, some functions will be implemented, but other ones (until reaching the whole set of user facing API) will be implemented in the future.
    • Lazy initialization of numpy support in PySide, to improve the general lazy loading effort.
    • Starting documenting pyside6-* tools
    • PYSIDE-2610 Qt3D issues
    • 6.7 adaption was a lot of work, namespaces were something tricky.
    • 6.7 changelog drafted.
    • Started to improve the type hinting issues.

15. February 2024

  • General
    • Brainstorming session was held.
    • Europython Call for Proposal is open!
  • Infra & Releases
    • 6.6.2 release waiting for Qt/C++ packages to be done.
    • Commercial 6.5.5 LTS to be out next week.
    • Some improvements to the CI and macOS behavior
    • Cherry pick bot on commercial repositories.
  • Bugs & Features
    • singleShot changes are merged, keep an eye on strange behavior.
    • 6.7 adaption: metaobjectdump improvements
    • 6.6.2 fixes with the commercial shibokenwizard
    • lupdate support for pyside improved (qm files)
    • pyside6-project problems with dry-run were fixed. Some improvements planned.
    • CI android wheels upgrade [skip armv7 in the meantime]
    • Lazy imports research continues, we see lots of improvements on apple M* devices.


8. February 2024

  • General
    • We got a PyConDE 2024 talk accepted (python -> android deployment)!
  • Infra & Releases
    • Addressing some issues with the android wheels
    • 6.6.2 got delayed until next week
    • Preparing for the 6.7 switch on dev
  • Bugs & Features
    • macOS: permission api patches ready for review
    • singleShot patches merged
    • Lazy initialization was finished, and ready for discussion.
    • Check compatibility with the new REST module (from Qt/C++)
    • Preparations for 6.7 continues.

1. February 2024

  • General
    • Interest from KDE to enable flatpak packages (maybe base pyside app).
    • Discussion on adding more tutorials of specific functionality.
    • CI Maintenance Break next Monday (first Monday of each month)
  • Infra & Releases
    • no unity build discussion and checks
    • 6.6.2 to be released next week.
    • More granularity on the commercial wheels: shiboken wizard wheel.
  • Bugs & Features
    • singleShot timer implementation (to use underlying c++ impl) - still an issue with a context object, and a signal as a functor. A new QObject::connect might handle the situation. More changes to come in order to fix newly discovered issues.
    • Android: using the master branch on python-for-android, and other changes related for macOS deployment.
    • PYSIDE-2597 optimization for the deployment procedure
    • Lazy initialization: works continues, and it's looking good. 13 bugs to go on lazy mode. The new implementation seems to be working better.
    • 6.7 adaptation still in progress (many changes from Qt)
    • General documentation adjustments
    • Improvements on shiboken: better error messages
    • Qt Namespaces compatibility attempts.
    • Moving away from a couple of setup.py options towards pyproject.toml after upgrading 'build' to 1.0.x
    • Design Studio compatibility wheel work continues


25. January 2024

  • General
    • Configuring additional embedded devices for RTA
    • Focus on spending some time on embedded linux, in order to see usability, and compatibility with Boot2Qt images.
    • Conferences: submissions to PyCon SK, PyCon DE, PyCon LT, PyCon US
  • Infra & Releases
    • Decouple of the commercial wheels in order to have a finer granularity and simpler tree on the Qt Installer (Maintenance Tool)
    • Qt for Python 6.6.2 is waiting for Qt to be released (by the end of the month)
    • The next 5.15.13 LTS open source release will include a new fix for a missing symbol (PyIndex_Check)
    • New CI configuration without '--unity' for manual testing, to spot issues.
  • Bugs & Features
    • VS Code will use .flake8 (formerly setup.cfg) file for configuration once merged
    • PYSIDE-2575: Added a new argument to QtAsyncio to configure whether the QCoreApplication at the core of QtAsyncio should be shut down when asyncio finishes (requested by user).
    • SingleShot timer issue: Slight "complexity explosion" because correct implementation for one case requires implementation of QObject.connect overload with context arguments (and we implement QObject.connect ourselves, see PySide::qobjectConnectCallback).
    • Scripting: code simplification, and massage it to a Qt module.
    • Documentation updates to fix issues we had.
    • Unity build some issues when building without.
    • 6.7 updates, adapting some warning messages
    • QTBUG-99313 related issues
    • macOS permissions: made an example to work (for deployed apps) - patches incoming
    • Android wheels provisioning and configuration in order to generate the base-wheels.
    • armv7 complications due to an upstream find_python command.
    • Lazy initialization: re-wrote approach from scratch, to reduce the patches to one that can be analyzed easily. Some complications with this approach that needs to be improve. It can be tried with https://codereview.qt-project.org/c/pyside/pyside-setup/+/496118
    • Moving entry_points declaration to pyproject.toml from setup.py
    • Drop the bdist_wheel steps from the CI (old wheels)
    • Started working on split commercial wheels, wheels for QtDS and examples on QtCreator.

18. January 2024

  • General
  • Infra & Releases
    • Commercial LTS 6.2.11 was released
    • Add missing tags OSS LTS 5.15.x
    • 6.6.2 scheduled by the end of the month
    • Release documentation to be written to have tasks on JIRA
  • Bugs & Features
    • Python Scripting: looking into stable API, and cleanup
    • PYSIDE-2577 doxygen issue
    • PYSIDE-2570 closing some roadmap items
    • Polishing documentation to use more sphinx directives
    • Qt 6.7 adaption
    • Addressing some flake8 issues in the build_script
    • macOS permission API work continues: limitation for interpreted script, only compatible when deployed. Working around nuitka.
    • singleShot: trying to solve a corner case when no sender is specified (for using the C++ function directly)
    • Fixing some CI problems with 3.11 -> 3.12 changes.
    • PYSIDE-2404 adding more information regarding the lazy evaluation, new approach might work.
    • pyside6 is now an official recipe on the python-for-android!
    • Improvements to the doc build process

11. January 2024

  • General
    • Hackathon at TQtC
    • CI process presentation
  • Infra & Releases
    • Commercial LTS 6.5.4 release starting (to be finished today)
    • Commercial LTS 6.2.11 still pending release
    • 6.6.2 schedule by the end of the month.
    • CI still showing some issues after the maintenance break.
    • Update of the Python versions are pending.
  • Bugs & Features
    • Fixing a few small issues with QtAsyncio
    • Documentation for the QtAsyncio is currently in review.
    • New behavior for singleShot (relying on the C++ impl)
    • macOS request permission API work continues.
    • 6.7 adaptions patches
    • M2M fixes on the current impl
    • Native interfaces were added (new ones) to public headers
    • favicon issue with out docs
    • Making our doc diagram generation optional
    • Improvements for the doc build process

04.January 2024

  • General
    • Happy new year fellow readers :D
    • New OKR organization
    • Keeping in an eye on Conferences
    • PyPy is now on 3.10
    • Ideas on the wheel organization for the Qt Installer
  • Infra & Releases
    • CI Maintenance break continues. Some new issues were discovered.
    • Pending releases: 6.2.11 and 6.5.4
    • Android wheels for testing purposes are available (not for production)
    • Xcode issues with a new M3
    • Planning the inclusion of Python 3.12 in the CI
  • Bugs & Features
    • async: A few bug fixes were pushed and ready for review
    • async: the module is missing from our docs
    • async: we have been getting some interests from users, so new issues are appearing.
    • new android tag added to the examples for a better browsing
    • pyside6 designer pyenv crash was fixed
    • pyside cmake module update crash was fixed
    • working on the request permission API for macOS
    • docs: free functions as separate section and other improvements
    • Python scripting in c++ works continues
    • PyPy 3.10 compatibility patches
    • nogil: working again on a compatibility with PEP703
      • locking mechanism for our modules.
    • Typing adjustments, we need '/' in our signatures due to not having keywords parameters.

2023

2022

2021

2020

2019

2018