| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Add a key Generator (similar to the planned qt6_tool). Currently,
only default (make) and Ninja are supported (pending the
refactoring of the mkspec option of setup.py, which will become
a qmake legacy).
Task-number: PYSIDE-904
Change-Id: I75f87c59f8b6421dc5d2b8ae46d3107e2ac61614
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
| |
Fixes: PYSIDE-1323
Change-Id: If3a3d885f277044d64e174dd597974ad11a3425a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit 80d07788fbf4cdce72041b1d22a66e5f981034a1)
|
|
|
|
|
|
|
| |
Fixes: PYSIDE-1323
Change-Id: I2856c5388b66eb02b18004b894cac8db6c4be10a
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit 0467ea1c3ddbf81fe4ab9a5c521e1d41ea22481f)
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Adding STATUS or WARNING to a couple of message() calls.
* Replacing some print() by log.info()
* Changing some '*' by '-'
* Align configuration outputs to check paths easily
* Adding big message to check when shiboken2/pyside2 is being built.
* Including the cmake_minimum_required() function instead of an 'if'.
Change-Id: Idb6c5797286d400192d083403063e2ae582e3fe6
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
A new command-line option, --doc-build-online, enables
to choose online builds, otherwise offline docs are
built by default.
Change-Id: I34ef8a22ef3bd321bd972c4f2873e4321c9c336a
Fixes: PYSIDE-1292
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
| |
Renaming pre_release_version_type to release_version_type to match its
future usage to differentiate between wheel/package types.
Change-Id: I70a2361f639a36b17f63b7f76d8c231a144bd825
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
According to PEP 561, there needs to exist a py.typed file.
Also, the import of typing must be visible statically for mypy without
importing PySide2.
Testing.. run
mypy pyside_1100.py
and you will get the correct output without "any".
Change-Id: I1d08447161630a8c7a64eda32ff8a431e994c6a7
Fixes: PYSIDE-1100
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
The build_scripts are able to build Designer, optionally.
For macOS, the optional status was forgotten.
Instead of always patching the build_scripts, I finally
fixed that buglet ;-)
Change-Id: Iaa62e27253ec7035f0eebde17f0f2b8c4593be67
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
| |
This is useful for mimicking the COIN test environment.
Change-Id: I9a4567be171d940d6574c4135fabb2a8721bbd79
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
| |
Change-Id: I682fb765fc3f69f0ca3c4d6717d415d0bff0517e
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I happened to try out the "cling" C++ interpreter. That forced
me to install XCode. I did not run XCode because cling worked
immediately.
But then, building PySide always failed with an error in qtinfo.
This is a rare trap into which I fall every other year, so here is a
fix that returns the intended error message.
Change-Id: I9ec5774c49b8a186d6b4247150dac6b252e7cc64
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
| |
Available as of version v0.96.74, it speeds up things considerably.
Change-Id: I5d8312b2d59adcce0881d3485af966bebf69317b
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
| |
Run the test redirected into a log file with time stamp.
Change-Id: Id9a5047e0b6594760d0329f9a15450c688a585f8
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With virtualenv 20 we have the case where the first
path in the PYTHON_LIBRARIES cmake variable was wrong:
a_virtual_env/libs/python3.lib
so the python code inside the helper didn't have a proper
check if the file was valid or it was just a wrong construct.
Additionally, the 'prefix' variable will contain the virtual
environment directory location, which will not contain the 'libs'
directory, because that's included in the system's installation path.
To solve this, we use the 'INCLUDEPY' directory, which is correct
as a base to create the real 'libs' one.
Task-number: PYSIDE-1231
Change-Id: Ifca08d74c49cd57572836a087edb96c089266dc7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix coding style warnings and bring it up to par with the qt6_tool
in the works:
- Add edit config file option
- Add dry run option.
- Add support for Incredibuild
- Log build time
- Print help if no option is given
Change-Id: Ia8ec5f0d4d9e9c127172fb22f3efea11ce1ab6ff
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
| |
Designer is not statically compiled, so we need to add
a RUNPATH to use the Qt libraries we ship with the wheel.
Change-Id: I715fcd852b63da99104198be2a4587b042a1eab7
Fixes: PYSIDE-1165
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently the Shiboken macro only handles AttributeError
but when 'machinery' is not found inside 'importlib'
that case also needs to be handle by the except clause.
Adding ImportError will allow us to get access to the
Python suffixes that we need to build.
Additionally, some old versions of Python (2.7.14) require
an "archive_root" parameter on the 'wheel.pep425tags.get_supported'
function, which is not required in new versions (2.7.16, and 3+).
Change-Id: Icc6e7d1e9384ea01eec9281586f7ca988e3eb649
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
Close the pipe obtained by POpen, fixing:
build_scripts\main.py:1185: ResourceWarning: unclosed file <_io.TextIOWrapper name=3 encoding='cp1252'>
out = run_process_output(cmake_cmd)
Change-Id: I5de0391003b40119758d93712d8178694e7fc14b
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
| |
After Python 3.8 works with PySide, we can remove the restriction
to Python 3.7 from "python_requires".
Change-Id: I5be5364cda14c38aabc2bf579165efbb614969e0
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently we are importing * from the options.py file,
which is a problem for the linters to discover if we are properly
using the options of the file.
Having a dictionary provides also a better way of access these options,
and it is more clean than having one variable per each option.
Change-Id: Ie70bd88665357b85e2842c5df269857504ecccdf
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- We agreed on 100 columns time ago, so I move around a few things,
- Removing unused modules,
- Fix white-spaces tabs without being multiple of 4,
- Encourage the use of os.path.join when joining paths,
- Using .format() for string formatting,
- Remove white-spaces from default arguments,
- Adjusting white-spaces before inline comments,
- Adding extra newlines when expected,
- Adjust spaces for lines under-indented for visual indent,
- Remove white-spaces from parenthesis, and adding them for arithmetic operators.
Change-Id: I9cb28cefd114d63580b584a063c452f90d3ca885
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|\
| |
| |
| | |
Change-Id: I4659f593110a3c8d3fb23a3110efc1668fe0bf28
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This will avoid the current option of installing 5.13.x wheels
on Python 3.8 environments.
Task-number: PYSIDE-1140
Change-Id: Ia5e1e77dd2e48807e2f485177c2821fba5c1c76b
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Fixes: PYSIDE-1001
Fixes: PYSIDE-1068
Change-Id: I0969cd234331789b300c8dc521ab6bbf84004d1d
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Properly pass lists to regenerate_qt_resources().
Change-Id: I8cdd388b02a247dde915f14b21e3f3770a0c64a1
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
After the compatibility patches for uic and rcc,
is now possible to generate Python code by using the option
'-g python':
uic -g python file.ui -o ui_file.py
rcc -g python file.qrc -o rc_file.py
This patch depends on many changes on the 'pyside2-tools'
submodule, which mainly remove the old implementations of pyside2-uic
and pyside2-rcc.
The pyside_tool.py wrapper is now in charge of calling the uic and rcc
binaries, with the -g python every time the pyside2-uic and pyside2-rcc
binaries are called. To achieve this, we are now shipping the uic and rcc
binaries from the Qt installation.
Fixes: PYSIDE-1098
Change-Id: Ibdec0012f7ed671cd99424e1258c20649609c2da
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
build_extension was meant to not run either when --only-package
is passed, or when the shiboken-generator is built as part of a
top-level build.
Fix the condition to represent that.
Amends 43fe3494a9d902034896e3afa7b5158c77163be0
Change-Id: I9dbc8694b932c88227fcd3a987cd1413bc55c286
Reviewed-by: Simo Fält <simo.falt@qt.io>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|/
|
|
|
| |
Change-Id: I824085342694ac1cddc4db91dc6b95abdcc78122
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
| |
Change-Id: I4945620d3328cfd26a713306730beb64445136f4
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|\
| |
| |
| | |
Change-Id: Id820dfc57338b9630b77448a697aa9da029ddadf
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Adding Proprietary License to METADATA to indicate possibility for
commercial licencing. License will be shown in pypi.org with LGPL
possibility.
Change-Id: Ic389adc2a867b9ea1118574fdf627e78acb02ba2
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously when building on the Coin VMs, the incorrect
Xcode sdk value of "10.0" was embedded into all the built shiboken
and PySide2 binaries. This causes issues when trying to notarize
a PySide2 app.
The reason why this happens is described as a long investigation
on the respective bug report.
The fix is to ask xcrun to report an SDK path which contains
the version number in the SDK path (/path/to/MacOSX10.14.sdk
vs just /path/to/MacOSX.sdk).
Change-Id: I3f02510953e2f54032c19a48cb8a7162814bf9e7
Fixes: PYSIDE-1066
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Simo Fält <simo.falt@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I0f71c6ca75fae7e1eff6675d787891507d4dd965
|
| |
| |
| |
| |
| |
| | |
Change-Id: I6ba6cb1799837ebcf093404ca3415c893584f21e
Reviewed-by: Christian Tismer <tismer@stackless.com>
Reviewed-by: Simo Fält <simo.falt@qt.io>
|
|/
|
|
|
|
|
|
| |
The fix we were waiting for has landed to released wheel package.
Change-Id: I1d83be7cd9662ca2e076e9c03c03c38f1b0c9ecb
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
| |
Change-Id: I57783a5da7b403e45463068900c1248fbd3651f9
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We had some unwanted cache effects and needed to manually
remove certain files before building. Otherwise it could happen
that a build pretended to be ok, although there was a bug that
prevented generation of the ".pyi" files.
Further investigation showed:
Using option "--reuse-build" with "no" and then with "yes" creates errors
in the signature module. This makes "reuse-build" useless in this case.
We now add an "a" to "pyside3d_build" as "pside3da_build" if
"--limited-api=yes" was given. (different proposals welcome.)
That solved most of the stickiness problems.
A left-over lock directory is removed now, since it would prevent
re-computation of the .pyi files. This is implemented by a recursive
call to the script, where the subprocess does the work and the
main process checks if there was a crash and removes the lock.
The "--skip" parameter of generate_pyi.py was refined:
When set, it is checked if the time stamp of all imported modules is
less than the ".pyi" file time stamp. Only then the generation is skipped.
By editing any involved python file, the ".pyi" files will be regenerated.
Task-number: PYSIDE-560
Change-Id: I1b1d8ffbc58db3d4b38bf65e3795efcad7e7870c
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A simple hello.py script was modified for running in
PyInstaller and stopping to execute after 2 seconds.
The reason is to test that PyInstaller works correctly
together with the embedded mode of the signature
extension on all platforms.
The script did first not work on Windows. This is now
solved, after an import in pyside2_config.py is fixed.
Currently, there are several configuration errors in COIN.
Errors are therefore skipped in the PyInstaller build.
The test tests only if the generated script works.
Change-Id: I7a1b1e738d523b83cc3fe5beafa7e2579f9c7f48
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The code for shipping MSVC redist dlls used to check for the
"QTEST_ENVIRONMENT" environment variable to decide when to
download and extract the libraries. This was incorrect, because
it is only set in a Coin test phase, and not when building
the project.
Revert to using the old "COIN_LAUNCH_PARAMETERS" environment variable
which is set during the Coin build phase.
Amends 9e13465a992a5079c0a038e5f9417896dcfd6f3a .
Fixes: PYSIDE-993
Change-Id: I96d1e010ffc4b3a5951bdd28699f657e3a5f4a3f
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
|
| |
Will be easier to see from Coin logs when it happens.
Task-number: PYSIDE-993
Change-Id: I5eeb36c32be2e2e6c32eb8a5d7136797d4a925a2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
qp5_tool.py is a developer helper tool modeled after the qt5_tool Perl
script of Qt 5.
It maintains a configuration file where per-directory values (build
options, module subsets) can be given. Creating an up-to-date Build is
then done by calling:
python build_scripts/qp5_tool.py -c -p -b
in each directory,
Change-Id: Ifdcf414f7ff89512bb81a132c0bfd2e49275ed24
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
| |
Use the new project file format.
Change-Id: I69f488c285343500edd999b746ce244a56504030
Reviewed-by: Christian Tismer <tismer@stackless.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since we specify:
install_requires = ["shiboken2"]
without a version, when trying to install:
pip install PySide2==5.12.0
will install the latest shiboken version (5.12.1),
and then of course there will be many issues
related to the mismatch.
This patch add the package_version to the shiboken2
dependency.
Fixes: PYSIDE-929
Change-Id: I459cb22fc1506acfc861d33044bc3f7d2a85d85a
Reviewed-by: Simo Fält <simo.falt@qt.io>
|
|
|
|
|
|
|
| |
Fix frequent timeouts in COIN.
Change-Id: I2a85fd6a72891a937a758e0f5c38aacdcb83de8f
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
| |
Check the bool value. Amends 263df6601717b52237f62c08ad1f6bc536093e45
Change-Id: Ibcca3e34477da80999e87918ff03cf1639bc40d5
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a CMake super project that includes the shiboken2, PySide2 and
pyside2-tools subprojects, so that it's possible to build everything
from Qt Creator (or any other IDE that supports CMake)
with minimal set up effort, and thus inform the IDE CMake integration
of all relevant files, for easier code editing, navigation and
refactoring.
This also lays the foundation for allowing 3rd parties to use the
shiboken2 generator to generate custom modules. This is
achieved by eliminating various hardcoded paths for libraries and
include directories.
Start using CMake targets throughout the build code to correctly
propagate link flags and include dirs for libshiboken and
shiboken2 executable targets. Same for the libpyside target.
Generate two separate cmake config files (build-tree / install-tree)
that can be used with find_package(Shiboken2), to make sure that
the PySide2 project can be built as part of the super project build.
This is currently the only way I've found to allow the super build
to work.
Note that for the build-tree find_package() to work, the
CMAKE_MODULE_PATH has to be adjusted in the super project file.
The generated config files contain variables and logic that allow
usage of the installed shiboken package in downstream projects
(PySide2). This involves things like getting the includes and
libraries for the currently found python interpreter, the shiboken
build type (release or debug), was shiboken built with limited
api support, etc.
Generate 2 separate (build-tree and install-tree) config files
for PySide2, similar to how it's done for the shiboken case, for
pyside2-tools to build correctly.
Install shiboken2 target files using install(EXPORT)
to allow building PySide2 with an installed Shiboken2 package
(as opposed to one that is built as part of the super project).
Same with PySide2 targets for pyside2-tools subproject.
Make sure not to redefine uninstall targets if they are already
defined.
Add a --shorter-paths setup.py option, which would be used by
the Windows CI, to circumvent creating paths that are too long,
and thus avoiding build issues.
Output the build characteristics / classifiers into the generated
build_history/YYYY-MM-DD_AAAAAA/build_dir.txt file, so it can be
used by the test runner to properly filter out blacklisted
tests. This was necessary due to the shorter paths options.
Fix various issues regarding target includes and library
dependencies.
Remove certain duplicated cmake code (like limited api check and build
type checks) in PySide2, given that that information will now be
present in the exported shiboken2 config file.
Include a short README.cmake.md file that describes how to build
the super project.
References used
https://rix0r.nl/blog/2015/08/13/cmake-guide/
https://pabloariasal.github.io/2018/02/19/its-time-to-do-cmake-right/
https://gist.github.com/mbinna/c61dbb39bca0e4fb7d1f73b0d66a4fd1
https://cliutils.gitlab.io/modern-cmake/chapters/basics/functions.html
https://cmake.org/cmake/help/v3.0/manual/cmake-packages.7.html
https://github.com/ComicSansMS/libstratcom/blob/master/CMakeLists.txt
Abandoned approach using ExternalProject references:
https://cmake.org/cmake/help/latest/module/ExternalProject.html
https://stackoverflow.com/questions/44990964/how-to-perform-cmakefind-package-at-build-stage-only
Fixes: PYSIDE-919
Change-Id: Iaa15d20b279a04c5e16ce2795d03f912bc44a389
Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
|
|
|
|
|
|
|
|
| |
Check for the default install location in case it was not added
to the path.
Change-Id: I6f21353147552ed6f556f79878e6ba89dc40cb43
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
|
|
|
|
|
|
|
|
| |
Empty string is not the same as None. This caused the redist
libraries to always be downloaded.
Change-Id: Ib4951ba0e56c87749aa85cb3b815ce222ecb95cd
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
|
|
|
|
|
|
|
|
| |
We are currently shipping the __pycache__ directory
of the examples, so this filter will remove them.
Change-Id: Ia387108d8867cf08f8bfc2677f166fb33b521ad5
Reviewed-by: Christian Tismer <tismer@stackless.com>
|