Qt for Python Development Notes: Difference between revisions
Jump to navigation
Jump to search
(→2022) |
|||
Line 4: | Line 4: | ||
===7. April 2022=== | ===7. April 2022=== | ||
* Infra & Releases | * Infra & Releases | ||
** New commercial 5.15 releases, difficulties with libclang 12 | |||
** _Py_Mangle issues on >=5.15.4 to be included in 5.15.4 source packages (and others) | |||
** Branching 6.3 in the next days. | |||
* Bugs & Features | * Bugs & Features | ||
** PYSIDE-1876 qmlparserstatus issue fixed | |||
** Fix TOC doc issue and adapt new qtbase changes | |||
** refactorings to reduce size of generated code | |||
** smartpointers improvements, adding tests and tuning implementation | |||
** PYSIDE-1878 improving qml and python interaction (plugins) | |||
** Working on the new Qt Python Enums approach (will be a TP with a compile time option) | |||
** Improve some issues on 5.15.x regarding Python 3.10 compatibility (_Py_Mangle) | |||
===31. March 2022=== | ===31. March 2022=== |
Revision as of 15:40, 7 April 2022
2022
7. April 2022
- Infra & Releases
- New commercial 5.15 releases, difficulties with libclang 12
- _Py_Mangle issues on >=5.15.4 to be included in 5.15.4 source packages (and others)
- Branching 6.3 in the next days.
- Bugs & Features
- PYSIDE-1876 qmlparserstatus issue fixed
- Fix TOC doc issue and adapt new qtbase changes
- refactorings to reduce size of generated code
- smartpointers improvements, adding tests and tuning implementation
- PYSIDE-1878 improving qml and python interaction (plugins)
- Working on the new Qt Python Enums approach (will be a TP with a compile time option)
- Improve some issues on 5.15.x regarding Python 3.10 compatibility (_Py_Mangle)
31. March 2022
- Bugs & Features
- PYSIDE-187O fixed.
- Wheel size reduction - new flag --no-size-optimization - ready to merge.
- pyqmlscene (starts with PySide6QmlPlugin) in the working. Requirements gathering from Qml team.
- shiboken6-genpyi was fixed (was not functional after the Python virtualization)
- adaptation of PySide6.__all__ after the wheel split, still a problem not understood
- PYSIDE-1735: Use Python Enums to handle Qt Enum. Making fast progress.
- PYSIDE-535: completing PyPy documentation to introduce the project for 6.3
- PYSIDE-1874 SIGSEGV when accessing __doc__ of a Property fixed
24. March 2022
- Infra & Releases
- 6.2.4 was released
- 5.15.3 sources were updated to include pyside2-tools, and 3.10 compatibility.
- We will replace 3.6.1 by 3.7.x to test on windows
- Adding new set of wheels to the download.qt.io snapshots
- Bugs & Features
- Research on reducing wheel sizes via compiling flags and other things.
- REG PYSIDE-1870 still in progress
- Fixing doc issues, and sphinx related changes.
- 1862 top level cmake build fixed
- 1868 crash on frame buffer (factory function)
- Adapting to changes in Qt/C++
- share_ptr handling refactoring to write independently of the platform
- wheel_tester issue on macos was fixed (scriptableapplication building with qmake only), it uses cmake and ninja now.
- Issue in pyside6 re-introduced an old issue: https://codereview.qt-project.org/c/pyside/pyside-setup/+/401438
- Continue with the work on Enums in PySide
- Improvements to the create wheel process
17. March 2022
- General
- Infra & Releases
- 6.2.4 release is ready to be out today.
- LTS 5.15.3 source code will be re-uploaded due to missing pyside2-tools
- Bugs & Features
- QmlExtension research for PySide projects
- Research for new ideas to improve PySide and Shiboken
- Stripping binaries a bit to reduce wheel size
- QtPropertyMap is not exposed
- Update the documentation (Signal/Slots, modules desc, and more)
- Replacing count() functions by size() internally.
- Improving the testing framework (special cases for apple silicon)
- PYSIDE-1843: Continue fixing failing tests for PyPy
- Research: Improvements to Qt Enums to rely on Python Enums
- Wheel splitting might need a small size increase on PyPi
10. March 2022
- General
- Position still open and many candidates in the pipeline.
- Infra & Releases
- Python CI version updates: 3.8 (linux) 3.7 (win) mac (3.9)
- PyPy issues on the CI being addressed, almost fully functional.
- 6.2.4 still waiting for Qt to be released.
- 5.15.3 source was released according to the KDE Free Qt Foundation
- Sadly, it doesn't include the patches to be Python 3.10 compatible
- Bugs & Features
- Research on new PySide features on-going, extra things, internals, and performance
- QtNfc module was added
- qFuzzyCompare issue was fixed
- Improvements on the shiboken containers parsing
- Compatibility with older python version and pypy tests
- QmlPropertyMap issue was fixed
- Still fixing tests for PyPy and new Qt builds
- New issues were found, but many were fixes. At the moment: 14 in Core, and 18 in all the modules
- New wheel structure being discussed: splitting the big wheels into at least two
3. March 2022
- General
- Infra & Releases
- 6.2.4 ready to be released, but qt was postponed for 15.03.2022
- PyPy CI builds are still being tested
- Next week there will be a CI maintenance break
- Python versions: 3.6 (linux + win) 3.9 (mac) | 3.10 test win
- 3.6 will be deprecated in 6.3, so we will change CI versions
- 3.8 (win), 3.10 (x), 3.7 (x)
- 6.3 branching still pending a few wheel modifications, and tags.
- Bug & Features
- PyPy build on windows presented a few challenges, and PyPy issues were found and reported.
- pyi generation also had issues due to a virtualenv + windows configurations being wrong, regarding the import orders.
- Enum refactoring is still in progress.
- container conversion research
- 1835 building 5.15 without limited api
- qml research on property values, and group properties will be fix as well
- research on new opportunities to improve PySide as a Python module
- re-working the wheel generation
24. February 2022
- General
- Infra & Releases
- Bug & Feature
- PYSIDE-1824 BT issue was fixed
- PYSIDE-1826 Image provider
- PYSIDE-1827 metatype slot pending (metacall handle improvements)
- Research on arguments conversion
- PYSIDE-1815 set modified parameter function (reddit example)
- PYSIDE-1809 signature modules issues.
- 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)
17. February 2022
- General
- New Documentation Engineer joined the Foundation Area.
- Infrastructure & Releases
- 3.10.0 configuration to be tested
- Research on improvements for the packages in download.qt.io
- Testing PyPy on the CI
- Python 3.6 will be deprecated in PySide 6.3 and removed in 6.4
- Bugs & Features
- Addressing compatibility with other deployment tools.
- QmlExtended QmlAttach will be available in 6.3
- PYSIDE-1812 cross build task custom clang options
- Research with C++20 to build pyside, and vector call new API in 3.9+
- PYSIDE-1765 PYSIDE-1763 __feature__ issues were fixed and working on providing support for property in constructors PYSIDE-1705 (a bit more difficult)
- PYSIDE-1815 QtNetworkAuth.QAbstractOAuth is missing modifyParametersFunction/setModifyParametersFunction
- PYSIDE-1821 Add support for std::byte
- PYSIDE-1809 wrong name type annotation for setProperty() and property()
10. February 2022
- General
- Bugs & Features
- PYSIDE-1806 CMake version check fixed
- PYSIDE-1804 Big endian test failure fixed
- Work in progress to add further QML decorators
- PYSIDE-1702 snake_case handling now does explicitly not touch user defined classes.
- PYSIDE-1758 Leave the underscore variable alone in QApplication
- PYSIDE-535 Remove a disambiguation patch no longer needed
- PYSIDE-1765 Widget subclass' minimumSizeHint not called with true_property
- Work in progress on: PYSIDE-1753 setStyleSheet available even if snake_case (complex)
03. February 2022
- General
- Infra & Releases
- 6.2.3 was released.
- Waiting for a scheduled CI break on Monday
- OSS packages for 5.15.3 source to be available soon.
- Bugs & Features
- Updating new Qt dev API (targeting 6.4)
- Adjusting a designer issue with a crash on views
- Improving examples: Old OpenGL API
- PYSIDE-1801 signal crash issue addressed
- PYSIDE-1804 QByteArray issue
- Improving QML: getting some issues with QML_ATTACHED
- Writing PyPy Documentation to explain motivation, changes, and usage.
- PyPy Compatibility:
- Got nice performance results with the working mandelbrot example
- Still working on some last tests that are not properly working.
- PYSIDE-1798 fixing enum issue
- Continue the work on the python-lsp issues on QtCreator
27. January 2022
- 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
- Infra & Releases
- 6.2.3 to be release soon.
- Bugs & Features
- Qt Creator LSP issue has an initial solution
- Curating a list of new features for Shiboken
- Working on an issue related to help() function on top of custom modules
- PYSIDE-1057 memory leak in progress
- Fixing examples to be compatible with PyPy and addressing corner cases
- QPainter was transformed into a context manager
- Building pyside with PyPy 3.8 is possible (3.9 is still in alpha)
- Working on a new tree example
- 1788 allow-thread issue with event functions
- Add threaded OpenGL example
- Add data()/constData() to OpaqueContainers
- Continue work on QML integration
20. January 2022
- General
- Infra & Releases
- 6.2.3 release next week
- Waiting a bit before branching 6.3
- Bugs & Features
- QtCreator Python LSP issue to be worked on
- Continue with the research related to new Shiboken features.
- Fixing general bugs from support
- Adapting new API for 6.3
- Improving QML story with custom types
- PyPy compatibility is focused on making some last examples to work, some issues with PyPy are being found as well.
13. January 2022
- Infra & Releases
- Maintenance in the CI, still a few things to be improved.
- New version of Gerrit is available as well.
- 5.15.8 Commercial LTS was released
- 5.15.2.1 to be release soon, special version with Python 3.10 support
- Bugs and Features
- PYSIDE-1755 Fixing issues with __code__ (related to slots)
- Improved documentation
- Looking for new features for Shiboken
- Working on improving the LSP story on QtCreator https://github.com/python-lsp/python-lsp-jsonrpc/issues/5
- PYSIDE-1764 suggestion on avoid the generation/wrapping of methods within objects.
- PYSIDE-1730 signal/method namespace crash, generated by old fixes on old bugs.
- Add capacity/reserve functions to OpaqueContainers
- 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
- General
- New bridge between Telegram <-> IRC
- Infra & Release
- Planning 5.15.2 new release (5.15.2.1) to include Python 3.10 support.
- 5.15.8 Commercial LTS to be release in the next couple of days.
- 6.2.3 planned for 2022.01.18
- Bugs & Features
- PYSIDE-1755 __code__ inspection on slot connection is buggy (breaks, e.g. MagicMock testing)
- Ported new examples QRegularExpression editor and MimeTypes
- Research to get new Shiboken features
- Updating translations
- In progress enabling qmllint in pyside project thanks to an external tool
- Addressing signal issues for different use-cases, multiple inheritance
- There is a relation with PyPy issues as well
- PYSIDE-1760 Racing condition without virtual environments (preloading setuptools)
- true_property issues were solved.
- continue work to have a more modular pyside installation with more wheels
- research on manylinux compatibility