| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
|
|
| |
- nullptr
- narrowing integer conversions
- else after return
- Use auto
- Missing move special functions
Pick-to: 6.6 6.5
Change-Id: Ib872481a46c8bb17592cdc1778ab3c4d9598c753
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
- Use nested namespaces instead repetitive namespace declaration
- Remove anonymous namespaces that contain only static functions.
"static" is sufficient here, the anonymous namespace only increases
compilation time.
Pick-to: 6.6 6.5
Change-Id: I6cd1b63da79eaf40a1b7ae031def97fa22903e99
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
QAsyncioFuture.cancel() and QAsyncioTask.cancel() should both return a
bool.
Pick-to: 6.6
Task-number: PYSIDE-769
Change-Id: I2b507ad5c44ba9478bdf8a53c0cd5464028d3384
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Wrap a QAsyncioTask's step execution with calls to asyncio._enter_task()
and asyncio._leave_task() so that asyncio.current_task() will work.
Pick-to: 6.6
Task-number: PYSIDE-769
Change-Id: I7235c9ab2b8d68b0059b82a366909dc25ea6d60f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QtCore/qdatastream_test.py
Shiboken::Buffer::getPointer() asserts with in
Py_BEGIN_ALLOW_THREADS/Py_END_ALLOW_THREADS since some nested
function cannot retrieve the thread state.
Amends 940cad174f891a4b04af9bcc61aed1c8e8c6d4ae.
Pick-to: 6.6
Task-number: PYSIDE-2442
Change-Id: I27ca9fc485cf81fb47747db7cc40623a9f7fffec
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
| |
Pick-to: 6.5
Task-number: PYSIDE-2463
Change-Id: I5a1fba3d7d86b44f7fb35f9ed263481a4b850408
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Add a test for the asyncio queue for consumer/producer scenarios.
Additionally, fix a few bugs exposed by this test through the increased
code coverage.
Task-number: PYSIDE-769
Change-Id: I18e3be6d059b758868a7598b58704db216bcdcc8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
| |
loop.time() needs to return the time in seconds as a float, not in
milliseconds as an int.
Task-number: PYSIDE-769
Change-Id: Iac123132b49d3954abda8545d0830f1837a27c48
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- The macOS version in the wheel name was picked up from Python's
build configuration instead of Qt.
- The solution involves writing the cmake variable
QT_DARWIN_MIN_DEPLOYMENT_TARGET into _config.py, and create_wheels.py
loads this _config.py to fetch the python variable storing it.
Pick-to: 6.5
Fixes: PYSIDE-2429
Change-Id: I85003174b83ba937c8b3e1498b728f13d960284e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Only relevant for platforms like Android, where QT_FEATURE_permissions
is turned ON.
- Used a callback from the wrapper code to establish a call back to the
passed Python functor.
- The passed functor can either have no parameters, or have a
QPermission object as parameter. In the latter case, the QPermission
object will store the result of requestPermission(). This is
similar to the Qt API.
Pick-to: 6.5
Task-number: PYSIDE-1612
Change-Id: I0de8d1c67e69590d2a63ee51c61dfb3a8b76a43f
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- QPermission is an opaque wrapper around typed Permissions.
The conversion from specific typed Permission to QPermission for
usage within API functions like checkPermission(QPermission) involved
implicit conversion from the typed Permission to QPermission through
a templated constructor. Therefore, Shiboken needs to handle each
of the conversions explicitly.
- Only relevant for platforms like Android, where QT_FEATURE_permissions
is turned ON.
Pick-to: 6.5
Task-number: PYSIDE-1612
Change-Id: I097bf6f24a7ac79e9a62455dab9f3c8bdf6b8246
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
nb_zero is Python 2 terminology.
Rename the related functions and use new options.
[ChangeLog][shiboken6] The command line options
--use-operator-bool-as-nb_nonzero and --use-isnull-as-nb_nonzero have
been replaced by --use-operator-bool-as-nb-bool and
--use-isnull-as-nb-bool, respectivily to match Python 3 terminology.
The old options continue to work.
Change-Id: I1201f4b15e021c8df96740149c20fa1478c12ae1
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- patchelf was used only for setting RPATH
- This approach uses CMake for setting RPATH instead of using a
post processing hack like patchelf
- Additionally, CMAKE_INSTALL_RPATH_USE_LINK_PATH which was
passed explicitly is removed
- For shiboken6 generator, removal of patchelf dependency leads to
having local paths in the binary because of appending local path to
linked library files when installed. With this patch, similar to
Windows, for Unix platforms shiboken6 generator used for building
PySide6 sets the path to the dependencies using a shell script by
appending to the `LD_LIBRARY_PATH` variable
Task-number: PYSIDE-2410
Change-Id: Ibee03ce7d8085a94b343664295b3ab93b76317c2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
|
|
|
|
|
|
|
| |
New modules should always be checked for PyPy compatibility.
Task-number: PYSIDE-535
Change-Id: I244dad65d1a10d3ebbb0a9cb4bb0e54e458937fe
Pick-to: 6.5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Accept only lists and tuples of strings as argument
names, preventing crashes when passing numbers or strings
being split into characters by the sequence check.
As a drive-by change PySideSignalData::signalArguments from
QByteArrayList* to QByteArrayList which eases error handling.
As it is a shared class anyways, the overhead is negligible.
Task-number: PYSIDE-2368
Change-Id: I460b5d7297cf66c6ab5566a99c998527daf12eed
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The slot data required for MetaObjectBuilder were stored in a PyList
set as an attribute on a method. This required concatenating return
type and signature, converting the resulting string to CPython in the
@Slot code and converting it back to QByteArray in MetaObjectBuilder.
To simplify this, introduce a small C++ struct storing the QByteArrays
and store a list of them as a PyCapsule (encapsulating a void *ptr)
which is used as the attribute value.
Task-number: PYSIDE-748
Change-Id: I7f4075f5e828fe543d01e5dfbdc7087905cd004f
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
| |
Pick-to: 6.5 6.2
Fixes: PYSIDE-2444
Change-Id: Ic0b12f109452e7b395a1cd24402984a41875af03
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Some users of QIODevice read functions (read, readLine and peek) might
want to use fixed buffers to avoid reallocation, e.g., asyncio's
buffered protocols. This adds overloads of said read functions that take
an input buffer (as a bytearray) and return the number of read bytes.
Pick-to: 6.5
Change-Id: I0c3678d3a87811029278c5ae8f829eef0432099a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
| |
Task-number: PYSIDE-748
Change-Id: Ieeeb2c1c392706a5c74bf29ff67ff4ddd8c4feaa
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
writeRawData() was historically implemented to take a string.
Fix the signature. Add an overload for PyBuffer/bytes.
Fix the return type of readRawData() to be bytes.
Fixes: PYSIDE-2442
Change-Id: I1684afd5aae2f8d118fa2fac87d916c23bd4a59e
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Complement the operators std::ostream in libshiboken which are
very verbose, outputting all flags and refcounts, by simple
operators for QDebug which basically output a simple type: value.
Change-Id: Icf99c55cd64d63eb9d2e47b40fdc6df88e9119e3
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
|
|
|
|
|
| |
Pick-to: 6.5 6.2
Fixes: PYSIDE-2368
Change-Id: I8e52e7d5787795ec336683134c098b37e085aa01
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
|
| |
Task-number: PYSIDE-287
Change-Id: I9308ec96c607097f91daff78b5197c2d1045cff6
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
| |
Task-number: PYSIDE-463
Task-number: PYSIDE-2436
Pick-to: 6.5 6.2
Change-Id: Ida83a0b4207ab499cfaaa2090f8aabbc6246bff5
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- QSystemLocale for macOS relies on CFBundleAllowMixedLocalizations/
CFBundleLocalizations in the Info.plist file for the C++
Application bundle, as seen from
1d3ae5f0e98f252214d20ce8561533891311a71f. Python being an
interpreted language, there is no application bundle unless the
application is deployed. As such a Python application in macOS
relies on the Info.plist file of the Python interepreter. This
Info.plist file is a read-only file and hence it is not
possible/recommended to patch the Info.plist file of the Python
interpreter at runtime.
The issue has been raised upstream in CPython and can be tracked
here: https://github.com/python/cpython/issues/108269
- A possible solution/hack is therefore to use to POSIX environment
variables for macOS, for Qt for Python. This is also what the Python
locale module does.
See: https://github.com/python/cpython/blob/3.11/Lib/locale.py#L534
For other Unix systems, QLocale::system() uses the POSIX environment
variables, just like Python's locale module.
- For Windows and Linux, QSystem::locale() remains unchanged.
- The idea here is to obtain the system locale from the Python locale
module, and use the result to initialize and return a QLocale
object.
- As an extra, for qrunnable_create fix the typo - snipped to
snippet.
Fixes: PYSIDE-2419
Pick-to: 6.5 6.2
Change-Id: I12b16e824ddba21d1ebcd0695262c1dc0cc61eb2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Initialize missing members of QQmlPrivate::RegisterSingletonType.
Pick-to: 6.5 6.2
Fixes: PYSIDE-2433
Change-Id: I441951e79471707129d42e21d27c4de352b0d703
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
| |
Pick-to: 6.5
Fixes: PYSIDE-2422
Change-Id: Id07b891083e11577e21c2ac2a429ef453328830e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Narrow the test condition for pre-Jira bug 1019 to check whether the
receiver method is not declared in the same class in which the slot
returned by the MetaObject search is declared.
Fixes: PYSIDE-2418
Pick-to: 6.5
Change-Id: I01591a4e948daa19caf75eaa8f803acb17b66550
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Add explanatory comments; fix up the debug operator of
GetReceiverResult.
Task-number: PYSIDE-2418
Pick-to: 6.5
Change-Id: I77b9ad2d38a5bba1b78ffaf8835f20fbb93636d0
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The currently implementation was using an inherited toLong
function, not returning the Tuple[int, bool] that the docs
described. This adds a modification to follow the same
idea of all the other to*() methods.
Additionally, we remove all the to*() methods that
accept a QStringView, due to behaving the same with the QString
variations.
[ChangeLog][pyside6] QLocale.toLong now properly returns a (int, bool) rather than only int
Fixes: PYSIDE-2226
Change-Id: I5634e4010982e115c8208fdb9b56cfc57960358b
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
|
|
| |
Change-Id: I2683d0e95bdb6fbf22974b117562bcc6edae8d3d
Pick-to: 6.5
Fixes: PYSIDE-2405
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
|
|
| |
Fixes: PYSIDE-2415
Pick-to: 6.5 6.2
Change-Id: I2b19b20b1dec584667fa82abe6be2901b9580f96
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
|
| |
|
|
|
|
| |
Pick-to: 6.5
Change-Id: Ie12b1dbbc2dfa07de29e49ab83dc80d2a4961fe1
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Inject Documentation and fix the snippet to indicate the QRect
return.
Task-number: PYSIDE-2411
Pick-to: 6.5
Change-Id: Id52f4c0a875301c6eac4a1d33034a04fa652e0d5
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
|
| |
|
|
|
|
|
|
|
|
| |
Move the sources/pyside6/doc/README.md to a new page of
the Developer Documentation and prepend some information
about fixing snippets/texts.
Pick-to: 6.5
Change-Id: If80eaa34cce1c98f46dcd3102670ec61dd0ffbb0
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an option to be able to include examples found in the Qt / qtdoc
repository.
The build_rst_docs target also uses it if --qt-src-dir is given.
It is then possible to include pure QML C++ examples
from the qtdoc and other repositories.
Task-number: PYSIDE-2206
Change-Id: I1b28d5ba5a134101a21fa936f87264a68bada71e
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
| |
Only output warnings when run from Qt Designer as determined
by the application name.
Pick-to: 6.5
Change-Id: I870ca75242bf70bdf53c51fdeb0f70067455e268
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io>
|
| |
|
|
|
|
|
|
|
| |
uri is str.
Pick-to: 6.5
Fixes: PYSIDE-2272
Change-Id: I1e10ef65bf223b08b035c24f44bac83f0450ad14
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Windows Getting Started doc page mentions how to build a debug
version of PySide6, however it omits that you need to pass the `--debug`
option to `python setup.py build`.
Mention using `--debug` when building debug.
Fixes: PYSIDE-2401
Pick-to: 6.5
Change-Id: I9d5eb1a5e44409f7984f14c5cbf9611efafaf768
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The current stubs specify the type of the required argument,
for example:
w = QWidget()
help(w.setParent)
reports:
setParent(self, parent: PySide6.QtWidgets.QWidget) -> None
which makes some IDEs to complain when passing None, behavior
that it's accepted as well.
This change adds an Optional to the parameter.
Pick-to: 6.5
Fixes: PYSIDE-2235
Change-Id: I57b54f47aee6783b1b7027981b5d282798d57ad4
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
There was a comment about a clash of macro DELETE in Windows
headers with some enumeration that was apparently renamed.
Pick-to: 6.5
Fixes: PYSIDE-2402
Change-Id: I32d6da712a3388059cbbc0181f565ebfb82bd45c
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I155f0297a1f6d31dc84472c8c7f99e2842da33e6
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
| |
Pick-to: 6.5
Change-Id: I261ec7ec933e21658d357ad1ffbeb4de5b84d13f
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
| |
It returns a string.
Pick-to: 6.5
Fixes: PYSIDE-2387
Change-Id: Ibb814acf9535a2529fb022bfe07dcc28f75b7c02
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
asyncio is an established library for Python applications with
concurrency and asynchronous I/O, and the de facto standard that
multiple other async frameworks build upon. Like Qt, it is based on an
event loop, so to this end, it offers an extensive API to implement
custom event loops that applications using asyncio can then leverage.
Task-number: PYSIDE-769
Change-Id: I3daf5d631e2fa0d44fd8c3c272ac5cce96f58653
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Allow-thread must be done in code for add-function.
Fixes:
typesystem_widgets_common.xml:537:164: Warning: 1 attributes(s) unused on <add-function>: allow-thread="yes"
Amends 65e48138e166c3575dfe23dfec259e112302fd28.
Task-number: PYSIDE-2384
Change-Id: Idf906c27fb3caa2361cff71ccca5f5385881ae40
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
| |
Fixes: PYSIDE-2384
Change-Id: Iad7a26385b40267308c287b8f6a4915972468574
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
| |
Task-number: PYSIDE-2384
Change-Id: I38cd611439a882e65f9f3bc6ca47dedd0a4fc66c
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Incorrectly, the pyi file described that it was possible to pass a:
Union[PySide6.QtGui.QPixmap, PySide6.QtGui.QImage, str]
for setPixmap, and:
Union[PySide6.QtGui.QImage, str]
for setImage.
This uses the typesystem entry to restrict the setPixmap
to accept a QPixmap and only a QImage for setImage.
Additionally, this enable a PyPathLike signature, so users
can pass 'str', 'bytes', 'pathlib.Path' as well, so the accepted
arguments are:
setImage(...)
- PySide6.QtGui.QImage
- Union[str, bytes, os.PathLike]
setPixmap(...):
- PySide6.QtGui.QPixmap
- Union[str, bytes, os.PathLike]
Pick-to: 6.5
Fixes: PYSIDE-2395
Change-Id: I521980dbc781a72e54f49fc84af5349733385133
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|
| |
|
|
|
|
|
|
|
|
|
| |
Disable the deprecation warning for the moment. A better solution
needs to be found in Qt 7.
Pick-to: 6.5
Fixes: PYSIDE-2394
Task-number: QTBUG-91766
Change-Id: I6bf47c631b27a3378ab1d0c17d2551671a39cf93
Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
|