From nobody Fri Oct 28 05:32:30 2022 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MzB5B4XJ1z4g0pP; Fri, 28 Oct 2022 05:32:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MzB5B3n71z42Xh; Fri, 28 Oct 2022 05:32:30 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1666935150; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=85ooTa+rHIl7OOlfBkvIb8DY4909Q0TlcQLGjMkmXuI=; b=tPdQqsaKC2zdIz9ylC1pdUcKTHVZsDvoE/39Jq0Qdr14z+ulgBK84ugoC5uFEFyv7OkIWy ObBg0VBl79U5xdEwwZ7wqTe75ZwjjKxLnVKzlgvatrjhi1ZKrKPfhRZsXGBhETd6tccDLT EUVO/r3R5ig8SokrHdpsR5isdWBdj3myt8Dpe116BDTNKyTQuaELmTj/eEvV13fI5AiJW5 znpEfThT44YUfxAE7WZWqw4HbFrDm0iuTfIlptr8kzoOrCII+2Wg1+eJOeRj9xTkpaG8oU eS6aAq024egyWO7D+ZIdypse3ln/UTYfozsUcgNl391VAjum0av+RnSXDJGWPw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4MzB5B2qYCzRPw; Fri, 28 Oct 2022 05:32:30 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 29S5WUYm007305; Fri, 28 Oct 2022 05:32:30 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 29S5WUgu007304; Fri, 28 Oct 2022 05:32:30 GMT (envelope-from git) Date: Fri, 28 Oct 2022 05:32:30 GMT Message-Id: <202210280532.29S5WUgu007304@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Yuri Victorovich Subject: git: ebef7607f51a - main - devel/py-spyder: Update 3.2.7 -> 5.3.3 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: yuri X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: ebef7607f51aa22fe0ce8b9dc8bb330d2d7fe9c9 Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1666935150; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=85ooTa+rHIl7OOlfBkvIb8DY4909Q0TlcQLGjMkmXuI=; b=mC7XJ3xg4uAghp1q+iFuBOc5NlpRJVrYuLuMs5oDGrBbQvxDb/1CXXOZYkPZhW8E8fb9WB QzTm5SbzC+2qAeveNAoh4Ho02Qb6bED0V/1SalW8RYJPUOBUoIA7sDqgA5o5xy6YrUs9pV cOSa+EE2HFmvW/Un6c1yYBZJYQKfKLcIeXJSpF7HfINn/qlHGT4/DT01kFO7qaZM11k82A WJ8sLcS3FDWcgZLYjtUuV/Lu3Tr8Pstxo0X8OCUWP41U2rAIRTgTL2Sw7SOTZDL+ef1DrG sPqAej4iYtShejCNzFfd+slW2JeCq/OA7IAyjgz5Doq2LYTuZI48bZ19blE0qg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1666935150; a=rsa-sha256; cv=none; b=eSCDZmpJrR3KqsfNQeruVgp19ekgotyPSp2fvniDfbbfDkp8Xvp1vks6ieVnn0Zjk1Uoze ANHwPjMMLm8TkScC9Rmh1TGCo0BsE0M6/fnDOZN3D7nNji7upFdU8OazrK2oT6H6H0drG6 b1Zk56yXUdtGF118Li28g9snixoQT3XhqO0PpOiU9lhSQwpZVFcmI6MitRBCojyKW+DaGG ldpMD9MmLn4JV3dFa7g1G75PC+6xMl2kYvDCZDPLbGLbVijPHz2Q6rqfYGW3msVzb5FIZc CLxZfkx8wnKId649/FZTTpcNa1Nf1KYIO7K2HBM13Rcy/1ppviZnZsqllj7wTQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by yuri: URL: https://cgit.FreeBSD.org/ports/commit/?id=ebef7607f51aa22fe0ce8b9dc8bb330d2d7fe9c9 commit ebef7607f51aa22fe0ce8b9dc8bb330d2d7fe9c9 Author: Yuri Victorovich AuthorDate: 2022-10-28 05:31:28 +0000 Commit: Yuri Victorovich CommitDate: 2022-10-28 05:32:23 +0000 devel/py-spyder: Update 3.2.7 -> 5.3.3 --- devel/py-spyder/Makefile | 98 ++++++++++------------ devel/py-spyder/distinfo | 6 +- devel/py-spyder/files/patch-binder_environment.yml | 11 +++ devel/py-spyder/files/patch-requirements_main.yml | 11 +++ devel/py-spyder/files/patch-setup.py | 44 +++++++--- devel/py-spyder/files/patch-spyder_dependencies.py | 15 ++++ 6 files changed, 118 insertions(+), 67 deletions(-) diff --git a/devel/py-spyder/Makefile b/devel/py-spyder/Makefile index a16c10fcdd6a..52eb7030a26b 100644 --- a/devel/py-spyder/Makefile +++ b/devel/py-spyder/Makefile @@ -1,73 +1,63 @@ PORTNAME= spyder DISTVERSIONPREFIX= v -DISTVERSION= 3.2.7 -PORTREVISION= 14 +DISTVERSION= 5.3.3 CATEGORIES= devel science python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= yuri@FreeBSD.org COMMENT= Scientific PYthon Development EnviRonment, an alternative to IDLE -WWW= https://github.com/spyder-ide/spyder/ +WWW= https://www.spyder-ide.org/ LICENSE= MIT -LICENSE_FILE= ${WRKSRC}/LICENSE - -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}QtAwesome>0:x11-fonts/py-QtAwesome@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}QtPy>=1.3.1:devel/py-QtPy@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}cloudpickle>=0.3.1:devel/py-cloudpickle@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}jedi>=0.9.0:devel/py-jedi@${PY_FLAVOR} \ +LICENSE_FILE= ${WRKSRC}/LICENSE.txt + +RUN_DEPENDS= \ + ${PYTHON_PKGNAMEPREFIX}atomicwrites>=1.2.0:devel/py-atomicwrites@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}chardet>=2.0.0:textproc/py-chardet@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}cloudpickle>=0.5.0:devel/py-cloudpickle@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}cookiecutter>=1.6.0:devel/py-cookiecutter@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}diff-match-patch>=20181111:textproc/py-diff-match-patch@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}intervaltree>=3.0.2:devel/py-intervaltree@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}ipython>=7.31.1:devel/ipython@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}jedi>=0.17.2:devel/py-jedi@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}jellyfish>=0.7:devel/py-jellyfish@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}jsonschema>=3.2.0:devel/py-jsonschema@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}keyring>=17.0.0:security/py-keyring@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}nbconvert>=4.0:devel/py-nbconvert@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pep8>=0.6:devel/pep8@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pycodestyle>=2.3:devel/py-pycodestyle@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}qtconsole>=4.3.0:devel/py-qtconsole@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}numpydoc>0:textproc/py-numpydoc@${PY_FLAVOR} \ - pylint${PYTHON_PKGNAMESUFFIX}>=0.25:devel/pylint@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}parso>=0.1.1:textproc/py-parso@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}numpydoc>=0.6.0:textproc/py-numpydoc@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}parso>=0.7.0:textproc/py-parso@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pexpect>=4.4.0:misc/py-pexpect@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pickleshare>=0.4:databases/py-pickleshare@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}psutil>=5.3:sysutils/py-psutil@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pygments>=2.0:textproc/py-pygments@${PY_FLAVOR} \ + pylint${PYTHON_PKGNAMESUFFIX}>=2.5.0:devel/pylint@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}python-lsp-black>=1.2.0:textproc/py-python-lsp-black@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyls-spyder>=0.4.0:textproc/py-pyls-spyder@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}qt5-webengine>0:www/py-qt5-webengine@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}python-lsp-server>=1.5.0:textproc/py-python-lsp-server@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyxdg>=0.26:devel/py-pyxdg@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyzmq>=22.1.0:net/py-pyzmq@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}QDarkStyle>=3.0.2:textproc/py-QDarkStyle@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}qstylizer>=0.1.10:devel/py-qstylizer@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}QtAwesome>=1.0.2:x11-fonts/py-QtAwesome@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}qtconsole>=5.3.2:devel/py-qtconsole@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}QtPy>=2.1.0:devel/py-QtPy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}rtree>=0.9.7:devel/py-rtree@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}sphinx>=0.6.6:textproc/py-sphinx@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}spyder-kernels>=2.3.3:devel/py-spyder-kernels@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}textdistance>=4.2.0:textproc/py-textdistance@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}three-merge>=0.1.1:textproc/py-three-merge@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}watchdog>=0.10.3:devel/py-watchdog@${PY_FLAVOR} USES= desktop-file-utils python:3.7+ pyqt:5 +USE_PYTHON= distutils concurrent autoplist noflavors +USE_PYQT= pyqt5 sip + USE_GITHUB= yes GH_ACCOUNT= spyder-ide -USE_PYTHON= distutils autoplist noflavors -USE_PYQT= pyqt5 sip + NO_ARCH= yes DOCSDIR= ${PYTHON_SITELIBDIR}/spyder -OPTIONS_DEFINE= DOCS -OPTIONS_GROUP= RECOMMENDED OPTIONAL -OPTIONS_GROUP_RECOMMENDED= IPYTHON MATPLOT NUMPY PSUTIL PYFLAKES ROPE SCIPY SPHINX -OPTIONS_GROUP_OPTIONAL= PANDAS PYGMENTS SYMPY -OPTIONS_DEFAULT= IPYTHON MATPLOT NUMPY PSUTIL PYFLAKES ROPE SCIPY SPHINX - -IPYTHON_DESC= IPython Console integration -MATPLOT_DESC= Interactive data plotting in the consoles -NUMPY_DESC= N-dimensional arrays -PANDAS_DESC= View and edit DataFrames and Series in the Variable Explorer -PSUTIL_DESC= CPU and memory usage info in the status bar -PYFLAKES_DESC= Real-time code analysis on the Editor -PYGMENTS_DESC= Syntax highlighting for Matlab, Julia and other file types -ROPE_DESC= Editor's code completion, go-to-definition and help -SCIPY_DESC= Signal/image processing -SPHINX_DESC= Rich text help on the Object Inspector -SYMPY_DESC= Symbolic mathematics in the IPython Console - -DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR} -IPYTHON_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}ipython>=6.0:devel/ipython@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pyzmq>=2.1.11:net/py-pyzmq@${PY_FLAVOR} -MATPLOT_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}matplotlib>=1.0:math/py-matplotlib@${PY_FLAVOR} -NUMPY_RUN_DEPENDS= ${PYNUMPY} -PANDAS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pandas>=0.13.1:math/py-pandas@${PY_FLAVOR} -PSUTIL_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}psutil>=0.3:sysutils/py-psutil@${PY_FLAVOR} -PYFLAKES_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pyflakes>=0.5:devel/py-pyflakes@${PY_FLAVOR} -PYGMENTS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pygments>=1.6:textproc/py-pygments@${PY_FLAVOR} -ROPE_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}rope>=0.9.2:devel/py-rope@${PY_FLAVOR} -SCIPY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}scipy>0:science/py-scipy@${PY_FLAVOR} -SPHINX_RUN_DEPENDS= ${DOCS_BUILD_DEPENDS} -SYMPY_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sympy>=0.7.3:math/py-sympy@${PY_FLAVOR} - -post-patch: - @${REINPLACE_CMD} -e "s|'linux'|'${OPSYS:tl}'|g" \ - ${WRKSRC}/setup.py - @${REINPLACE_CMD} -e "s|cmdclass=CMDCLASS||g" ${WRKSRC}/setup.py - .include diff --git a/devel/py-spyder/distinfo b/devel/py-spyder/distinfo index fe5e35646bf0..d2b2120d366b 100644 --- a/devel/py-spyder/distinfo +++ b/devel/py-spyder/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1519708244 -SHA256 (spyder-ide-spyder-v3.2.7_GH0.tar.gz) = 5e53705179b57680796b9c095556d30fdfe41b359bbcffea94a6ea1929b0d6dd -SIZE (spyder-ide-spyder-v3.2.7_GH0.tar.gz) = 4906058 +TIMESTAMP = 1665651743 +SHA256 (spyder-ide-spyder-v5.3.3_GH0.tar.gz) = 1e59bbddb1846e777e6938d6f600c57466bf8df8c30fdccf17838838b8666ec7 +SIZE (spyder-ide-spyder-v5.3.3_GH0.tar.gz) = 24443628 diff --git a/devel/py-spyder/files/patch-binder_environment.yml b/devel/py-spyder/files/patch-binder_environment.yml new file mode 100644 index 000000000000..f5f454102ee9 --- /dev/null +++ b/devel/py-spyder/files/patch-binder_environment.yml @@ -0,0 +1,11 @@ +--- binder/environment.yml.orig 2022-10-14 18:00:34 UTC ++++ binder/environment.yml +@@ -33,7 +33,7 @@ dependencies: + - python-lsp-server >=1.5.0,<1.6.0 + - pyxdg >=0.26 + - pyzmq >=22.1.0 +-- qdarkstyle >=3.0.2,<3.1.0 ++- qdarkstyle >=3.0.2 + - qstylizer >=0.1.10 + - qtawesome >=1.0.2 + - qtconsole >=5.3.2,<5.4.0 diff --git a/devel/py-spyder/files/patch-requirements_main.yml b/devel/py-spyder/files/patch-requirements_main.yml new file mode 100644 index 000000000000..cab30c18def6 --- /dev/null +++ b/devel/py-spyder/files/patch-requirements_main.yml @@ -0,0 +1,11 @@ +--- requirements/main.yml.orig 2022-10-14 17:58:24 UTC ++++ requirements/main.yml +@@ -30,7 +30,7 @@ dependencies: + - python-lsp-black >=1.2.0 + - python-lsp-server >=1.5.0,<1.6.0 + - pyzmq >=22.1.0 +- - qdarkstyle >=3.0.2,<3.1.0 ++ - qdarkstyle >=3.0.2 + - qstylizer >=0.1.10 + - qtawesome >=1.0.2 + - qtconsole >=5.3.2,<5.4.0 diff --git a/devel/py-spyder/files/patch-setup.py b/devel/py-spyder/files/patch-setup.py index 9b345df23cc4..0fcd7d5de7a7 100644 --- a/devel/py-spyder/files/patch-setup.py +++ b/devel/py-spyder/files/patch-setup.py @@ -1,11 +1,35 @@ ---- setup.py.orig 2018-03-13 19:57:09 UTC +--- setup.py.orig 2022-08-29 23:48:19 UTC +++ setup.py -@@ -291,7 +291,7 @@ install_requires = [ - 'numpydoc', - # Packages for pyqt5 are only available in - # Python 3 -- 'pyqt5<5.10;python_version>="3"', -+ #'pyqt5<5.10;python_version>="3"', - # This is only needed for our wheels on Linux. - # See issue #3332 - 'pyopengl;platform_system=="Linux"' +@@ -91,7 +91,7 @@ def get_data_files(): + """ + Return data_files in a platform dependent manner. + """ +- if sys.platform.startswith('linux'): ++ if sys.platform.startswith('linux') or sys.platform.startswith('freebsd'): + data_files = [('share/applications', ['scripts/spyder.desktop']), + ('share/icons', ['img_src/spyder.png']), + ('share/metainfo', +@@ -197,7 +197,6 @@ setup_args = dict( + 'Topic :: Scientific/Engineering', + 'Topic :: Software Development :: Widget Sets', + ], +- cmdclass=CMDCLASS, + ) + + +@@ -229,12 +228,12 @@ install_requires = [ + 'pyqt5<5.16', + 'pyqtwebengine<5.16', + 'python-lsp-server[all]>=1.5.0,<1.6.0', +- 'pyxdg>=0.26;platform_system=="Linux"', ++ 'pyxdg>=0.26', + 'pyzmq>=22.1.0', +- 'qdarkstyle>=3.0.2,<3.1.0', ++ 'qdarkstyle>=3.0.2', + 'qstylizer>=0.1.10', + 'qtawesome>=1.0.2', +- 'qtconsole>=5.3.2,<5.4.0', ++ 'qtconsole', + 'qtpy>=2.1.0', + 'rtree>=0.9.7', + 'setuptools>=49.6.0', diff --git a/devel/py-spyder/files/patch-spyder_dependencies.py b/devel/py-spyder/files/patch-spyder_dependencies.py new file mode 100644 index 000000000000..21723e2a6c1f --- /dev/null +++ b/devel/py-spyder/files/patch-spyder_dependencies.py @@ -0,0 +1,15 @@ +--- spyder/dependencies.py.orig 2022-10-15 07:03:54 UTC ++++ spyder/dependencies.py +@@ -57,10 +57,10 @@ PYLSP_BLACK_REQVER = '>=1.2.0' + PYLS_SPYDER_REQVER = '>=0.4.0' + PYXDG_REQVER = '>=0.26' + PYZMQ_REQVER = '>=22.1.0' +-QDARKSTYLE_REQVER = '>=3.0.2;<3.1.0' ++QDARKSTYLE_REQVER = '>=3.0.2' + QSTYLIZER_REQVER = '>=0.1.10' + QTAWESOME_REQVER = '>=1.0.2' +-QTCONSOLE_REQVER = '>=5.3.2;<5.4.0' ++QTCONSOLE_REQVER = '>0' + QTPY_REQVER = '>=2.1.0' + RTREE_REQVER = '>=0.9.7' + SETUPTOOLS_REQVER = '>=49.6.0'