Qt for Python Development Notes: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(no refcounts but embedding)
(441 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[Category:Qt for Python]]
[[Category:Qt for Python]]
== 2019 ==
==== 14. November 2019 ====
- 5.12.6 Release: issues with the 5.12 merge. Some issues with Ubuntu.
- 5.14 Release hopefully in a couple of weeks.
- Qt Contributors Summit happening next week.
- NumPy integration documentation soon.
- qApp issue with embedded subclasses: PYSIDE-1135
- Python 3.8 refcount issues PYSIDE-939 soon to be solved.
- Shiboken Shared Pointers support, Namespaces, MSVC2017 issues solved.
- Building docs on macOS seems really hard to achieve.


==== 07. November 2019 ====
==2024==
- Documentation improvements are coming, more people involved.
- Qt World Summit feedback
  - First time we had a Qt for Python booth,
  - Request to improve the Python+QML story
  - Suggestions to have a better experience in QtCreator
  - In general the people really liked the integration with modules like matplotlib, pandas, opencv, scikit-image
  - The voice assistant also was really well received, this involve many other modules like Deepspeech, rasa, mozilla tts technologies, etc.
- Documentation will be written for the NumPy compatibility patch.
- Planned work on a Python 3.8 leak.
- After the chain of patches improving the namespace in shiboken, there are some issues with Python 2.7
- New template for Qt for Python on QtCreator will be merge soon.


==== 24. October 2019 ====
===23. May 2024===
  - Release Qt for Python 5.13.2
* General
    - 5.13.2 branch exists -> testing and final build on the way
* Infra & Releases
    - aiming for release on 1st Nov 2019
* Bugs & Features
  - 5.15 branch is still broken
  - further requirements mgmt/grooming ongoing
  - name spacing modification
    - hiding namespaces like QtCharts from Python and adding ability to shiboken to work with inline namespaces
    - https://bugreports.qt.io/browse/PYSIDE-990
    - https://bugreports.qt.io/browse/PYSIDE-1074
  - removed pyside-uic and pyside-rcc -> tooling is 100% Qt
  - QSettings related bug fix caused regression, more fixes were needed
  - Qt World Summit 2019 preparations (demos, shipping etc)
  - translator script from C++ to Python being done
    - translates 90% of the code (enough to simplify the snippet conversion process)
  - Numpy work complete for now
  - started working on Python 3.8 (https://bugreports.qt.io/browse/PYSIDE-939)
  - for now Python 3.5 support stays as is


==== 24. October 2019 ====
===16. May 2024===
  - struggling with coin and therefore none of the scheduled releases went out
* General
  - worked on multiple \brief attributes appearing in the docs
* Infra & Releases
  - discussions started how to improve the general Qt for Python doc index page
** 5.15.17 commercial lts needs to be re-packaged one more time due to 3rd party components updates.
  - investigating hiding C++ inline namespaces (e.g. Qt3D and QtCharts name spaces)
** 6.7.1 release will also be re-packed. LE for release is 20th of May
  - https://bugreports.qt.io/browse/PYSIDE-795 -> complete for 5.14 (merge pending)
* Bugs & Features
    -> pysequence can be handled
** [https://bugreports.qt.io/browse/PYSIDE-2753 PYSIDE-2753] - Added missing libQt6DeclarativeOpcUa binary to wheels
  - Adopting Python 3.8 and removing support for 3.5 in Qt for Python 5.14
** [https://bugreports.qt.io/browse/PYSIDE-2750 PYSIDE-2750] - Added missing libQt6VirtualKeyboardSettings binary to wheels
  - converter from C++ to Python worker approaching point of being usable for doc snippet conversion
** Exclude .qsb, .webp, .cpp.o and .qen from deployment due to Nuitka error. Error report raised in Nuitka - https://github.com/Nuitka/Nuitka/issues/2854
  - moving some docs from wiki to official QtfP docs
** Working on macOS cross compilation. The clang parser of shiboken generator needs some changes for cross compilation. Tricky changes incoming.
** [https://bugreports.qt.io/browse/PYSIDE-2748 PYSIDE-2748] - Fixed a type hint error
** [https://bugreports.qt.io/browse/PYSIDE-2747 PYSIDE-2747] - Diagnostics and minor fixes for a crash on Fedora, no real fix though
** [https://bugreports.qt.io/browse/PYSIDE-2711 PYSIDE-2711] - Fixed a bug in QWidget/QObject.parent()
** Work on type discovery in libshiboken, added helpers to dump internal state, performance considerations
** [https://bugreports.qt.io/browse/PYSIDE-2620 PYSIDE-2620] - Adapting to 6.8


==== 17. October 2019 ====
===2. May 2024===
  - Qt for Python 5.14 release -> not build-able with current Qt 5.14 release
    -> Qt Declarative needs change to enable QtfP binaries
  - Qt for Python 5.15
      -> currently not possible in CI
  - Qt for Python 5.13.2
      -> in principle 5.13 branch is releasable (except there is an elaborate set of doc patches)
  - split of QtfP project modules continues
    -> dependencies defined via yaml
    -> adds the ability to also sign produced wheel.
  - more example work
  - working on a semi translator to translate C++ snippets to Python
  - visit to PyConDE
  - QSharePointer related fixes being worked on
  - numpy proof-of-concept ([https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]) is available
  - removed uic and rcc from pyside-setup since the Qt tools support Python now
  - exploring the idea to include designer in the Python wheels
  - discussion on supported Python versions (can we add 3.8 and remove 3.5?)
      -> more comms on the mailing list can be expected


==== 26. September 2019 ====
* General
  - Porting guide (C++ -> Python) ready for staging
** OKR reviews for the next quarter.
  - Further snippet handling improvements
** Got a long document with feedback of a few tools we provided, that will help us improving our tooling!
      - being split out and translating them to Python
** Started the planning of moving away from '<file>.pyproject' to 'pyproject.toml' for pyside projects, in order to add options for our tools.
  - general bug cleanups/triaging
* Infra & Releases
  - working on new template for Python to create ui files
** 5.15.17 commercial lts needs to be re-packaged due to 3rd party components updates.
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
** 6.7.1 to be released next week.
  - OPCUA viewer example port completed
** Add new mechanism to test snapshot wheels.
  - added more Qt 5.14 API to Qt for Python 5.14
* Bugs & Features
  - [https://bugreports.qt.io/browse/PYSIDE-1087 PYSIDE-1087] in progress
** [https://bugreports.qt.io/browse/PYSIDE-2698 PYSIDE-2698] - ListProperty features fixed. Added tests to check all the features.
** [https://bugreports.qt.io/browse/PYSIDE-2705 PYSIDE-2705] - issues with signal disconnect warnings fixed
** macOS cross compilation for Android - stuck on a CMake issue. Progressing well.
** [https://bugreports.qt.io/browse/PYSIDE-2709 PYSIDE-2709] - Analysis ongoing for this QML registration regression
** Work on improving/documenting type discovery in shiboken
** Enumeration support in QtScrypt
** [https://bugreports.qt.io/browse/PYSIDE-2676 PYSIDE-2676] - PEP 697 extension in Python 3.12 fixed
** BT bug research, cannot be reproduced and application doesn't hang. Connection is not successful.
*** Issue might require special hw
** Documenting QtAsyncio implementation details.
*** An internal presentation is being prepared.
** Possible QtAsyncio feature, 'run' supporting context managers.
** macOS cross compilation for android being tried


==== 19. September 2019 ====
  - Roadmapping session for Qt for Python 5.15 & 6.0 on 8. October
  - experimenting with new configuration changes in coin and how they affect Qt for Python
  - Porting tutorial (C++ -> Python) was pushed for review
  - Progress on porting the C++ snippets to Python
      -> will be a longer process
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
    -> streamline-ing some code sections in the process
  - focus on validating existing bugs
  - otherwise the team dealt with impact of a cmake based Qt build system
  - porting QtOpcua to Qt for Python
      - particular work went into to opcuaviewer example


==== 12. September 2019 ====
===25. April 2024===
  - Work on QtOpcUa continued [https://bugreports.qt.io/browse/PYSIDE-952 PYSIDE-952]
* General
  - Work on example for Qt Summit
** Successful talk at PyCon DE. Good response.
  - Work on [https://bugreports.qt.io/browse/PYSIDE-1057 PYSIDE-1057]
* Infra & Releases
  - Prototyped QStringView support
** Preparing 6.7.1
  - [https://bugreports.qt.io/browse/PYSIDE-1087 PYSIDE-1087] huge speed patch ready for review
** 5.15.17 Commercial LTS is also soon to be prepared
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
** 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


==== 5. September 2019 ====
===18. April 2024===
  - Qt for Python 5.13.1 & 5.12.5
    - RTA for 5.13.1 released
    - 5.12.5 released next week
  - Branching
    - challenge is the building of Qt 6 while maintaining a stable Qt for Python build
    - one solution might be a QfP build for selected modules only
  - Team is planning a roadmapping session for QfP 5.15 release
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] (numpy) progressing
  - quite a few bugs have been fixed e.g. [https://bugreports.qt.io/browse/PYSIDE-1051 PYSIDE-1051]
  - Looking at QStringView exposure in Python
  - Continued work on uic/rcc tooling
  - General tooling improvements when working with QtCreator and Python
  - Updated some build instructions for QfP on Fedora


==== 29. August 2019 ====
* General
  - Releases (5.12.5 & 5.13.1) upcoming
** Bug fixing week
  - Release candidate wheels under test for both releases (Linux & macOS, Win is outstanding)
** PyConDE (Mon-Wed next week)
      - last patch for 5.13.1 is [https://bugreports.qt.io/browse/PYSIDE-1079 PYSIDE-1079]
** Planning a workshop for TQtC solution engineers (internal)
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] continued progress
** Possibility to include shiboken into the Axivion infra
  - new look at our example basket
* Infra & Releases
  - continued work on [https://bugreports.qt.io/browse/PYSIDE-1033 PYSIDE-1033]
** 5.15.17 commercial LTS was postponed to Friday. Still need test on Windows.
  - uic and rcc can output python code -> needs deployment changes in Pyside2 -> target release Qt for Python 5.14
** 6.5.6 release planned
      - adding support in QtCreator being able to deal with the above python tools
** 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.


==== 22. August 2019 ====
===11. April 2024===
  - Work on QtOpcUa started  [https://bugreports.qt.io/browse/PYSIDE-952 PYSIDE-952]
* General
  - Solved [https://bugreports.qt.io/browse/PYSIDE-1079 PYSIDE-1079] partially, need the structure
** Bug fixing week.
    of 5.14 to implement the typing.Optional feature.
** Qt 6.6.3 Library split broke our release, so we provided 6.6.3.1 as a fix.
  - Solved and closed [https://bugreports.qt.io/browse/PYSIDE-1077 PYSIDE-1077] wrong init code
** Qt 6.7.0 also had an issue with a binary incompatibility change on QtAudio and QAudio
  - Solved [https://bugreports.qt.io/browse/PYSIDE-1073 PYSIDE-1073], waiting for review
** Maybe we implement a simple channel of communicating this details, in order to avoid breakage [maybe architect meetings]
  - Refined and closed [https://bugreports.qt.io/browse/PYSIDE-945 PYSIDE-945].
** 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.


==== 15. August 2019 ====
===4. April 2024===
  - Partially solved [https://bugreports.qt.io/browse/PYSIDE-1052 PYSIDE-1052] (constants missing).
* General
  - Solved at the same time [https://bugreports.qt.io/browse/PYSIDE-945 PYSIDE-945].
** Large part of the team at conferences/on Easter holiday
    Solved a QtCore.Slot() bug that dates back to 2010-11-03.
* Infra & Releases
  - Work on [https://bugreports.qt.io/browse/PYSIDE-1073 PYSIDE-1073] trying to fix the bug.
** Released 6.6.3.1 release with fixes for Quick Controls/Multimedia
  - Work on [https://bugreports.qt.io/browse/PYSIDE-1051 PYSIDE-1051] trying to fix the bug.
** Preparing for 6.7.0
  - Merges/work on continuous integration infrastructure (preparing 5.13.1)
* Bugs & Features
** [https://bugreports.qt.io/browse/PYSIDE-2646 PYSIDE-2646] Improved cleanup of signal manager objects
** [https://bugreports.qt.io/browse/PYSIDE-2662 PYSIDE-2662] Fix for a signal in OpcUA
** [https://bugreports.qt.io/browse/PYSIDE-2663 PYSIDE-2663] Fixed a crash in webengine bindings
** [https://bugreports.qt.io/browse/PYSIDE-2668 PYSIDE-2668] Fixed an error in enums


==== 8. August 2019 ====
===28. March 2024===
  - Licenses on Pypi
* General
    - pypi is used for commercial and open source users
* Infra & Releases
    - currently only publishing the open source license -> will add second "commercial" license
** Prepared 6.6.3.1 release; 6.6.3 was unfortunately broken due to missing libraries (Quick Controls/Multimedia)
  - Releasing
* Bugs & Features
    - 5.13.1 release is being prepared
** [https://bugreports.qt.io/browse/PYSIDE-2654 PYSIDE-2654] Fixed multiple inheritance when no __init__ is in a subclass
    - 5.12.5 follows later this month
** Still investigating a crash on Ubuntu with Python 3.12 and bug_825.py . The crash is deeply hiding in Qt6.
  - Documentation changes
** [https://bugreports.qt.io/browse/PYSIDE-2652 PYSIDE-2652] Fixed an int overflow
    - Qt for Python Logo updated
** [https://bugreports.qt.io/browse/PYSIDE-2649 PYSIDE-2649] Work on building without OpenGL
    - CSS updates -> (lots of suggestions/bug reports from the community)
** [https://bugreports.qt.io/browse/PYSIDE-2653 PYSIDE-2653] Fixed a syntax error in type hints
  - PYSIDE-951 (primitive type support) merged and done
  - PYSIDE-795 (Numpy support progressing)
  - ported simpletreewidget from C++ to python
  - restructuring cmake setup with the aim to have a more modular build selection


==== 1. August 2019 ====
===21. March 2024===
  - (Summer break)
* General
  - PYSIDE-795 (numpy support is progressing)
** Ideas to improve the module.
  - PYSIDE-951 (primitive pointer types ready for review)
** Most of the team is going on vacation the following weeks.
  - Fixed pyside-setup 5.14 branch building (addressing lots of deprecation changes)
* 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.


==== 25. July 2019 ====
===14. March 2024===
  - (Summer break)
* General
  - continuing on PYSIDE-795: documentation,
** PyConDE schedule is out, don't miss Shyam's talk https://pretalx.com/pyconde-pydata-2024/talk/W7YDRX/
    - supporting the iterable protocol (will become sub-task)
** Python 3.13.0a5 is out.
    - augmenting incomplete classes (QtPrintSupport)
* Infra & Releases
    - checking and correcting function signatures according to PYSIDE-951
** 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


==== 18. July 2019 ====
===07. March 2024===
  - (Summer break)
* General
  - Some progress related to Bug fixing is being done.
** Participation in FOSS Backstage
  - bug fixing on signatures accessing "__doc__" on a module function.
* Infra & Releases
  - continued on PYSIDE-795
** 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.


==== 11. July 2019 ====
===29. February 2024===
  - visiting EuroPython
  - discussed roadmap for 5.14 release (check out Pyside Jira project with FixVersion 5.14)
  - continued CI configuration setup for pyside-setup
  - continued on shared pointer bugs(PYSIDE-1024 & PYSIDE-1043)
  - assert triggering for certain types (PYSIDE-1037)
  - further changes for PYSIDE-951
  - numpy enhancements (PYSIDE-795) (documentation and tests improvements)


==== 04. July 2019 ====
* General
  - Qt for Python 5.13.0 released
** Leap day!
  - Experimented with cross compiling
** Documentation changes
    - not easily possible -> build system needs major work
* Infra & Releases
  - New control system for Qt for Python (isolates Qt4Python CI configuration from coin)
** 6.7.0 will drop support of Python 3.8
    - more flexible way of working as not dependent on coin release
** 6.5.5 to be released in the following days
  - [https://bugreports.qt.io/browse/PYSIDE-951 PYSIDE-951] finish
** 6.7.0 RC marks our feature freeze, some exceptions will be discussed in order to release on time.
  - [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795] work continues
** qtpip 0.1.1 to be released soon for new indexing and shiboken_wizard package
  - fixed QFlags handling
** General update of Python versions in our CI configuration is being planned (for dev-6.7)
  - had trouble merging pyside to dev branch
* Bugs & Features
  - some discussions around smart pointer handling in Qt4Python
** PYSIDE-2599 QMatrix3x3 issues with QVariant
  - https://bugreports.qt.io/browse/PYSIDE-634 ready to be merged
** PYSIDE-2605 Embedding an application, using .style() - qAPP
  - https://bugreports.qt.io/browse/PYSIDE-1010
** 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


==== 27. June 2019 ====
===22. February 2024===
  - about to finish [https://bugreports.qt.io/browse/PYSIDE-951 PYSIDE-951]
* General
  - fixed "Fix qApp import of QCoreApplication"
** Brainstorming discussion about new JIRA items.
  - cleanup formatting of all source code and modern C++11 features
* Infra & Releases
  - final re-working of "Example: Move the SQL statements", improving the C++ code as well
** 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.


==== 20. June 2019 ====
===15. February 2024===
  - Release
    - Qt for Python 5.12.4 released today
    - Qt for Python 5.13.0 wheels done -> still need testing
  - Coin configurations to be separated from qt5.git (will become part of pyside-setup.git
  - SQL example was updated (to be more pythonic)
  - Shared pointer related fixes being done
  - reopened https://bugreports.qt.io/browse/PYSIDE-1033 (how to build shiboken) after reviewing the current situation
  - macOS build issue being addressed
  - https://bugreports.qt.io/browse/PYSIDE-951
  - team got commit rights for pyinstaller project repository
  - TQtC is sponsoring PyCon DE


==== 12. June 2019 ====
* General
  - Example polish, introduced QSaveFile, fixed tabbed browser [https://bugreports.qt.io/browse/PYSIDE-1022 PYSIDE-1022]
** Brainstorming session was held.
  - Fixed [https://bugreports.qt.io/browse/PYSIDE-1017 PYSIDE-1017], named parameters in added functions
** Europython Call for Proposal is open!
  - Started to look at some issues with smart pointers, [https://bugreports.qt.io/browse/PYSIDE-1024 PYSIDE-1024], [https://bugreports.qt.io/browse/PYSIDE-1016 PYSIDE-1016] related to [https://bugreports.qt.io/browse/PYSIDE-454 PYSIDE-454]
* Infra & Releases
  - Making progress in the embedded support story.
** 6.6.2 release waiting for Qt/C++ packages to be done.
    - After trying the setup.py approach, there was a lot of modifications involve in our build process, so it was not considered a good option.
** Commercial 6.5.5 LTS to be out next week.
    - a CMake approach is currently being used, and shiboken generator and the python module are successfully cross-compiled, but still, there is work to do.
** Some improvements to the CI and macOS behavior
  - Final solution of qApp embedding [https://bugreports.qt.io/browse/PYSIDE-571 PYSIDE-571]. After a long Odyssey of breaking solutions, qApp macro works now as expected with embedding.
** Cherry pick bot on commercial repositories.
  - PyInstaller maintainer still did not reply as promised on 2019-06-04 phone call.
* 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.


==== 6. June 2019 ====
  - Summer holidays affecting releasing? Any estimate when we would have:
    - Qt for Python 5.13.0 (Qt still on RC0)
    - Qt for Python 5.12.4 (in the next few weeks)
  - discussed options how to sign wheel content
  - cross compilation of Qt for Python (work in progress)
    -> investigating options on how to achieve that in an easy way
  - fixed build on CentOS
  - https://bugreports.qt.io/browse/PYSIDE-1017
  - https://bugreports.qt.io/browse/PYSIDE-1016
  - https://bugreports.qt.io/browse/PYSIDE-1024
  - https://bugreports.qt.io/browse/PYSIDE-1019
  - https://bugreports.qt.io/browse/PYSIDE-795 (NumPy)
  - discussed commit issues with pyinstaller maintainer
  - QtC will have presence on PyCon DE


==== 23. May 2019 ====
===8. February 2024===
  - Qt 6 (e.g. Pyside 6.0?) https://bugreports.qt.io/browse/PYSIDE-904
  - Pyinstaller issues being a bottle neck at the moment for the deployment story
  - Qt for Python 5.12.4 release
    - patches are accumulating
    - TODO: branching, changelog, testing
  - Qt for Python 5.13 release status
    - need cleanup in Jira of fix versions
    - Qt 5.13 blog post
    - start generating 5.13 release wheels for testing
  - Discussed Python 2 EOL on 1.1.2020
    - Current proposal is dropping Python 2 support in Qt for Python 6
    - Python 2 users can continue to use Qt for Python 5.15


==== 16. May 2019 ====
* General
  - Team member attended PyCon US
** We got a PyConDE 2024 talk accepted (python -> android deployment)!
  - Work on tutorials
* Infra & Releases
  - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] [https://bugreports.qt.io/browse/PYSIDE-1003 PYSIDE-1003] Final fix checked in
** Addressing some issues with the android wheels
  - [https://bugreports.qt.io/browse/PYSIDE-735 PYSIDE-735] Make generate_pyi crash on real ImportErrors, only!
** 6.6.2 got delayed until next week
  - [https://bugreports.qt.io/browse/PYSIDE-1004 PYSIDE-1004] writable signatures implemented but needs to change
** 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.


==== 9. May 2019 ====
===1. February 2024===
  - Final fixes to uic to be able to generate Python [https://bugreports.qt.io/browse/PYSIDE-797 PYSIDE-797]
  - Refactorings in libpyside
  - Work on SQL book tutorial
  - Research into using Clang C++ API
  - [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] [https://bugreports.qt.io/browse/PYSIDE-1003 PYSIDE-1003] Final fix is waiting for approval
  - Viewer tool for [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803] nearly ready for browsing code


==== 2. May 2019 ====
* General
  - 5.12.3 released
** Interest from KDE to enable flatpak packages (maybe base pyside app).
  - Looking into OpenGL version functions [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
** Discussion on adding more tutorials of specific functionality.
  - Improved shiboken2 progress message output
** CI Maintenance Break next Monday (first Monday of each month)
  - Sped up shiboken2 class generation significantly
* Infra & Releases
  - Improved code generated for multiple inheritance
** no unity build discussion and checks
  - First look at 5.14 API
** 6.6.2 to be released next week.
  - Fixed Problems with PyInstaller after removal of Coin glitches
** More granularity on the commercial wheels: shiboken wizard wheel.
  - Wrote viewer tool to finally support [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
* 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. April 2019 ====
- Preparation for Qt for Python 5.12.3 release.
  - Replaced QtXmlPatterns by libxml2/libxslt for documentation generation
  - Testing and final polishing of Python output mode of uic 5.14
  - New signatures related to PYSIDE-989
  - Looking into OpenGL version functions [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
  - Improving the usability of the "--reuse-build" option
  - fixing new PyInstaller problem with Python 2.7.16


==== 18. April 2019 ====
===25. January 2024===
- Usage of QtXmlPattern in doc tool chain of Qt for Python
  - xml pattern deprecated in Qt 5.13
  - working on libxml2 replacement (has issues on platforms w/o libxml2 support)
  - in the long term, the qdoc generation process should really produce python docs too
  - updated coin to continue to include QtXmlPattern for Qt for Python builds
- [https://bugreports.qt.io/browse/PYSIDE-996 PYSIDE-996] fixed on SuSE but not yet RedHat
- working on docs to provide hints when working with pyinstaller
- [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955] in progress
- New attempt on [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
- shiboken [https://bugreports.qt.io/browse/PYSIDE-995 PYSIDE-995] call operator support
- custom scene graph rendering node in Python (related to PYSIDE-955 PYSIDE-989)
- improving primitive type conversion (by the various OpenGL related bugs like PYSIDE-989 or PYSIDE-955)


==== 11. April 2019 ====
* General
- PyInstaller problems identified as COIN bugs [https://bugreports.qt.io/browse/PYSIDE-996 PYSIDE-996]
** Configuring additional embedded devices for RTA
- continuing with [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]
** Focus on spending some time on embedded linux, in order to see usability, and compatibility with Boot2Qt images.
  - handling pointers which are arrays arrays (patch defunct after too many other changes)
** Conferences: submissions to PyCon SK, PyCon DE, PyCon LT, PyCon US
  - identifying remaining bad spots that need improving
* Infra & Releases
- Started work on [https://bugreports.qt.io/browse/PYSIDE-955 PYSIDE-955]
** Decouple of the commercial wheels in order to have a finer granularity and simpler tree on the Qt Installer (Maintenance Tool)
- Started diagnosis of [https://bugreports.qt.io/browse/PYSIDE-995 PYSIDE-995]
** Qt for Python 6.6.2 is waiting for Qt to be released (by the end of the month)
- Continued on work enabling extending namespaces across modules
** 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.


==== 4. April 2019 ====
===18. January 2024===
- working in Wiki page on how to port a C++ application to Qt for Python (over time should turn into tutorial)
- further discussion how to handle snippets
- more tutorials (especially for PYSIDE-901)
- Further work on cross compilation for ARMv7
- Various fixes for Shiboken to handle namespaces in Qt better
- Improve Shiboken documentation composition/layout
- Bugfixing related to Qt file handling


==== 28. March 2019 ====
* General
- Qt for Python 5.12.2 released last on 22. March 2019
* Infra & Releases
- started to write up documentation on how to deploy with pyinstaller
** Commercial LTS 6.2.11 was released
  - finding quite a few issues when using pyinstaller on Windows (and particular Python 2)
** Add missing tags OSS LTS 5.15.x
  - macOS & Linux less problematic
** 6.6.2 scheduled by the end of the month
- worked on documentation issues (like missing links for easier browsing)
** Release documentation to be written to have tasks on JIRA
- investigated issues where shiboken didn't handle C++ namespaces across modules
* Bugs & Features
- handle nullptr usage properly in docs
** Python Scripting: looking into stable API, and cleanup
- more translation of C++ snippets to Python (is a never ending task as there are thousands of C++ snippets)
** 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


==== 21. March 2019 ====
===11. January 2024===
- Qt for Python 5.12.2 release activities
  - some bugs and general CI issues kept delaying the generation of the final release wheels
  - most bugs were related to pyinstaller and other deployment tools
  - one last cxfreeze bug being integrated
  - next/subsequent set of wheels will be 5.12.2 release
- Lots of installer related discussions in the team
  - question is which installer/deployment tool to use/recommend
  - current decision is to provide guides/documentation for at least fbs and pyinstaller
- review of project's current release practices (in particular in the area of QA)
  - no outcome at this stage
- addressed issues in dev branch related to changes in Qt dev branch
- Qt for Python team joined Qt doc team to talk about ways how to improve Qt for Python docs


==== 14. March 2019 ====
* General
- Fixed broken documentation formatting; added deprecation information
** Hackathon at TQtC
- [https://bugreports.qt.io/browse/QTBUG-74424 QTBUG-74424] 5.13 Release blocker affecting doc generation occurred
** CI process presentation
- [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932]/[https://bugreports.qt.io/browse/PYSIDE-942 PYSIDE-942]: The embedding patch is mostly
* Infra & Releases
  working, but needs some refinement to be complete:
** Commercial LTS 6.5.4 release starting (to be finished today)
  - The .pyc generation contradicts the Limited API and must be changed to
** Commercial LTS 6.2.11 still pending release
    use source code.
** 6.6.2 schedule by the end of the month.
  - The code isolation must be made explicit and complete, so that installers
** CI still showing some issues after the maintenance break.
    ''don't recognize'' that there is something.
** Update of the Python versions are pending.
    Right now this was done in the wrong direction.
* Bugs & Features
  Not much code and time necessary, just fixing ''the right'' bits.
** Fixing a few small issues with QtAsyncio
- PYSIDE-934 The Buffer protocol for Python 2 needed a special flag to be compatible.                
** Documentation for the QtAsyncio is currently in review.
- Added more features for the Python project wizards on QtCreator https://codereview.qt-project.org/#/c/255686/
** New behavior for singleShot (relying on the C++ impl)
- Created a new tutorial for a workshop https://github.com/cmaureir/qtforpython_workshop
** 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


==== 7. March 2019 ====
===04.January 2024===
- Qt for Python 5.12.2 release
* General
  - waiting for final patch before release (PYSIDE-942/PYSIDE-932)
** Happy new year fellow readers :D
- Setting up test envs for Python 3.7 & 3.5 (so far testing was always done on Python 3.6) -> work in progress
** New OKR organization
- QML tutorial under review (https://codereview.qt-project.org/#/c/254044/10)
** Keeping in an eye on Conferences
- how to integrate deprecation infos from Qt to the Python side
** PyPy is now on 3.10
- Python output to rcc [https://bugreports.qt.io/browse/PYSIDE-855 PYSIDE-855]
** Ideas on the wheel organization for the Qt Installer
- [https://bugreports.qt.io/browse/PYSIDE-95 PYSIDE-95] fixed
* Infra & Releases
- Experimented with MicroPython
** CI Maintenance break continues. Some new issues were discovered.
- Found the reason for [https://bugreports.qt.io/browse/PYSIDE-966 PYSIDE-966]: A memory leak was fixed by ctypes.
** 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.


==== 28. February 2019 ====
==2023==
- Discussion on adding more python testing environments to be certain 3.5+ versions are properly working.
- [https://bugreports.qt.io/browse/PYSIDE-953 PYSIDE-953] fixed
- [https://bugreports.qt.io/browse/PYSIDE-934 PYSIDE-934] almost done
- [https://bugreports.qt.io/browse/PYSIDE-931 PYSIDE-931] almost done
- refcount bug fixes mathplotlib crashes:
  - [https://bugreports.qt.io/browse/PYSIDE-928 PYSIDE-928]
  - [https://bugreports.qt.io/browse/PYSIDE-937 PYSIDE-937]
  - [https://bugreports.qt.io/browse/PYSIDE-943 PYSIDE-943]
- WIP: Embedding to solve signature problems dependency of support directory since 5.12.1 . Will solve 
  - [https://bugreports.qt.io/browse/PYSIDE-942 PYSIDE-942]  missing support, PyInstaller  (was solved but involves PyInstaller change)
  - [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932]  missing support, cx_freese


==== 21. February 2019 ====
*[[Qt for Python Development Notes 2023]]
- research on how to do ad hoc releases of Pyside 2 for bug fixes like last weeks meta data change (and otherwise no further source change)
- Qt 5.12.2 about to be released -> should have a Qt for Python 5.12.2 release
- discussed installer related crash bug following 5.12.1 release [https://bugreports.qt.io/browse/PYSIDE-932 PYSIDE-932] etc.
- tutorials works (based on recent Qt for Python youtube videos)
- prepared discussions with doc team meeting next week (on Python support)
- some more work on [https://bugreports.qt.io/browse/PYSIDE-795 PYSIDE-795]
- work to distinguish array types from pointer variables
- [https://bugreports.qt.io/browse/PYSIDE-946 PYSIDE-946] under development
- [https://bugreports.qt.io/browse/PYSIDE-934 PYSIDE-934] void* type handling
- [https://bugreports.qt.io/browse/PYSIDE-938 PYSIDE-938] under review
- Current Creator 4.9 beta released today added Python project templates
- PEP 518 (project format for Python projects) -> needs Qt Creator support


==== 14. February 2019 ====
==2022==
- 5.12.1 wheels had meta data issues and were redone with fixed meta data
- discussed improving the integration of Python example code into Qt for Python docs
- [https://bugreports.qt.io/browse/PYSIDE-921 PYSIDE-921]
- improved signature matching for custom types
- [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] fixed and merged
- [https://bugreports.qt.io/browse/PYSIDE-922 PYSIDE-922] fixed
- [https://bugreports.qt.io/browse/PYSIDE-45 PYSIDE-45] fixed
- looking at crashes when importing pandas & numpy (the order of imports matters when working around it)
==== 7. February 2019 ====
- Fixed 5.13 deprecation warnings (which unearthed that we had a dependency on QString::isNull() vs isEmpty() in shiboken)
- Fixed a large number of shiboken code generation warnings (revealing some issues)
- Provided s solution for one issue mentioned at PYSIDE-725 (apparently Sharon Woods from US is involved in some consulting?)
- Will start formal release tag marking in Jira (matching Qt style)
- Data visualization tutorial fixes
- Talking about further integration of existing examples into general docs
- [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803] further investigation - no conclusion yet
- [https://bugreports.qt.io/browse/PYSIDE-921 PYSIDE-921] fixed
- [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816] investigated - fix seems at hand
- [https://bugreports.qt.io/browse/PYSIDE-924 PYSIDE-924] fixed issue where Q_PROPERTY flags were not properly passed on to Qt
- restructured cmake files adding a master cmake file (simplifies opening of project in IDEs)
  - Now it's possible to open the whole project (PySide2 + Shiboken2) on QtCreator using the global CMakeList.txt
- worked on issues related to the setup.py and how to execute it.


==== 31. January 2019 ====
*[[Qt for Python Development Notes 2022]]
- Preparing 5.12.1 release
  - Packages are looking good, likely to be released at same time as Qt 5.12.1 release
- Submitted class bindings of Qt RemoteObjects for [https://bugreports.qt.io/browse/PYSIDE-862 PYSIDE-862]
- Added classes QWebEngineHistory, WebEngineHistoryItem with required fix [https://bugreports.qt.io/browse/PYSIDE-906 PYSIDE-906]
- Have calls to method annotated as deprecated issue a warning
- Fixed warnings, prepared Qt 5.13 bindings (based on current 5.13 API additions)
- Looked into [https://bugreports.qt.io/browse/PYSIDE-816 PYSIDE-816], [https://bugreports.qt.io/browse/PYSIDE-803 PYSIDE-803]
- Data visualization tutorial added
- working on ways of substitution of C++ specific terms in docs against Python equivalents (e.g. nullptr and bool)


==== 24. January 2019 ====
==2021==
- Release branch for 5.12.1 exist
  - There was some issues in CI with 5.12 branch earlier this week and it was pretty much blocked. All issues should be solved now.
- Prepared class bindings of Qt RemoteObject for PYSIDE-862 for review
- Some creativity to keep integrations going due to COIN issues
- Investigation of PYSIDE-803 is ongoing. The issue needs deep analysis to isolate the problem.


==== 17. January 2019 ====
*[[Qt for Python Development Notes 2021]]
- Fixed PYSIDE-908, further investigation into PYSIDE-803 (free threading)
- QfP 5.12.1 release being prepared
- PYSIDE-797 (uic change ready for review)
- PYSIDE-862 (Qt RemoteObject module support)
- PYSIDE-634 being fixed
- started to look at true cross compilation (PYSIDE-802)
- Improving Qt Creator project template support (QTCREATORBUG-21824)


==== 10. January 2019 ====
==2020==
- Scope for Qt for Python 5.13 release
  -> relevant tasks marked with Fixversion 5.13 in bugreports.qt.io
  -> feature freeze for Qt for Python 5.13 (April 2019)
- looked into case of corrupted meta data of wheel
- supporting named arguments for signals
- some minimal support in Qt Creator to create a Qt for Python project
- bug hunting in 5.12.0 release
- working on Pyside-797
- further analysis of PYSIDE-803, working on an implementation plan


==== 3. January 2019 ====
*[[Qt for Python Development Notes 2020]]
- Completed: Complete The Signature Introspection (PYSIDE-510)
- After the release there has been a couple of new reported bugs that we are working on:
  - There was some outdated documentation issue regarding Slots()
  - A couple of issues with multiple inheritance like: PYSIDE-868
  - and with QPlainTextEdit PYSIDE-886
- Restarted investigation of PYSIDE-803


== 2018 ==
==2019==


* [[Qt for Python Development Notes 2018]]
*[[Qt for Python Development Notes 2019]]
 
==2018==
 
*[[Qt for Python Development Notes 2018]]

Revision as of 08:13, 16 May 2024


2024

23. May 2024

  • General
  • Infra & Releases
  • Bugs & Features

16. May 2024

  • General
  • Infra & Releases
    • 5.15.17 commercial lts needs to be re-packaged one more time due to 3rd party components updates.
    • 6.7.1 release will also be re-packed. LE for release is 20th of May
  • Bugs & Features
    • PYSIDE-2753 - Added missing libQt6DeclarativeOpcUa binary to wheels
    • PYSIDE-2750 - Added missing libQt6VirtualKeyboardSettings binary to wheels
    • Exclude .qsb, .webp, .cpp.o and .qen from deployment due to Nuitka error. Error report raised in Nuitka - https://github.com/Nuitka/Nuitka/issues/2854
    • Working on macOS cross compilation. The clang parser of shiboken generator needs some changes for cross compilation. Tricky changes incoming.
    • PYSIDE-2748 - Fixed a type hint error
    • PYSIDE-2747 - Diagnostics and minor fixes for a crash on Fedora, no real fix though
    • PYSIDE-2711 - Fixed a bug in QWidget/QObject.parent()
    • Work on type discovery in libshiboken, added helpers to dump internal state, performance considerations
    • PYSIDE-2620 - Adapting to 6.8

2. May 2024

  • General
    • OKR reviews for the next quarter.
    • Got a long document with feedback of a few tools we provided, that will help us improving our tooling!
    • Started the planning of moving away from '<file>.pyproject' to 'pyproject.toml' for pyside projects, in order to add options for our tools.
  • Infra & Releases
    • 5.15.17 commercial lts needs to be re-packaged due to 3rd party components updates.
    • 6.7.1 to be released next week.
    • Add new mechanism to test snapshot wheels.
  • Bugs & Features
    • PYSIDE-2698 - ListProperty features fixed. Added tests to check all the features.
    • PYSIDE-2705 - issues with signal disconnect warnings fixed
    • macOS cross compilation for Android - stuck on a CMake issue. Progressing well.
    • PYSIDE-2709 - Analysis ongoing for this QML registration regression
    • Work on improving/documenting type discovery in shiboken
    • Enumeration support in QtScrypt
    • PYSIDE-2676 - PEP 697 extension in Python 3.12 fixed
    • BT bug research, cannot be reproduced and application doesn't hang. Connection is not successful.
      • Issue might require special hw
    • Documenting QtAsyncio implementation details.
      • An internal presentation is being prepared.
    • Possible QtAsyncio feature, 'run' supporting context managers.
    • macOS cross compilation for android being tried


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