| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
Add more checks for QML loading. Wait until the window is exposed
until starting the safety timer and increase its interval.
Task-number: PYSIDE-431
Change-Id: I6225f2357d9576be15c6134d26982939698a9984
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Q*Application had PySequence as Parameter, although
only QStringList is accepted. That resulted in an implausible error
message when a list of, say, Integers was given.
This patch
- replaces PySequence by QStringList (one more tuple layer),
- fixes QCoreApplication to give the same kind of error messages,
- renames the shiboken function sequenceToArgcArgv to listToArgcArgv
and changes it to only allow list descendents.
We also changed signature.typing in one line to display List[str] correctly.
I think this belongs more to PySide-331, a fixed qApp.
Task-number: PYSIDE-510
Task-number: PYSIDE-331
Change-Id: Ib256c6a2db05a3db826454e1bf1b4729d59a240b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
This is totally irrelevant and a tiny optimization that is really not needed.
Do what you want.
Task-number: PYSIDE-510
Change-Id: I5d6d2f5f94130d4b03b4d70525b35139e82b9f5e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
| |
This patch adds a type to MSVC.
Task-number: PYSIDE-510
Change-Id: I3290c91cd6f2937bddf8ec1f673b4a672bc49db3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
This patch reduces the string size a bit to meet the MSVC restriction
to 16k only. This limit is reached by QtGui/qopenglfunctions_wrapper.cpp .
Task-number: PYSIDE-510
Change-Id: Ibb4a9103775cb308a0f39b3375c4948da6016189
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
This patch covers macOS and Ubuntu (which actually had one addition).
No idea how oftem we must iterate ;-)
Task-number: PYSIDE-510
Change-Id: I950c57c2d225b289eafc46e7f1758338b4d62838
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
| |
Some small oversight is now an error after the last clang update.
Change-Id: I61b118d772cacdf7950e3b43e76cc4351c3062f3
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
| |
There was some glitch that made a few sentences incomplete.
Task-number: PYSIDE-510
Change-Id: Idd11c7a0d9f31aab4ab80e6fd6002f2320695ad5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is likely that with Qt 5.9 we get new signature text that is not recognized.
This becomes a problem because COIN takes much time.
This patch does not stop on the first parser error, but collects
all warnings and raises an error at the end.
Task-number: PYSIDE-510
Change-Id: I898e0a7a59e8313c115d7ce8160908bf85d4140c
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The mapping had been reloading on demand. This is overkill,
since we only want to initialize the new constants.
This patch replaces reloading by explicit init functions. This
simplifies the parser and even the loader, because sys.path
is no longer relevant and no context manager is needed for a
single sys.path patch.
Task-number: PYSIDE-510
Change-Id: I9e3a45cb10570211183952bd517abb0084b94f47
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The signature module was turned into a package under
'PySide2/support/signature'. The package is completely isolated
so that nothing is leaking into the normal import machinery.
The package is also not initialized unless a __signature__ attribute
is accessed. The only change to Python during a PySide run is
the existence of the __signature__ attribute.
As a side effect, all tests run at the same speed as before
this extension.
The module does not actively import PySide modules. Instead,
it inspects sys.modules and reloads its mapping.py if needed.
Example usage:
>>> PySide2.QtWidgets.QGraphicsAnchorLayout.addAnchors.__signature__
>>> PySide2.QtWidgets.QGraphicsAnchorLayout.__signature__
The module has been thoroughly tested on macOS.
I consider this ready.
Task-number: PYSIDE-510
Change-Id: Ibb231a7fbb4ccc1a7249df55e3881a4e21a19c0d
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
| |
Task-number: PYSIDE-552
Change-Id: Iff8dd7247bfec94be0cf4f5cbcfbfca1eb44d209
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The variable used for the python site-packages is inconsistent.
Instead of "SITE_PACKAGE", we use "PYTHON_SITE_PACKAGES"
everywhere.
Task-number: PYSIDE-563
Change-Id: I4d2d49f20f5a0a13439bc7b8c79ab318cd831cb9
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Julien Schueller <schueller@phimeca.com>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This consists of a few things:
- Remove the detection and usage of ALTERNATIVE_QT_INCLUDE_DIR in
setup.py, because CMake takes care of finding the correct Qt
include headers.
- Add detection of framework / non-framework includes in the CMake
rules, instead of in the setup.py script.
- Don't pass QT_QMAKE_EXECUTABLE from setup.py to CMake, because
it is not being used. It was previously used for detecting Qt4
via the CMake FindQt4.cmake file. Now it is done by
find_package() which detects qmake from the environment.
- Get rid of the old "/Library/Frameworks" QT_INCLUDE_DIR, which
was where the official Qt 4.8.x packages installed Qt.
- Deprecate usage of ALTERNATIVE_QT_INCLUDE_DIR. Now it is only
used if CMake fails to detect the proper include headers of Qt5
(which should not happen).
Change-Id: I829b92bc0d40ae7eb418be27c735fc095e557820
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change adds four new properties to the top-level PySide2 package:
__build_date__ - the date when the package was built in iso8601 format
__build_commit_date__ - the date of the top-level commit used to
build the package
__build_commit_hash__ - the SHA1 hash of the top-level commit
__build_commit_hash_described__ - the result of 'git describe commmit'
If git is not found on the system when the build is done, the last
three properties will not be present.
Note that all this info is computed at cmake configuration time, which
means that currently the properties will not be updated unless the
CMakeLists.txt file is touched, or a full reconfiguration is done.
If PySide2 is built using the setup.py script, the cmake
reconfiguration is always done.
Task-number: PYSIDE-557
Change-Id: I7db67fa34973e7976b21e3d1d36237577b3c6e32
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
| |
Task-number: PYSIDE-487
Change-Id: I9a2c19c6b8415e3f608531b315a6841eb3de55f5
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Add a timer periodically checking for the dialog to appear
and close it via reject() instead of using a hardcoded interval
to quit the application, which can cause crashes.
Task-number: PYSIDE-431
Change-Id: I35db1db5f6865d196f8565c7bd034de2162bf4ff
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
When building the docs target in PySide2, if the sphinx command is not
successfully found, the build stops with an error. Instead of
cancelling the build, just print a warning message just like it is
done in the shiboken project file.
Change-Id: I00ec7c306db5140f65973e622f4b1744cfd0d26e
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
On Windows, the WASAPI audio plugin is used, which requires
CoInitialize() and hence QGuiApplication.
Change-Id: Iad045224b6153a08234ff69e69eb8d1986654b43
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
| |
Add helper for testing with QGuiApplication.
Change-Id: Ib56b0b118a5fe8e01c822c859419784921418913
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Use the same imp.get_suffixes() mechanism as on Unix, to determine
the suffix part of module extension files.
This fixes debug builds to work on Windows.
Note that the whole build stack has to use the same configuration,
no mixing is allowed on Windows.
For release build you need: python.exe + setup.py without --debug
flag + release build of Qt5.
For debug build you need: python_d.exe + setup.py with --debug
flag + debug build of Qt5.
Change-Id: I6188c859b5757d11e87d6a9e32b9ba558f7f609e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change decouples the naming of general shared libraries, python
module extensions, and cmake configuration files. All of them are now
computed depending on the python version and python build
configuration, and can also be manually set via CMake variables.
The module extensions names now use the most detailed 'import' prefix,
which usually informs whether a debug or release python was used, or
the Python ABI flags (for Python >= 3.2).
When a debug Python interpreter is used for building PySide2, the
preprocessor define Py_Debug is now correctly propagated to PySide2
sources, which fixes previous crashes in debug builds.
This affects only Linux and macOS builds. There is a subsequent change
for making it work for Windows builds.
All in all, this now allows proper mixing of debug / release versions
of the Python interpreter with debug / release versions of PySide2 on
Linux and macOS.
Task-number: PYSIDE-508
Change-Id: I88a05c3ada0fb32c7c29bdb86d7a2c15acc963b8
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Some time ago, I added the test file that makes sure that all modules can
load. This file needed to repeat for each module without any other tests.
Now we have a real "PySide2.__all__" variable, and we can remove these
tests in favor of one simple test.
Change-Id: I96d91e749c134f30afc30751abb874ede2639d10
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Now that we have the cmake variable "all_module_shortnames", it is very
straightforward to produce a sensible __all__ variable in the PySide2 module.
This is necessary to write an exhaustive test script for the new signature feature.
Change-Id: Ib43d647593f0b1b848b9d17ff27fd47cfb5832cb
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
| |
This is probably the reason for the build failures in the CI because
the filesystem there is case sensitive.
Change-Id: I9f3cafbc8f1d29a0974229d466fbd22ec2b91491
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
| |
Change-Id: I91a1c87e6153a65a6e4088a41fbe0f696c2dd058
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Even though the final library name is libpyside, the actual target
that generates that file is called pyside2, as indicated by the
project(pyside2) command in the CMakeLists.txt file.
Also set the CMake policy of not ignoring incorrect dependencies.
Change-Id: Iba65dfd5fe7e34e7557c756a838017fe48f0ffd5
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
The printing classes were moved to QtPrintSupport module, and the
remaining classes are always present in their respective modules.
Change-Id: I2e0ec061efc28c89f0476829541a7d2d3f01877f
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
Also include the optional QtNetwork sources, so that QSsl* class
bindings are properly generated.
Thus the optional QtWidgets and QtNetwork classes should be picked up.
Change-Id: Id4d21dc577f2b551dce83999be76cdfd9d0b88d2
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PySide itself built fine after the additional includes were added for inheritance.
But when a smaller project is built, suddenly header files are not found,
because the inherited names are not expected by the deployment.
Therefore, we do no longer add more includes, but insert recursive headers
for the few relevant cases. So the includes become a little longer, but the
names of the include files are those as before the enhanced inheritance.
Task-number: PYSIDE-500
Change-Id: Iab456307a3c2365dfe1964dbe222b7d0efac7878
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
autodecref.h(110): warning C4522: 'Shiboken::AutoDecRef': multiple assignment operators specified
autodecref.h(78): warning C4800: 'PyObject *const ': forcing value to bool 'true' or 'false' (performance warning)
conversions.h(282): warning C4800: 'long': forcing value to bool 'true' or 'false' (performance warning)
basewrapper.cpp(625): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
basewrapper.cpp(654): warning C4800: 'SpecialCastFunction': forcing value to bool 'true' or 'false' (performance warning)
basewrapper.cpp(1014): warning C4800: 'Shiboken::ParentInfo *': forcing value to bool 'true' or 'false' (performance warning)
basewrapper.cpp(1044): warning C4800: 'void *': forcing value to bool 'true' or 'false' (performance warning)
helper.cpp(56): warning C4244: 'initializing': conversion from 'Py_ssize_t' to 'int', possible loss of data
shibokenbuffer.cpp(46): warning C4800: 'int': forcing value to bool 'true' or 'false' (performance warning)
Change-Id: If1517fde8e7670f258a56f6d845a66ebb3d82141
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The test was failing since the method
TestView::setItemDelegate(QAbstractItemDelegate *) was rejected
due to QAbstractItemDelegate being unknown.
Fix by adding the dependency to QtWidgets.
Task-number: PYSIDE-431
Change-Id: I65c3690eccfdd55b310f45d65a2b0d8c32bedd36
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
| |
They contain outdated links and are no longer required after the
repository merge.
Change-Id: I6867435bcd1bbe53308dea1d9d8c1ba1a0fc0584
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
| |
Task-number: PYSIDE-431
Change-Id: I35594dbf7dc6430ab5d0a2d235303f2bb7bd3677
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
| |
When mixing Python and C++, Qt needs to be used with 'CONFIG += no_keywords'
to suppress the 'slots' macro definition, which clashes with a Python header.
Task-number: PYSIDE-526
Change-Id: I4feeae2de21db712b4de6653e243d556623436a1
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
| |
Change-Id: I781418f8747d51a0d329c0562e076600989b3768
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|\ \ |
|
| |
| |
| |
| |
| |
| | |
in preparation for a subtree merge.
this should not be necessary to do in a separate commit, but git is a
tad stupid about following history correctly without it.
|
|
|
|
|
|
| |
in preparation for a subtree merge.
this should not be necessary to do in a separate commit, but git is a
tad stupid about following history correctly without it.
|
|
|
|
| |
to be replaced by a subtree merge.
|
|
|
|
|
|
|
| |
From time to time, it is good to update the master project.
Change-Id: I50c45caf7c37ebb4ea865b4e4f5896e5cd8915fd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
From time to time, submodules need to be updated.
Actually, I would even like to update the master module after every submodule
checkin, but this seems to be not easy to do all the time.
Change-Id: I52f266c58086186df05ddcc85085f35e2e28ead7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
| |
Testrunner has even more variable texts to recognize.
We change the regex slightly so that it always succeeds.
Change-Id: Iac156592aac48afb5aea522540ae63c92ca2572a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The recent change that made use of framework headers on OS/X did
not work with homebrew Qt, and it didn't work with official builds
either, because neither of the chosen include folders contained
all the necessary headers to lead to a successful build.
Fortunately shiboken actually supports being passed multiple include
locations, separated by a colon on OS/X, and a semicolon on Windows.
This patch makes sure to always pass the Qt include folder, and in
case if the Qt build is a framework build, also passes the root
frameworks location, with headers found by shiboken under
frameworkName.framewework/Headers.
This works for homebrew builds, official builds and custom
non-installed prefix / in-source builds of Qt.
Change-Id: I47b24e197839883de2ab873461efc1f4d4d33743
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Versions of OSX lower than 10.9 link libstdc++ by default.
Also libstdc++ is linked when the osx minimum deployment target is
lower than 10.9.
The new option allows explicitly linking libc++ in the cases mentioned
above. It is not enabled by default, because most libraries and
executables on versions lower than 10.9 are compiled with libstdc++,
and mixing standard library versions can lead to crashes.
Change-Id: I7397d2bbce2cfceaeb848f25e0bbf1a24ac9bde8
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
|
|
|
|
| |
This was modified, but not corrected in setup.py
|
| |
|
| |
|
|
|
|
| |
We will see how travis works now.
|