Qt for Python Development Notes: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
No edit summary
 
(243 intermediate revisions by 5 users not shown)
Line 1: Line 1:
[[Category:Qt for Python]]
[[Category:Qt for Python]]
==2022==


=== 24. February 2022 ===
==2024==
 
===25. April 2024===
* General
** Successful talk at PyCon DE. Good response.
* Infra & Releases
** Preparing 6.7.1
** 5.15.17 Commercial LTS is also soon to be prepared
** sccache seems to be not properly behaving (on windows) because we are not getting enough output.
** PySide6_DS wheel to be adjusted and hopefully be released soon.
* Bugs & Features
** Added a number of new classes
** PYSIDE-2676 issues on ubuntu (might be related to a windows issue as well)
** Implementation of Lazy Groups in order to avoid the regression in 6.7.0 due to multiple inheritance.
** Alternative for Lazy Groups (Fix for the regression on 6.7.0)
*** Work on regressions introduced by lazy initialization [https://bugreports.qt.io/browse/PYSIDE-2675 PYSIDE-2675]
** Work on a crash in Python 3.12 [https://bugreports.qt.io/browse/PYSIDE-2676 PYSIDE-2676]
** Fixed memory leaks [https://bugreports.qt.io/browse/PYSIDE-1617 PYSIDE-1617]
** Work on our QML list property support [https://bugreports.qt.io/browse/PYSIDE-2698 PYSIDE-2698]
** Added pyside6-balsamui (ui tool for pyside6-balsam) - PYSIDE-2629
** Also checking out List Property error with `count` and `at` parameters - [https://bugreports.qt.io/browse/PYSIDE-2698 PYSIDE-2698]
** Updating old example (calqlatr) - https://codereview.qt-project.org/c/pyside/pyside-setup/+/523055 for responsive layout
** QtAsyncio: refinements to the current implementation, and solved a bug report.
*** Trying to add support to Keyboard interruptions (handlers)
*** Plan to improve exceptions handling
 
===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
* General
** Large part of the team at conferences/on Easter holiday
* Infra & Releases
* Infra & Releases
* Bug & Feature
** Released 6.6.3.1 release with fixes for Quick Controls/Multimedia
** PYSIDE-1824 BT issue was fixed
** Preparing for 6.7.0
** PYSIDE-1826 Image provider
* Bugs & Features
** PYSIDE-1827 metatype slot pending (metacall handle improvements)
** [https://bugreports.qt.io/browse/PYSIDE-2646 PYSIDE-2646] Improved cleanup of signal manager objects
** Research on arguments conversion
** [https://bugreports.qt.io/browse/PYSIDE-2662 PYSIDE-2662] Fix for a signal in OpcUA
** PYSIDE-1815 set modified parameter function (reddit example)
** [https://bugreports.qt.io/browse/PYSIDE-2663 PYSIDE-2663] Fixed a crash in webengine bindings
** PYSIDE-1809 signature modules issues.
** [https://bugreports.qt.io/browse/PYSIDE-2668 PYSIDE-2668] Fixed an error in enums
** PYSIDE-1821 Byte handling changes
** Research on new ideas for the PySide module
** PYSIDE-1705 Property support in constructors (relation with __feature__)
** PYSIDE-1735 Python Enums to handle Qt Enums (prototypes)
*** PYSIDE-1731 mypy regression issue (related to enums)
** PyPy work continues, focused on compatibility with the newest version (supporting python 3.9)


===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


=== 17. February 2022 ===
===21. March 2024===
* General
* General
** New Documentation Engineer joined the Foundation Area.
** Ideas to improve the module.
* Infrastructure & Releases
** Most of the team is going on vacation the following weeks.
** 3.10.0 configuration to be tested
* Infra & Releases
** Research on improvements for the packages in download.qt.io
** 6.7.0 to be released the first week of April [delayed]
** Testing PyPy on the CI
** 6.2.12 Commercial LTS to be release in the following days [delayed]
** Python 3.6 will be deprecated in PySide 6.3 and removed in 6.4
** 6.6.3 to be release next week [delayed]
* Bugs & Features
* Bugs & Features
** Addressing compatibility with other deployment tools.
** 6.8 adaption patches are being worked
** QmlExtended QmlAttach will be available in 6.3
** PYSIDE-2638 fix crash QLayout when None is passed
** PYSIDE-1812 cross build task custom clang options
** Documentation updates: for tooling and examples.
** Research with C++20 to build pyside, and vector call new API in 3.9+
** QtRhi missing API provided
** PYSIDE-1765 PYSIDE-1763 __feature__ issues were fixed and working on providing support for property in constructors PYSIDE-1705 (a bit more difficult)
** Memory leak regression being worked out
** PYSIDE-1815 QtNetworkAuth.QAbstractOAuth is missing modifyParametersFunction/setModifyParametersFunction
** Shiboken Qt namespaces patches being cherry picked to previous versions.
** PYSIDE-1821 Add support for std::byte
** Android deployment and qml tool documentations
** PYSIDE-1809 wrong name type annotation for setProperty() and property()
** 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.


=== 10. February 2022 ===
===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
** 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
* Bugs & Features
** [https://bugreports.qt.io/browse/PYSIDE-1806 PYSIDE-1806] CMake version check fixed
** Triaging and fixing issues in general: 2638 layout crash.
** [https://bugreports.qt.io/browse/PYSIDE-1804 PYSIDE-1804] Big endian test failure fixed
** PYSIDE-2690 namespaces support continues
** Work in progress to add further QML decorators
** Lazy initialization got merged
** [https://bugreports.qt.io/browse/PYSIDE-1702 PYSIDE-1702] snake_case handling now does explicitly not touch user defined classes.
*** New improvements might land in future versions
** [https://bugreports.qt.io/browse/PYSIDE-1758 PYSIDE-1758] Leave the underscore variable alone in QApplication
** PYSIDE-2635 OpcUA example problem
** [https://bugreports.qt.io/browse/PYSIDE-535 PYSIDE-535] Remove a disambiguation patch no longer needed
** PYSIDE-2633 remoteobjects issue
** [https://bugreports.qt.io/browse/PYSIDE-1765 PYSIDE-1765] Widget subclass' minimumSizeHint not called with true_property
** Using new icons on the examples
** Work in progress on: [https://bugreports.qt.io/browse/PYSIDE-1753 PYSIDE-1753] setStyleSheet available even if snake_case (complex)
** 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


=== 03. February 2022 ===
===07. March 2024===
* General
* General
** Participation in FOSS Backstage
* Infra & Releases
* Infra & Releases
** 6.2.3 was released.
** 6.5.5 Commercial LTS was released
** Waiting for a scheduled CI break on Monday
** 5.15.13 OSS Package will be released tomorrow
** OSS packages for 5.15.3 source to be available soon.
** qtpip 0.1.1 release delayed
** Python 3.8 deprecation is still pending due to CI configuration dependencies.
* Bugs & Features
* Bugs & Features
** Updating new Qt dev API (targeting 6.4)
** permission api changes are mostly merged, one pending https://codereview.qt-project.org/c/pyside/pyside-setup/+/536759/15
** Adjusting a designer issue with a crash on views
** all deployment fixes are in.
** Improving examples: Old OpenGL API
** lazy initialization work continues, and some issues were fixed already.
** PYSIDE-1801 signal crash issue addressed
*** Ubuntu 22.04 | Python 3.10.2 |is showing an issue with scriptableapplication
** PYSIDE-1804 QByteArray issue
** Continue implementing more API for QtAsyncio which is currently working well
** Improving QML: getting some issues with QML_ATTACHED
** two pending change for 6.7.0 and 6.6.3 to be merged.
** Writing PyPy Documentation to explain motivation, changes, and usage.
** PYSIDE-2590 qt namespaces support required a patch for Qt/C++
** PyPy Compatibility:
** PYSIDE-2619 gentoo issue with a build
*** Got nice performance results with the working mandelbrot example
** PYSIDE-2624 typing issue with '/' is being researched
*** Still working on some last tests that are not properly working.
** Qt Icon Teams issues were discovered
** PYSIDE-1798 fixing enum issue
** PYSIDE-2602 virtual function research on a special signature
** Continue the work on the python-lsp issues on QtCreator
** One regression related to the QObject.connect changes.
 
===29. February 2024===


=== 27. January 2022 ===
* General
* General
** Communicate issue with Apple Silicon and our wheels. There is a bug on Python so using limited API and creating wheels with Python 3.8, make them unusable for 3.6 and 3.7
** Leap day!
** Documentation changes
* Infra & Releases
* Infra & Releases
** 6.2.3 to be release soon.
** 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
* Bugs & Features
** Qt Creator LSP issue has an initial solution
** PYSIDE-2599 QMatrix3x3 issues with QVariant
** Curating a list of new features for Shiboken
** PYSIDE-2605 Embedding an application, using .style() - qAPP
** Working on an issue related to help() function on top of custom modules
** PYSIDE-2590 QT_NAMESPACES support
** PYSIDE-1057 memory leak in progress
** PYSIDE-2602 clash on signature for QtWebEngine returning tuple
** Fixing examples to be compatible with PyPy and addressing corner cases
** Preparing 6.5.5 and 6.7.0 releases.
** QPainter was transformed into a context manager
** PYSIDE-2612 CMake issue from Anaconda builds when find_package
** Building pyside with PyPy 3.8 is possible (3.9 is still in alpha)
** macOS permissions changes are almost all merged
** Working on a new tree example
** Windows BTLE services crash
** 1788 allow-thread issue with event functions
** QIO-class are required for some new QAsyncio API using pipes
** Add threaded OpenGL example
** Lazy loading moving forward, but still a few issues are around
** Add data()/constData() to OpaqueContainers
*** A couple of shiboken tests seems to have outdated imports that are not helping.
** Continue work on QML integration
*** shiboken compatibility types missing
** Typing issues being solved in order to improve the pyi quality


=== 20. January 2022 ===
===22. February 2024===
* General
* General
** Brainstorming discussion about new JIRA items.
* Infra & Releases
* Infra & Releases
** 6.2.3 release next week
** 6.6.2 was released!
** Waiting a bit before branching 6.3
** qtpip getting a new minor version in order to be able to install new shiboken wizard
* Bugs & Features
* Bugs & Features
** QtCreator Python LSP issue to be worked on
** Permission API issue failing on the release framework. QtLocation problems were addressed.
** Continue with the research related to new Shiboken features.
** QtAsyncio blog post was published.
** Fixing general bugs from support
** 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.
** Adapting new API for 6.3
** Lazy initialization of numpy support in PySide, to improve the general lazy loading effort.
** Improving QML story with custom types
** Starting documenting pyside6-* tools
** PyPy compatibility is focused on making some last examples to work, some issues with PyPy are being found as well.
** 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.


=== 13. January 2022 ===
===15. February 2024===


* General
** Brainstorming session was held.
** Europython Call for Proposal is open!
* Infra & Releases
* Infra & Releases
** Maintenance in the CI, still a few things to be improved.
** 6.6.2 release waiting for Qt/C++ packages to be done.
** New version of Gerrit is available as well.
** Commercial 6.5.5 LTS to be out next week.
** 5.15.8 Commercial LTS was released
** Some improvements to the CI and macOS behavior
** 5.15.2.1 to be release soon, special version with Python 3.10 support
** Cherry pick bot on commercial repositories.
* Bugs and Features
* Bugs & Features
** PYSIDE-1755 Fixing issues with __code__ (related to slots)
** singleShot changes are merged, keep an eye on strange behavior.
** Improved documentation
** 6.7 adaption: metaobjectdump improvements
** Looking for new features for Shiboken
** 6.6.2 fixes with the commercial shibokenwizard
** Working on improving the LSP story on QtCreator https://github.com/python-lsp/python-lsp-jsonrpc/issues/5
** lupdate support for pyside improved (qm files)
** PYSIDE-1764 suggestion on avoid the generation/wrapping of methods within objects.
** pyside6-project problems with dry-run were fixed. Some improvements planned.
** PYSIDE-1730 signal/method namespace crash, generated by old fixes on old bugs.
** CI android wheels upgrade [skip armv7 in the meantime]
** Add capacity/reserve functions to OpaqueContainers
** Lazy imports research continues, we see lots of improvements on apple M* devices.
** QML references examples issues, to discover missing details on the qml interaction
** Clarifying the conversion rules on the typesystem: native, target
** PYSIDE-1768 and PYSIDE-1769 WebEngine issues were solved.
** uic missing imports
** PYSIDE-1751 equality test for signals is rewritten and working better
** QXYSeries: adding missing addons to enable methods




=== 06. January 2022 ===
===8. February 2024===


* General
* General
** New bridge between Telegram <-> IRC
** We got a PyConDE 2024 talk accepted (python -> android deployment)!
* Infra & Release
* Infra & Releases
** Planning 5.15.2 new release (5.15.2.1) to include Python 3.10 support.
** Addressing some issues with the android wheels
** 5.15.8 Commercial LTS to be release in the next couple of days.
** 6.6.2 got delayed until next week
** 6.2.3 planned for 2022.01.18
** Preparing for the 6.7 switch on dev
* Bugs & Features
* Bugs & Features
** PYSIDE-1755 __code__ inspection on slot connection is buggy (breaks, e.g. MagicMock testing)
** macOS: permission api patches ready for review
** Ported new examples QRegularExpression editor and MimeTypes
** singleShot patches merged
** Research to get new Shiboken features
** Lazy initialization was finished, and ready for discussion.
** Updating translations
** Check compatibility with the new REST module (from Qt/C++)
** In progress enabling qmllint in pyside project thanks to an external tool
** Preparations for 6.7 continues.
** Addressing signal issues for different use-cases, multiple inheritance
 
*** There is a relation with PyPy issues as well
===1. February 2024===
** PYSIDE-1760 Racing condition without virtual environments (preloading setuptools)
 
** true_property issues were solved.
* General
** continue work to have a more modular pyside installation with more wheels
** Interest from KDE to enable flatpak packages (maybe base pyside app).
** research on manylinux compatibility
** 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
*** 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.
 
===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 [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.
 
==2023==
 
*[[Qt for Python Development Notes 2023]]
 
==2022==
 
*[[Qt for Python Development Notes 2022]]


==2021==
==2021==


*[[Qt for Python Development Notes 2021]]
*[[Qt for Python Development Notes 2021]]
==2020==
==2020==



Latest revision as of 08:17, 25 April 2024


2024

25. April 2024

  • General
    • Successful talk at PyCon DE. Good response.
  • Infra & Releases
    • Preparing 6.7.1
    • 5.15.17 Commercial LTS is also soon to be prepared
    • sccache seems to be not properly behaving (on windows) because we are not getting enough output.
    • PySide6_DS wheel to be adjusted and hopefully be released soon.
  • Bugs & Features
    • Added a number of new classes
    • PYSIDE-2676 issues on ubuntu (might be related to a windows issue as well)
    • Implementation of Lazy Groups in order to avoid the regression in 6.7.0 due to multiple inheritance.
    • Alternative for Lazy Groups (Fix for the regression on 6.7.0)
      • Work on regressions introduced by lazy initialization PYSIDE-2675
    • Work on a crash in Python 3.12 PYSIDE-2676
    • Fixed memory leaks PYSIDE-1617
    • Work on our QML list property support PYSIDE-2698
    • Added pyside6-balsamui (ui tool for pyside6-balsam) - PYSIDE-2629
    • Also checking out List Property error with `count` and `at` parameters - PYSIDE-2698
    • Updating old example (calqlatr) - https://codereview.qt-project.org/c/pyside/pyside-setup/+/523055 for responsive layout
    • QtAsyncio: refinements to the current implementation, and solved a bug report.
      • Trying to add support to Keyboard interruptions (handlers)
      • Plan to improve exceptions handling

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