1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
|
Qt for Python 6.4.0 is a minor release.
For more details, refer to the online documentation included in this
distribution. The documentation is also available online:
https://doc.qt.io/qtforpython/
Some of the changes listed in this file include issue tracking numbers
corresponding to tasks in the Qt Bug Tracker:
https://bugreports.qt.io/
Each of these identifiers can be entered in the bug tracker to obtain more
information about a particular change.
****************************************************************************
* PySide6 *
****************************************************************************
- Modules QtPdf, QtPdfWidgets and QtSpatialAudio have been added.
- [PYSIDE-353] PySide builds with PyPy 3.9.
- [PYSIDE-769] Examples that demonstrate usage of Trio async package with Qt
have been added.
- [PYSIDE-841] Examples surface_numpy, minimal surface (QtDataVisualization),
dropsite, dirview, Google suggest license wizard, QtBluetooth
heart rate server and client, QML window, QML Plugins,
analog clock (QtGui), digital clock (QtWidgets), spreadsheet,
terminal (QtSerialPort) and character map, have been added.
- [PYSIDE-962] Errors message about test-configuring projects
with cmake have been improved.
- [PYSIDE-1019] The feature module has been improved by a reset function.
- [PYSIDE-1106] The documentation build process has been improved; it no
longer requires a complete PySide6 build.
- [PYSIDE-1312] Support for QFormLayout::TakeRowResult has been added.
- [PYSIDE-1612] A tool for deployment, pyside6-deploy, has been added.
- [PYSIDE-1721] The C++ to Python code snippet translation has been
much improved.
- [PYSIDE-1731] PyEnum: Fix the old Enums to produce correct .pyi files,
again.
- [PYSIDE-1735] The new forgiveness mode of Python enums allows to use old
enum code, most of the time.
- [PYSIDE-1735] PyEnum: Most IntEnum/IntFlag classes were modified to Enum/Flag
- [PYSIDE-1735] PyEnum: QKeyCombination was improved to also work after the change
from IntEnum to Enum.
- [PYSIDE-1735] PyEnum can now be fully configured by flags at startup for internal
use. The default is unchanged and enables everything as before.
- [PYSIDE-1797] Link errors about PyIndex_Check() when using Limited_API have
been fixed.
- [PYSIDE-1860] Modules are now optimized for size.
- [PYSIDE-1878] The tool pyside6-qml has been added.
- [PYSIDE-1880] A numpy overload for QSurfaceDataProxy.resetArray() has
been added.
- [PYSIDE-1883] Test::qWait()/qSleep() have been added.
- [PYSIDE-1887] Overriding QGraphicsItem::itemChange() has been fixed.
- [PYSIDE-1887] Specify meta type registration for some class hierarchies
- [PYSIDE-1893] Error "Internal C++ object already deleted." when using
QWidget.nativeParentWidget() has been fixed.
- [PYSIDE-1895] '\0' can now be embedded in 1 byte strings.
- [PYSIDE-1898] Q_ARG/Q_RETURN_ARG have been implemented for
QMetaObject.invokeMethod() with arguments.
- [PYSIDE-1898] qMetaTypeFromPyType() has been fixed for for wrapped types.
- [PYSIDE-1898] QMetaType: a constructor taking a PyTypeObject has been added.
- [PYSIDE-1899] Class QLoggingCategory and functions qCDebug(), qCInfo(),
qCWarning() and qCCritical() has been added.
- [PYSIDE-1859] The Microsoft Windows handle types HBITMAP, HICON and HRGN
have been added.
- [PYSIDE-1906] All qHash() functions are now exposed to Python.
- [PYSIDE-1913] The bool cast for QByteArray has been changed to return
False for empty byte arrays to match the expected behavior.
- [PYSIDE-1924] Numpy support is now enabled by default.
- [PYSIDE-1945] pyside6-qtpy2cpp.py, a Qt-specific, simple tool for
converting Python code to C++ has been added.
- [PYSIDE-1957] The Qt5Compat QML imports have been added
(QtGraphicalEffects).
- [PYSIDE-1901] The broken string conversion for non-compact
strings when using Limited API has been fixed.
- [PYSIDE-1905] Overloads with more parameters have been added to
QDBusAbstractInterface::call().
- [PYSIDE-1906] qHash() functions are now automatically exposed as tp_hash.
- [PYSIDE-1909] Type discovery for QStyleOption-derived classes
has been fixed.
- [PYSIDE-1911] A __repr__ function for PySideSignalInstance has been added.
- [PYSIDE-1912] QWebEngineCookieStore.setCookieFilter() and
QtWebEngineProfile.setNotificationPresenter() have been added.
- [PYSIDE-1919] A GIL state crash when collecting QObjects
with signals occurring in Python 3.10 has been fixed.
- [PYSIDE-1921] QQmlContext.setContextProperties() has been added.
- [PYSIDE-1930] Returning enums from QAbstractListModel.data() has been fixed.
- [PYSIDE-1934] Type hinting for QListWidget.selected_indexes() has been
fixed.
- [PYSIDE-1939] A crash in QTextBlock.layout() has been fixed.
- [PYSIDE-1947] QAudioBuffer.data()/constData() has been added.
- [PYSIDE-1957] Add Qt5Compat.GraphicalEffects
- [PYSIDE-1960] Support for Python 3.11 has been added.
- [PYSIDE-1968] Type hinting for QPixmap.save() has been fixed.
- [PYSIDE-1974] Returning flags from QAbstractTableModel and other
models has been fixed.
- [PYSIDE-1978] Signal
QAbstractItemModel::layoutAboutToBeChanged(QList<QPersistentModelIndex>)
has been fixed.
- [PYSIDE-1984] The snippets of the model view tutorials have been fixed.
- [PYSIDE-1986] Setting properties by named arguments for Q[VH]BoxLayout
has been fixed.
- [PYSIDE-2000] The VS Code debugging tutorial for Windows has been updated.
- [PYSIDE-2004] The tools qmlformat and qmlls have been added.
- [PYSIDE-2005] A documentation section for cmake-only build has been added.
- [PYSIDE-2017] The functions glGet(Boolean|Double|Float|Integer)v()
and glGet(Boolean|Double|Float|Integer)i_v() have been added.
- [PYSIDE-2019] Issues with QtDataVisualization's QValue3DAxisFormatter
have been fixed.
- [PYSIDE-2021] The index operator of QKeySequence now returns QKeyCombination
when the new PyEnums are used.
- [PYSIDE-2025] Setters for the the lists in
QtDataVisualization's QValue3DAxisFormatter
have been fixed added.
- [PYSIDE-2033] A logging category "qt.pyside.libpyside" with useful warnings
has been added to libpyside.
- [PYSIDE-2034] Blocking threads in static functions of QMessageBox
have been fixed.
- [PYSIDE-2038] Documentation: Improve module pages title
- [PYSIDE-2039] A regression bug when setting override cursors without context
manager has been fixed.
- [PYSIDE-2048] A TypeError when comparing Qt.Flags and objects has been
fixed.
- [PYSIDE-2059] Function qt_set_sequence_auto_mnemonic() has been added to
QtGui.
- [PYSIDE-2060] Cross-compilation to Raspberry Pi 4 has been fixed.
****************************************************************************
* Shiboken6 *
****************************************************************************
- When using C++ 20, the spaceship comparison operator is
now recognized.
- The signatures for function modifications now also allow for
specifying unresolved types.
- [PYSIDE-454] Support for std::unique_ptr pointer has been added.
- [PYSIDE-1735] Python Enums use the newest implementation for Python (3.10)
for compatibility and speed.
- [PYSIDE-1735] The initialization of the signature module was moved into
Shiboken and rearranged. This was necessary for the new
backward-compatible PyEnum module.
- [PYSIDE-1735] The new Python enums are made as compatible to the old ones
as possible. It is again allowed to use Qt.Alignment() instead
of Qt.AlignmentFlag(0), and a default of 0 is always allowed.
- [PYSIDE-1735] Most former IntEnum/IntFlag are replaced by pure Enum/Flag
classes in a generally compatible way to other implementations.
- [PYSIDE-1735] Shiboken now generates warnings about using deprecated
enumerations and deprecated enumeration values.
- [PYSIDE-1764] It is now possible to specify a list of functions to be
generated instead of removing undesired functions.
- [PYSIDE-1932] The Q_ENUM helper functions qt_getEnumMetaObject() and
qt_getEnumName() are now automatically rejected when
PySide extensions are enabled.
- [PYSIDE-1939] An type system attribute for restricting the parent
ownership heuristics to relevant classes has been introduced.
- [PYSIDE-454] The types "handle" and "value-handle" have been added
to the smart pointers typesystem element.
- [PYSIDE-661] Generated error messages habe been moved into the library,
significantly reducing the module size.
- [PYSIDE-1735] Propagate C++ enum deprecation
- [PYSIDE-1735] shiboken 6: Generate warnings about deprecated enum/values
- [PYSIDE-1812] Command line options for compiler, path and platform
have been added.
- [PYSIDE-1887] Meta type registration is now configureable in the type
system.
- [PYSIDE-1905] A way to specify free functions with complete custom
implementations has been added (bypassing the generated
argument conversion and overload decisor code).
- [PYSIDE-1909] A function to get the type name of a polymorphic class
can now be specified.
- [PYSIDE-1909] Type discovery for classes that with an id expression
has been fixed.
- [PYSIDE-1933] Converters for all smart pointee base classes are now
generated.
- [PYSIDE-1939] Heuristics for for parent ownership can now be specified
by an attribute.
- [PYSIDE-1995] Exceptions are now propagated through return value ownership
modifications.
- [PYSIDE-2017] The modified pyi return types of functions are now used
for signatures. Signatures also no longer contain
removed arguments.
- [PYSIDE-2025] Documentation injection for added functions with
parameter names has been fixed.
- [PYSIDE-2040] The full path of libdir is now used in the pkg-config file.
- [PYSIDE-2046] A crash caused by invalid return types of added
functions has been fixed.
|