Qt for Python Development Notes

From Qt Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

2021

22. July 2021

15. July 2021

  • Infra & Releases
    • CI has some issues related to qtbase and Windows
  • Bugs
    • https://bugreports.qt.io/browse/PYSIDE-535 Issues when transforming Macros to Functions, leaks were found
    • Fix memory leaks in shiboken
    • QMultiMap and QMultiHash was not properly handle (defaultdict) | behavioral change
      • Before it was a a normal dict, with the last value (all the other values were not preserved)
  • Features
    • https://bugreports.qt.io/browse/PYSIDE-1252 support classmethods in signatures and properties (static methods become properties, and that's the relation with classmethods)
    • Adding QtDBus (QPendingReply is missing) and QtNetworkAuth modules
    • Tools like qdbusxml2cpp is not supported yet.
    • Remote Objects getting some contributions.
    • Refreshing QML code and good practices, adding new examples, etc
    • WIP qmlRegisterSingletonInstance and research on QML_NAMED_ELEMENT
    • Improve docs: icons, style, content.

08. July 2021

  • Infra & Releases
    • Planning next releases.
  • Bugs
    • 1334 .connect returns now a bool to verify the connection.
    • 1613 logging level
    • 1618 session manager issue (Qt bug)
    • 1619 discussion on accepting the QSettings.value (still in progress)
  • Features
    • lupdate now has support for Python, and will be available in 6.2 (+ docs)
    • adding new API for WebEngine
    • gettext tutorial
    • pathlib support continues (QUrl)
    • PyPy compatibility: still addressing the issues related to the type extensions.
    • ApiExtractor: add classmethod attribute to add-function for tr()
    • Attempting to expose QtDBus
    • Improving docs and tutorials
    • Experimenting with python-only modules.

01. July 2021

  • Infra & Releases
    • 6.1.2 ready to go out
    • Trying CI debug configuration
  • Bugs
    • Documentation broken links, and improve Designer tutorials.
    • PYSIDE-1609 findChild fixed
    • PYSIDE-1370 QSharedMemory fixed
    • PYSIDE-131 Translations issues fixed (with the problem that we don't have lupdate support on PySide6)
    • QtSensors issues on the CI due to update solved.
  • Features
    • PYSIDE-535 PyPy Support still on going.
    • Adding more missing classes.
    • Analysing deployment scenario for PySide applications.

24. June 2021

  • Feedback from Akademy 2021 sessions
    • Tutorials on the Designer process, and other process that might be simple for Qt users, but unknown for Python users.
    • More examples on the QML - Python interaction.
    • Improve documentation
    • Qt Creator support
    • Template tool
  • Release and Infra
    • 6.1.2 coming next week.
  • Bugs
    • PYSIDE-131 in progress, related to translation with automatic language tools.
  • Features
    • Trying to address issues related to PyPy (type declaration, and extension structure)
    • Add new qml functions (update missing binding)
    • Multimedia changes
    • WebEngine is partially in the repo.

17. June 2021

  • Release and Infra
    • Commercial LTS release 5.15.5
    • New Debug VM setup ready to test
    • Testing new architecture to handle universal binaries on M1 machines
  • Bugs
    • PYSIDE-1599 Issue with .pyi files on the CI (to test them) is now fixed, considering wrong signatures that we had and didn't detect.
    • Seems like there is something going on with the --quiet options and log levels.
    • Cleaning old bugs that were invalid
  • Feature
    • Qt6 API adaption
    • There are some corner cases with pathlib that need to be documented and fixed.
    • Changes to rely on qtpath instead of qmake (from qt6 changes)
    • Testing aarch64 and M1 builds

10. June 2021

03. June 2021

  • Release and Infra
    • Qt 6.1.1 scheduled for Friday (might be release next week)
    • Commercial LTS 5.15.5 scheduled for the 10th.
    • Research on M1 build on the CI
    • Debug build on Windows to be tested.
    • The possibility of releasing Docker images is being addressed
  • Bugs
  • Features
    • Small cleanups and fixes
    • Added more API (PYSIDE-1586) for qtbase for starters
    • Working on native interfaces (PYSIDE-1568)
    • pathlib support https://bugreports.qt.io/browse/PYSIDE-1499
      • File system paths in Qt are supported
    • Discussion on new repo structure.

27. May 2021

  • Release and Infra
    • 5.15.5 LTS (Commercial only) release planned.
    • 6.1.1 to be release soon.
    • Debug build on Windows (using python_d.exe and pass '--debug' when building, and remove the '--limited-api=yes')
    • Research: M1 build CI testing
  • Features
    • Improvements to the general pyi generator, and features.
    • pathlib compatibility still in progress
    • Shiboken documentation: unused code
  • Bugs
  • Changelog policy
    • [Changelog] This class will act like..., to be used for important changes.
  • Research
    • performance tests
    • Tool: report new classes per Qt versions.
    • Missing Qt API
    • new structure cmake/build

20. May 2021

  • 6.2 considerations (checking on newly added modules, examples, tests)
  • Added textedit example
  • Features
    • PYSIDE-1415 Make `generate_pyi.py` usable for any binding - checked in
    • PYSIDE-1019 __feature__: Support generation of modified .pyi files - done, needs cleanup
  • Bugs
    • PYSIDE-1564 QObject does not support cooperative multiple inheritance
      • working patch written but wrong, the problem is much harder since we need to call __init__ along the MRO and handle keyword args.
    • PYSIDE-229 Signal disconnect fails in multiple inheritance situation
      • postponed until the above problem is solved since it voids all debugging done

13. May 2021

06. May 2021

29. April 2021

22. April 2021

15. April 2021

  • Infrastructure
    • Setting on track the content of OSS and commercial wheels.
    • Qt addons distribution will change in 6.1 and 6.2, so we need to keep an eye on that.
    • New macOS machines for the CI
  • Documentation update process to be improved.
  • Bugs
    • There were some problems with the default encoding and the doc build process (python version related)
    • 1529 fixed, and other issues (QPointF), 1514 QPainter, 1503 QCharts.
  • Features
    • Improving examples to use new features and refreshing the code base.
    • Performance examples to compare C++ and Python
    • Reformatting some code base to use f-strings and warning
    • New tutorials in progress based on Model View
    • Internal Qt Hackathon
      • Focused on integration with matplotlib (Performance discussion)
      • Scripting C++ applications.

08. April 2021

  • No meeting

01. April 2021

  • Deployment story
    • Add new test for Nuitka (on macOS)
    • Update the tutorials, since PyInstaller and cx_Freeze seems to be partially working on Qt6.
    • Higher versions from macOS are more restrictive for the bundles that are generated. This leads to new breakage.
  • Preparation for 6.0.3 release
  • Bug
    • PYSIDE-1523 Nuitka compile methods/functions is done
    • PYSIDE-1338 Hiding confusing feature frame entries
    • Wheel Tester to be improved.
  • Features
    • pathlib features still in progress.
    • Porting more examples to snake_case
    • Check snippets_translator tool.
    • Make generate_pyi as a generic tool to be merged.

25. March 2021

  • Infra
    • Evaluation to change the wheel names to specify glibc version for 6.1
    • CI issues still with macOS
  • Features
    • Refactoring examples (snake_case)
    • Updating deployment docs.
    • PYSIDE-1523 Nuitka, support for compiled functions.
    • PYSIDE-1415 make the generate_pyi more general
    • PYSIDE-1449 pathlib compatibility
    • Improvements on the documentation, tutorials, and examples.
    • Enabling snippet translator into the doc building process.
  • Bugs
    • Fix crash from the new Network components.
    • Triage and some other fixes.
    • PYSIDE-1502 Compiling pyside2 with build target does not result in PySide2 `support` module being installed
    • PYSIDE-1524 warning related to sprintf
    • PYSIDE-1019 1038 hidden imports, properties, other fixes.
    • There seems to be some problems with PyInstaller on macOS

18. March 2021

  • Infra
    • CI has been showing some issues. 12h timeouts for macOS.
    • Soon to have 6.1 branch
    • Synchronization of the commercial repository with latest Qt.
  • Features
    • Improving commercial tools.
    • Finding issues and getting ideas to improve the docs.
    • Using new qttools directory
    • Add option to not copy qt tools to the wheel when building.
    • pathlib compatibility patch still on-going
    • improvements to the documentation, adding 'doc' directory to each example.
  • Bugs
    • OpenGLFunctions issues (mailing list announcement)
    • PYSIDE-1520 Union types
    • PYSIDE-1514 Shiboken module movement patches had some issues, which will be fixed
    • PYSIDE-1502 Working on improving the __feature__ option to make them safer in diff installation errors.
    • PYSIDE-1019 feature import problem (found in PYSIDE-1338) waiting for review

11. March 2021

  • Infra
    • 6.0.2 is out
    • 5.15.3 still pending
    • Trying to update dependencies for 6.1 (modules)
    • auditwheel (research, optional)
    • COIN seems to be acting weird, but generally.
  • Features
    • cleanup snippets and general things in shiboken
    • license changes for LTS
    • Adding clarifications to the docs.
    • Discussion on the proper build processes.
  • Bugs

5. March 2021

  • General Topics
    • 6.0.2 release preparations
      • Final fix for license checking instructions
      • OSS RC1 wheels should be available for testing later today
      • Merge from pyside-setup/6.0 into tqtc-pyside-setup/6.0 is pending that final fix
    • Bugs
      • PYSIDE-1438 Crash in Qt DataVisualisation adressed
      • Bug triage, moved several bugs over to Qt
    • Features
      • Cleanup and improvement of injected code snippets in PySide6
      • Improvements in error handling

25. February 2021

  • General Topics
    • Commercial 5.15.3 release next week.
    • 6.0.2 release next week.
  • Infra updates
    • Keep an eye on the next Python releases.
  • Features
    • Documentation for the designer plugin
    • shiboken: c++ using directive
    • pathlib compatibility support discussion (initial implementation was discarded)
      • Trying to discover all the methods that are related to paths.
  • Bugs
    • cx_Freeze issues in 6.0.0/1

18. February 2021

  • General Topics
    • Commercial LTS 5.15.3 release.
    • DeveloperWeek conference talk by Corey: will mention Qt for Python.
  • Infra Update
    • TBD: Need of a new branch in qt5.git for the lts qt for python release.
  • Features
    • pathlib.Path (soon to be ready) and fspath support (difficult) in pyside
    • __feature__ documentation
    • Designer patches are done (we still need docs)
    • documentation generation fixes.
    • shiboken: general refactoring (constructors)
    • doc: examples code in tabs
    • doc: new ideas for tutorials and vocabulary.

11. February 2021

  • General topics
    • Issues with Pick-to: 5.15
    • Discussion about the usage of pathlib
    • Reduce linux wheel size by not including .debug files.
  • Infra update
    • Timeouts in RHEL
    • Preparing addons for 6.1
  • Bugs
    • Fixing many issues related to sphinx, and documentation in general.
  • Features
    • Moving the internal shiboken6.shiboken6.Shiboken to shiboken6.Shiboken 1497
    • Will be finish today (Documentation about the __feature__ options) PYSIDE-1481
    • (in progress) https://bugreports.qt.io/browse/PYSIDE-1019 usage of constructor properties when enabling true_property
    • Migration to pathlib in our code, and add support for fspath in our API, https://bugreports.qt.io/browse/PYSIDE-1499
    • Examples gallery embedded into the doc building process.
    • Designer patch ready for review.
    • Commercial tools on-going (icons discussion)
    • (in progress) Error handling in shiboken

4. February 2021

28. January 2021

  • Infra update
    • 'dev' we are missing tests on macOS (in progress). Qt5 bin on macOS 11, and running test on 10.15/13
    • trying to build pyside on a custom Qt (with plugins/addons) oss and commercial
  • Bugs
  • Features
    • refactoring shiboken
    • statmachine module rebirth
    • designer patches to include custom widgets.
    • enabling clang_options on shiboken
  • Branching story
    • lts-5.15 issues
      • Fix pyside-setup/5.15 and do all the merges     (done)                                        
      • Merge pyside-setup/5.15 into tqtc-pyside-setup/5.15    (done)                                        
      • Create tqtc-pyside-setup/lts-5.15 from pyside-setup/5.15
      • Close pyside-setup/5.15 Make the Pick-to bot merge from Pick-to: 5.15 -> tqtc/lts-5.15
    • tqtc
      • create tqtc/dev from oss/dev
      • move manually the patches that added things for the commercial offering into tqtc/dev (shiboken ui, m2m protocols modules)
    • Process to fix bugs
      • push to oss/dev Pickt-to: 5.15 (this will go to lts-5.15)
      • before release we push oss/dev to tqtc/dev

21. January 2021

  • Infra update
    • 'dev' branch seems to be the only broken (maybe 5.15)
    • Provisioning is affected
    • need to create lts-5.15 branch for commercial releases
    • WinRT is broken (at a Qt/CI level)
  • Bug fixes
  • Features
    • Rename internal shiboken import: 'from shiboken6 import shiboken6 as Shiboken' -> 'from shiboken6 import Shiboken'
      • Both options in 6.1,
      • Only 'from shiboken6 import Shiboken' from 6.2 on.
    • Designer plugin: set environment in the launcher script (instead of the rpath option)
    • Removing extra QtCharts namespace (it was removed in Qt) -> QtDataVisualization?
      • Externals helping the migration process.
    • https://bugreports.qt.io/browse/PYSIDE-1477 clang options for shiboken cross build
  • Starting work on new tutorials and applications (Data Science and visualization)

14. January 2021

7. January 2021

  • Infra update
    • libclang install fixes (issues related to 6.0 and 10.0)
      • from the MSVC update, we require 10.0 for 5.15 and 6.0
  • Bug fixes
    • PYSIDE-1447 qapp flag
    • PYSIDE-1463 snake_case init issue
    • PYSIDE-1470 shiboken delete qapp
    • PYSIDE-79 reopened due to a leak introduced by the fix to PYSIDE-68
  • Features
    • Possible research PYSIDE-163
    • Refactoring shiboken
    • PYSIDE-1455 designer plugin
    • Snippets translators
    • Deployment story for PySide6

2020

2019

2018