From 29290b68cd7ef520c6c75223dc66bdcf59df66a9 Mon Sep 17 00:00:00 2001 From: "Liguros - Gitlab CI/CD [develop]" Date: Wed, 15 Dec 2021 01:45:29 +0000 Subject: Adding metadata --- dev-python/PyGithub/PyGithub-1.55.ebuild | 2 +- dev-python/QtPy/QtPy-1.11.3-r1.ebuild | 143 +++++++++++++++ dev-python/QtPy/QtPy-1.11.3.ebuild | 158 ---------------- dev-python/boto/boto-2.49.0-r4.ebuild | 1 + dev-python/boto/files/boto-2.49.0-py310.patch | 44 +++++ dev-python/httpretty/httpretty-1.1.4.ebuild | 4 +- dev-python/ipykernel/Manifest | 1 + dev-python/ipykernel/ipykernel-6.4.2-r1.ebuild | 55 ++++++ dev-python/ipykernel/ipykernel-6.4.2.ebuild | 48 ----- dev-python/ipykernel/ipykernel-6.5.0-r1.ebuild | 62 +++++++ dev-python/ipykernel/ipykernel-6.5.0.ebuild | 55 ------ dev-python/ipykernel/ipykernel-6.6.0.ebuild | 61 +++++++ dev-python/moto/Manifest | 1 + dev-python/moto/moto-2.2.18.ebuild | 4 +- dev-python/moto/moto-2.2.19.ebuild | 87 +++++++++ .../pyside2/files/pyside2-5.15.2-python310.patch | 12 ++ dev-python/pyside2/pyside2-5.15.2-r1.ebuild | 2 + .../files/shiboken2-5.15.2-python310.patch | 104 +++++++++++ dev-python/shiboken2/shiboken2-5.15.2-r1.ebuild | 1 + dev-python/snakeoil/Manifest | 1 + dev-python/snakeoil/snakeoil-0.9.9.ebuild | 31 ++++ dev-python/snakeoil/snakeoil-9999.ebuild | 2 +- dev-python/spyder/Manifest | 4 +- dev-python/spyder/spyder-5.2.0.ebuild | 199 --------------------- dev-python/spyder/spyder-5.2.1.ebuild | 199 +++++++++++++++++++++ dev-python/symengine/Manifest | 1 + dev-python/symengine/symengine-0.8.1.ebuild | 55 ++++++ dev-python/sympy/Manifest | 1 + dev-python/sympy/sympy-1.9.ebuild | 61 +++++++ 29 files changed, 931 insertions(+), 468 deletions(-) create mode 100644 dev-python/QtPy/QtPy-1.11.3-r1.ebuild delete mode 100644 dev-python/QtPy/QtPy-1.11.3.ebuild create mode 100644 dev-python/boto/files/boto-2.49.0-py310.patch create mode 100644 dev-python/ipykernel/ipykernel-6.4.2-r1.ebuild delete mode 100644 dev-python/ipykernel/ipykernel-6.4.2.ebuild create mode 100644 dev-python/ipykernel/ipykernel-6.5.0-r1.ebuild delete mode 100644 dev-python/ipykernel/ipykernel-6.5.0.ebuild create mode 100644 dev-python/ipykernel/ipykernel-6.6.0.ebuild create mode 100644 dev-python/moto/moto-2.2.19.ebuild create mode 100644 dev-python/pyside2/files/pyside2-5.15.2-python310.patch create mode 100644 dev-python/shiboken2/files/shiboken2-5.15.2-python310.patch create mode 100644 dev-python/snakeoil/snakeoil-0.9.9.ebuild delete mode 100644 dev-python/spyder/spyder-5.2.0.ebuild create mode 100644 dev-python/spyder/spyder-5.2.1.ebuild create mode 100644 dev-python/symengine/symengine-0.8.1.ebuild create mode 100644 dev-python/sympy/sympy-1.9.ebuild (limited to 'dev-python') diff --git a/dev-python/PyGithub/PyGithub-1.55.ebuild b/dev-python/PyGithub/PyGithub-1.55.ebuild index dc0359dd1d88..a1c79f4e6f83 100644 --- a/dev-python/PyGithub/PyGithub-1.55.ebuild +++ b/dev-python/PyGithub/PyGithub-1.55.ebuild @@ -2,8 +2,8 @@ # Distributed under the terms of the GNU General Public License v2 EAPI=7 -PYTHON_COMPAT=( python3_{6,7,8,9,10} ) +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) inherit distutils-r1 DESCRIPTION="Python library to access the Github API v3" diff --git a/dev-python/QtPy/QtPy-1.11.3-r1.ebuild b/dev-python/QtPy/QtPy-1.11.3-r1.ebuild new file mode 100644 index 000000000000..3c10390426cd --- /dev/null +++ b/dev-python/QtPy/QtPy-1.11.3-r1.ebuild @@ -0,0 +1,143 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Abstraction layer on top of PyQt5 and PySide2 and additional custom QWidgets" +HOMEPAGE="https://github.com/spyder-ide/qtpy/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~x86" + +_IUSE_QT_MODULES=" + declarative designer gui help location multimedia network opengl + positioning printsupport sensors serialport speech sql svg testlib + webchannel webengine websockets widgets x11extras xml xmlpatterns +" +IUSE="+pyqt5 pyside2 ${_IUSE_QT_MODULES}" +unset _IUSE_QT_MODULES + +REQUIRED_USE="|| ( pyqt5 pyside2 )" + +# These flags are currently *not* common to both the PySide2 and PyQt5 ebuild +# Disable them for now, please check periodically if this is still up to date. +# bluetooth? ( pyqt5 ) +# dbus? ( pyqt5 ) +# +# 3d? ( pyside2 ) +# charts? ( pyside2 ) +# concurrent? ( pyside2 ) +# datavis? ( pyside2 ) +# scxml? ( pyside2 ) +# script? ( pyside2 ) +# scripttools? ( pyside2 ) + +# WARNING: the obvious solution of using || for PyQt5/pyside2 is not going +# to work. The package only checks whether PyQt5/pyside2 is installed, it does +# not verify whether they have the necessary modules (i.e. satisfy the USE dep). +# +# Webengine is a special case, because PyQt5 provides this in a separate package +# while PySide2 ships it in the same package. +# +# declarative/qml/quick is a special case, because PyQt5 bundles the bindings +# for qml and quick in one flag: declarative PySide2 does not. +# +# The PyQt5 ebuild currently enables xml support unconditionally, the flag is +# added anyway with a (+) to make it future proof if the ebuild were to change +# this behaviour in the future. +# +# The PySide2 ebuild currently enables opengl and serialport support +# unconditionally, the flag is added anyway with a (+) to make it future proof +# if the ebuild were to change this behaviour in the future. +RDEPEND=" + pyqt5? ( + dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5[declarative?,designer?,gui?,help?,location?] + dev-python/PyQt5[multimedia?,network?,opengl?,positioning?] + dev-python/PyQt5[printsupport?,sensors?,serialport?,speech(-)?,sql?,svg?] + dev-python/PyQt5[testlib?,webchannel?,websockets?,widgets?] + dev-python/PyQt5[x11extras?,xml(+)?,xmlpatterns?] + webengine? ( dev-python/PyQtWebEngine[${PYTHON_USEDEP}] ) + ) + pyside2? ( + dev-python/pyside2[${PYTHON_USEDEP}] + dev-python/pyside2[designer?,gui?,help?,location?,multimedia?] + dev-python/pyside2[network?,opengl(+)?,positioning?,printsupport?] + dev-python/pyside2[sensors?,serialport(+)?,speech?,sql?,svg?] + dev-python/pyside2[testlib?,webchannel?,webengine?,websockets?] + dev-python/pyside2[widgets?,x11extras?,xml?,xmlpatterns?] + declarative? ( dev-python/pyside2[qml,quick] ) + ) +" + +# The QtPy testsuite skips tests for bindings that are not installed, so here we +# ensure that everything is available and all tests are run. Note that not +# all flags are available in PyQt5/PySide2, so some tests are still skipped. +BDEPEND=" + test? ( + dev-python/mock[${PYTHON_USEDEP}] + pyqt5? ( + dev-python/PyQt5[${PYTHON_USEDEP}] + dev-python/PyQt5[bluetooth,dbus,declarative,designer,gui,help,location] + dev-python/PyQt5[multimedia,network,opengl,positioning,printsupport] + dev-python/PyQt5[sensors,serialport,speech(-),sql,svg,testlib,webchannel] + dev-python/PyQt5[websockets,widgets,x11extras,xml(+),xmlpatterns] + dev-python/PyQtWebEngine[${PYTHON_USEDEP}] + ) + pyside2? ( + dev-python/pyside2[${PYTHON_USEDEP}] + dev-python/pyside2[3d,charts,concurrent,datavis,designer,gui,help] + dev-python/pyside2[location,multimedia,network,opengl(+),positioning] + dev-python/pyside2[printsupport,qml,quick,script,scripttools,scxml] + dev-python/pyside2[sensors,serialport(+),speech,sql,svg,testlib] + dev-python/pyside2[webchannel,webengine,websockets,widgets,x11extras] + dev-python/pyside2[xml,xmlpatterns] + ) + ) +" + +distutils_enable_tests pytest + +src_prepare() { + default + # Disale Qt for Python implementations that are not selected + if ! use pyqt5; then + sed -i -e "s/from PyQt5.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi + if ! use pyside2; then + sed -i -e "s/from PySide2 import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PySide2.QtCore import/raise ImportError #/" qtpy/__init__.py || die + fi + + # Disable outdated PyQt4 and PySide + sed -i -e "s/from PyQt4.Qt import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PyQt4.QtCore import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PySide import/raise ImportError #/" qtpy/__init__.py || die + sed -i -e "s/from PySide.QtCore import/raise ImportError #/" qtpy/__init__.py || die +} + +src_test() { + virtx python_foreach_impl python_test +} + +python_test() { + if use pyqt5; then + QT_API="pyqt5" epytest + fi + if use pyside2; then + QT_API="pyside2" epytest + fi +} + +pkg_postinst() { + if use pyqt5 && use pyside2; then + ewarn "You have enabled both PyQt5 and PySide2, note that QtPy will default" + ewarn "to PyQt5 unless the QT_API environment variable overrides this." + fi +} diff --git a/dev-python/QtPy/QtPy-1.11.3.ebuild b/dev-python/QtPy/QtPy-1.11.3.ebuild deleted file mode 100644 index dacb05456055..000000000000 --- a/dev-python/QtPy/QtPy-1.11.3.ebuild +++ /dev/null @@ -1,158 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 - -PYTHON_COMPAT=( python3_{6,7,8,9,10} ) - -inherit distutils-r1 virtualx - -DESCRIPTION="Abstraction layer on top of PyQt5 and PySide2 and additional custom QWidgets" -HOMEPAGE="https://github.com/spyder-ide/qtpy/" -SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~arm ~arm64 ~x86" - -_IUSE_QT_MODULES=" - declarative designer gui help location multimedia network opengl - positioning printsupport sensors serialport speech sql svg testlib - webchannel webengine websockets widgets x11extras xml xmlpatterns -" -IUSE="+pyqt5 pyside2 ${_IUSE_QT_MODULES}" -unset _IUSE_QT_MODULES - -# PySide2 does not support python3_10, nor is it likely that it will in the -# future since upstream appears to be focussing on PySide6 for Qt6 instead -# (which is compatible with python3_10). So if we want to use python3_10 -# we have to force disable pyside2. -REQUIRED_USE=" - || ( pyqt5 pyside2 ) - python_targets_python3_10? ( pyqt5 !pyside2 ) -" - -# These flags are currently *not* common to both the PySide2 and PyQt5 ebuild -# Disable them for now, please check periodically if this is still up to date. -# bluetooth? ( pyqt5 ) -# dbus? ( pyqt5 ) -# -# 3d? ( pyside2 ) -# charts? ( pyside2 ) -# concurrent? ( pyside2 ) -# datavis? ( pyside2 ) -# scxml? ( pyside2 ) -# script? ( pyside2 ) -# scripttools? ( pyside2 ) - -# WARNING: the obvious solution of using || for PyQt5/pyside2 is not going -# to work. The package only checks whether PyQt5/pyside2 is installed, it does -# not verify whether they have the necessary modules (i.e. satisfy the USE dep). -# -# Webengine is a special case, because PyQt5 provides this in a separate package -# while PySide2 ships it in the same package. -# -# declarative/qml/quick is a special case, because PyQt5 bundles the bindings -# for qml and quick in one flag: declarative PySide2 does not. -# -# The PyQt5 ebuild currently enables xml support unconditionally, the flag is -# added anyway with a (+) to make it future proof if the ebuild were to change -# this behaviour in the future. -# -# The PySide2 ebuild currently enables opengl and serialport support -# unconditionally, the flag is added anyway with a (+) to make it future proof -# if the ebuild were to change this behaviour in the future. -RDEPEND=" - pyqt5? ( - dev-python/PyQt5[${PYTHON_USEDEP}] - dev-python/PyQt5[declarative?,designer?,gui?,help?,location?] - dev-python/PyQt5[multimedia?,network?,opengl?,positioning?] - dev-python/PyQt5[printsupport?,sensors?,serialport?,speech(-)?,sql?,svg?] - dev-python/PyQt5[testlib?,webchannel?,websockets?,widgets?] - dev-python/PyQt5[x11extras?,xml(+)?,xmlpatterns?] - webengine? ( dev-python/PyQtWebEngine[${PYTHON_USEDEP}] ) - ) - pyside2? ( - $(python_gen_cond_dep ' - dev-python/pyside2[${PYTHON_USEDEP}] - dev-python/pyside2[designer?,gui?,help?,location?,multimedia?] - dev-python/pyside2[network?,opengl(+)?,positioning?,printsupport?] - dev-python/pyside2[sensors?,serialport(+)?,speech?,sql?,svg?] - dev-python/pyside2[testlib?,webchannel?,webengine?,websockets?] - dev-python/pyside2[widgets?,x11extras?,xml?,xmlpatterns?] - declarative? ( dev-python/pyside2[qml,quick] ) - ' python3_{7..9} ) - ) -" - -# The QtPy testsuite skips tests for bindings that are not installed, so here we -# ensure that everything is available and all tests are run. Note that not -# all flags are available in PyQt5/PySide2, so some tests are still skipped. -BDEPEND=" - test? ( - dev-python/mock[${PYTHON_USEDEP}] - pyqt5? ( - dev-python/PyQt5[${PYTHON_USEDEP}] - dev-python/PyQt5[bluetooth,dbus,declarative,designer,gui,help,location] - dev-python/PyQt5[multimedia,network,opengl,positioning,printsupport] - dev-python/PyQt5[sensors,serialport,speech(-),sql,svg,testlib,webchannel] - dev-python/PyQt5[websockets,widgets,x11extras,xml(+),xmlpatterns] - dev-python/PyQtWebEngine[${PYTHON_USEDEP}] - ) - pyside2? ( - $(python_gen_cond_dep ' - dev-python/pyside2[${PYTHON_USEDEP}] - dev-python/pyside2[3d,charts,concurrent,datavis,designer,gui,help] - dev-python/pyside2[location,multimedia,network,opengl(+),positioning] - dev-python/pyside2[printsupport,qml,quick,script,scripttools,scxml] - dev-python/pyside2[sensors,serialport(+),speech,sql,svg,testlib] - dev-python/pyside2[webchannel,webengine,websockets,widgets,x11extras] - dev-python/pyside2[xml,xmlpatterns] - ' python3_{7..9} ) - ) - ) -" - -distutils_enable_tests pytest - -src_prepare() { - default - # Disale Qt for Python implementations that are not selected - if ! use pyqt5; then - sed -i -e "s/from PyQt5.QtCore import/raise ImportError #/" qtpy/__init__.py || die - fi - if ! use pyside2; then - sed -i -e "s/from PySide2 import/raise ImportError #/" qtpy/__init__.py || die - sed -i -e "s/from PySide2.QtCore import/raise ImportError #/" qtpy/__init__.py || die - fi - - # Disable outdated PyQt4 and PySide - sed -i -e "s/from PyQt4.Qt import/raise ImportError #/" qtpy/__init__.py || die - sed -i -e "s/from PyQt4.QtCore import/raise ImportError #/" qtpy/__init__.py || die - sed -i -e "s/from PySide import/raise ImportError #/" qtpy/__init__.py || die - sed -i -e "s/from PySide.QtCore import/raise ImportError #/" qtpy/__init__.py || die -} - -src_test() { - virtx python_foreach_impl python_test -} - -python_test() { - if use pyqt5; then - QT_API="pyqt5" epytest - fi - if use pyside2; then - if [[ "${EPYTHON}" == "python3.10" ]]; then - return - else - QT_API="pyside2" epytest - fi - fi -} - -pkg_postinst() { - if use pyqt5 && use pyside2; then - ewarn "You have enabled both PyQt5 and PySide2, note that QtPy will default" - ewarn "to PyQt5 unless the QT_API environment variable overrides this." - fi -} diff --git a/dev-python/boto/boto-2.49.0-r4.ebuild b/dev-python/boto/boto-2.49.0-r4.ebuild index 0a1dd83fce42..0fa4a9e94db2 100644 --- a/dev-python/boto/boto-2.49.0-r4.ebuild +++ b/dev-python/boto/boto-2.49.0-r4.ebuild @@ -24,6 +24,7 @@ PATCHES=( "${FILESDIR}"/${P}-py3-httplib-strict.patch "${FILESDIR}"/${P}-py3-server-port.patch "${FILESDIR}"/${P}-unbundle-six.patch + "${FILESDIR}"/${P}-py310.patch ) RDEPEND=">=dev-python/six-1.12.0[${PYTHON_USEDEP}]" diff --git a/dev-python/boto/files/boto-2.49.0-py310.patch b/dev-python/boto/files/boto-2.49.0-py310.patch new file mode 100644 index 000000000000..7b427f1f15e3 --- /dev/null +++ b/dev-python/boto/files/boto-2.49.0-py310.patch @@ -0,0 +1,44 @@ +diff --git a/boto/dynamodb/types.py b/boto/dynamodb/types.py +index d9aaaa4c..3f8d8601 100644 +--- a/boto/dynamodb/types.py ++++ b/boto/dynamodb/types.py +@@ -27,7 +27,7 @@ Python types and vice-versa. + import base64 + from decimal import (Decimal, DecimalException, Context, + Clamped, Overflow, Inexact, Underflow, Rounded) +-from collections import Mapping ++from collections.abc import Mapping + from boto.dynamodb.exceptions import DynamoDBNumberError + from boto.compat import filter, map, six, long_type + +diff --git a/boto/mws/connection.py b/boto/mws/connection.py +index 687fae74..3a1f5f80 100644 +--- a/boto/mws/connection.py ++++ b/boto/mws/connection.py +@@ -21,7 +21,7 @@ + import xml.sax + import hashlib + import string +-import collections ++import collections.abc + from boto.connection import AWSQueryConnection + from boto.exception import BotoServerError + import boto.mws.exception +@@ -109,7 +109,7 @@ def http_body(field): + def destructure_object(value, into, prefix, members=False): + if isinstance(value, boto.mws.response.ResponseElement): + destructure_object(value.__dict__, into, prefix, members=members) +- elif isinstance(value, collections.Mapping): ++ elif isinstance(value, collections.abc.Mapping): + for name in value: + if name.startswith('_'): + continue +@@ -117,7 +117,7 @@ def destructure_object(value, into, prefix, members=False): + members=members) + elif isinstance(value, six.string_types): + into[prefix] = value +- elif isinstance(value, collections.Iterable): ++ elif isinstance(value, collections.abc.Iterable): + for index, element in enumerate(value): + suffix = (members and '.member.' or '.') + str(index + 1) + destructure_object(element, into, prefix + suffix, diff --git a/dev-python/httpretty/httpretty-1.1.4.ebuild b/dev-python/httpretty/httpretty-1.1.4.ebuild index 205b688b6291..d06e29ac0e10 100644 --- a/dev-python/httpretty/httpretty-1.1.4.ebuild +++ b/dev-python/httpretty/httpretty-1.1.4.ebuild @@ -16,11 +16,11 @@ KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86" RDEPEND=" dev-python/urllib3[${PYTHON_USEDEP}]" +# eventlet is used only to test compat, and it doesn't support py3.10 # redis skipped as it requires a redis server running -DEPEND=" +BDEPEND=" test? ( >=dev-python/boto3-1.17.72[${PYTHON_USEDEP}] - dev-python/eventlet[${PYTHON_USEDEP}] dev-python/freezegun[${PYTHON_USEDEP}] dev-python/httplib2[${PYTHON_USEDEP}] >=dev-python/httpx-0.18.1[${PYTHON_USEDEP}] diff --git a/dev-python/ipykernel/Manifest b/dev-python/ipykernel/Manifest index 699305938a6c..bf8c87536f41 100644 --- a/dev-python/ipykernel/Manifest +++ b/dev-python/ipykernel/Manifest @@ -1,2 +1,3 @@ DIST ipykernel-6.4.2.tar.gz 121253 BLAKE2B 26f8f94df823dd7a4ac41cac574e70ae98eed64f88bbcd8ce600ce6dfe1c43c224d65b5d0f9586ad05829692142e37fbb685a5d577047791831f6138b8309556 SHA512 56f0a15a1f06628e8f74749e4bad4a65dcc78ba7ff45e4fa5802d232e427e4ec152a6b6697302488d2e05d6b0cfa0cbc106ea2a593ab43de9d9defa9c169d5a6 DIST ipykernel-6.5.0.tar.gz 122962 BLAKE2B fa36ea41d7f2dc8d0d75144f421ea2a72dd50dcda6c6a91f625f18c35ed2ebb950aadfb1715dd57a1fda77bfb49e360bca87f0bd8b9ee8380399d41691db2b9a SHA512 440407818ed6f388f10a727a9be1a2588bf8c9699d66e1b954a1f64575c08b5bddb3978dd13f5ab26220a210ce7177e2be0374d48d3968df681d2d5311ce42d1 +DIST ipykernel-6.6.0.tar.gz 123747 BLAKE2B b1e836ac08e24baf3311e34e1323362bec94f8a59ba4cd824703f03370031226f9af41f864930c6fb59216d185e3c7e8798d6b91e88aa6ca0c214df33c6d7d37 SHA512 bf55e26a4bca0d02f4bbb87ce53a224d22a4765596f0f5d7a6d576bfa100436f676df59fa934e1d6ec66f8d802a1c7f787a9a31b906ecaa1ffd8a77fa3d96127 diff --git a/dev-python/ipykernel/ipykernel-6.4.2-r1.ebuild b/dev-python/ipykernel/ipykernel-6.4.2-r1.ebuild new file mode 100644 index 000000000000..0689a520fd8e --- /dev/null +++ b/dev-python/ipykernel/ipykernel-6.4.2-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) +PYTHON_REQ_USE="threads(+)" +inherit distutils-r1 + +DESCRIPTION="IPython Kernel for Jupyter" +HOMEPAGE="https://github.com/ipython/ipykernel" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 arm arm64 hppa ppc ppc64 ~riscv sparc x86" + +RDEPEND=" + dev-python/ipython_genutils[${PYTHON_USEDEP}] + >=dev-python/debugpy-1.0.0[${PYTHON_USEDEP}] + =dev-python/ipython-7.23.1[${PYTHON_USEDEP}] + =dev-python/traitlets-4.1.0[${PYTHON_USEDEP}] + =www-servers/tornado-4.2[${PYTHON_USEDEP}] + =dev-python/matplotlib-inline-0.1.0[${PYTHON_USEDEP}] + tp_dict; + } diff --git a/dev-python/pyside2/pyside2-5.15.2-r1.ebuild b/dev-python/pyside2/pyside2-5.15.2-r1.ebuild index 5431212ec0f8..09c3ba0f2b17 100644 --- a/dev-python/pyside2/pyside2-5.15.2-r1.ebuild +++ b/dev-python/pyside2/pyside2-5.15.2-r1.ebuild @@ -115,6 +115,8 @@ DEPEND="${RDEPEND} test? ( x11-misc/xvfb-run ) " +PATCHES=( "${FILESDIR}/${P}-python310.patch" ) + src_configure() { # See COLLECT_MODULE_IF_FOUND macros in CMakeLists.txt local mycmakeargs=( diff --git a/dev-python/shiboken2/files/shiboken2-5.15.2-python310.patch b/dev-python/shiboken2/files/shiboken2-5.15.2-python310.patch new file mode 100644 index 000000000000..c4f582ff71de --- /dev/null +++ b/dev-python/shiboken2/files/shiboken2-5.15.2-python310.patch @@ -0,0 +1,104 @@ +diff -upr libshiboken/pep384impl.cpp libshiboken/pep384impl.cpp +--- a/libshiboken/pep384impl.cpp 2020-11-11 14:51:30.000000000 +0200 ++++ b/libshiboken/pep384impl.cpp 2021-12-01 15:17:21.444888977 +0200 +@@ -751,14 +751,14 @@ _Pep_PrivateMangle(PyObject *self, PyObj + #endif // IS_PY2 + Shiboken::AutoDecRef privateobj(PyObject_GetAttr( + reinterpret_cast(Py_TYPE(self)), Shiboken::PyMagicName::name())); +-#ifndef Py_LIMITED_API +- return _Py_Mangle(privateobj, name); +-#else +- // For some reason, _Py_Mangle is not in the Limited API. Why? +- size_t plen = PyUnicode_GET_LENGTH(privateobj); ++ ++ // PYSIDE-1436: _Py_Mangle is no longer exposed; implement it always. ++ // The rest of this function is our own implementation of _Py_Mangle. ++ // Please compare the original function in compile.c . ++ size_t plen = PyUnicode_GET_LENGTH(privateobj.object()); + /* Strip leading underscores from class name */ + size_t ipriv = 0; +- while (PyUnicode_READ_CHAR(privateobj, ipriv) == '_') ++ while (PyUnicode_READ_CHAR(privateobj.object(), ipriv) == '_') + ipriv++; + if (ipriv == plen) { + Py_INCREF(name); +@@ -787,7 +787,6 @@ _Pep_PrivateMangle(PyObject *self, PyObj + if (amount > big_stack) + free(resbuf); + return result; +-#endif // else Py_LIMITED_API + } + + /***************************************************************************** +diff -upr libshiboken/pep384impl.h libshiboken/pep384impl.h +--- a/libshiboken/pep384impl.h 2020-11-11 14:51:30.000000000 +0200 ++++ b/libshiboken/pep384impl.h 2021-12-01 15:13:58.899521842 +0200 +@@ -40,6 +40,11 @@ + #ifndef PEP384IMPL_H + #define PEP384IMPL_H + ++// PYSIDE-1436: Adapt to Python 3.10 ++#if PY_VERSION_HEX < 0x030900A4 ++# define Py_SET_REFCNT(obj, refcnt) ((Py_REFCNT(obj) = (refcnt)), (void)0) ++#endif ++ + extern "C" + { + +@@ -327,7 +332,7 @@ LIBSHIBOKEN_API PyObject *PyRun_String(c + // But this is no problem as we check it's validity for every version. + + #define PYTHON_BUFFER_VERSION_COMPATIBLE (PY_VERSION_HEX >= 0x03030000 && \ +- PY_VERSION_HEX < 0x0309FFFF) ++ PY_VERSION_HEX < 0x030AFFFF) + #if !PYTHON_BUFFER_VERSION_COMPATIBLE + # error Please check the buffer compatibility for this python version! + #endif +diff -upr libshiboken/sbkstring.cpp libshiboken/sbkstring.cpp +--- a/libshiboken/sbkstring.cpp 2020-11-11 14:51:30.000000000 +0200 ++++ b/libshiboken/sbkstring.cpp 2021-12-01 15:14:47.703201473 +0200 +@@ -247,7 +247,7 @@ static void finalizeStaticStrings() + { + auto &set = staticStrings(); + for (PyObject *ob : set) { +- Py_REFCNT(ob) = 1; ++ Py_SET_REFCNT(ob, 1); + Py_DECREF(ob); + } + set.clear(); +diff -upr shibokenmodule/files.dir/shibokensupport/signature/mapping.py shibokenmodule/files.dir/shibokensupport/signature/mapping.py +--- a/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2020-11-11 14:51:30.000000000 +0200 ++++ b/shibokenmodule/files.dir/shibokensupport/signature/mapping.py 2021-12-01 15:15:14.560100869 +0200 +@@ -300,6 +300,7 @@ type_map.update({ + "zero(object)": None, + "zero(str)": "", + "zero(typing.Any)": None, ++ "zero(Any)": None, + }) + + type_map.update({ +diff -upr shibokenmodule/files.dir/shibokensupport/signature/parser.py shibokenmodule/files.dir/shibokensupport/signature/parser.py +--- a/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2020-11-11 14:51:30.000000000 +0200 ++++ b/shibokenmodule/files.dir/shibokensupport/signature/parser.py 2021-12-01 15:25:43.267843740 +0200 +@@ -43,10 +43,11 @@ import sys + import re + import warnings + import types ++import typing + import keyword + import functools + from shibokensupport.signature.mapping import (type_map, update_mapping, +- namespace, typing, _NotCalled, ResultVariable, ArrayLikeVariable) ++ namespace, _NotCalled, ResultVariable, ArrayLikeVariable) + from shibokensupport.signature.lib.tool import (SimpleNamespace, + build_brace_pattern) + +@@ -222,7 +223,7 @@ def _resolve_arraytype(thing, line): + def to_string(thing): + if isinstance(thing, str): + return thing +- if hasattr(thing, "__name__"): ++ if hasattr(thing, "__name__") and thing.__module__ != "typing": + dot = "." in str(thing) + name = get_name(thing) + return thing.__module__ + "." + name if dot else name diff --git a/dev-python/shiboken2/shiboken2-5.15.2-r1.ebuild b/dev-python/shiboken2/shiboken2-5.15.2-r1.ebuild index 25022f443947..159504b55854 100644 --- a/dev-python/shiboken2/shiboken2-5.15.2-r1.ebuild +++ b/dev-python/shiboken2/shiboken2-5.15.2-r1.ebuild @@ -60,6 +60,7 @@ DEPEND="${RDEPEND} " DOCS=( AUTHORS ) +PATCHES=( "${FILESDIR}/${P}-python310.patch" ) # Ensure the path returned by get_llvm_prefix() contains clang as well. llvm_check_deps() { diff --git a/dev-python/snakeoil/Manifest b/dev-python/snakeoil/Manifest index 94199528025e..5564721e6776 100644 --- a/dev-python/snakeoil/Manifest +++ b/dev-python/snakeoil/Manifest @@ -1,2 +1,3 @@ DIST snakeoil-0.9.5.tar.gz 266086 BLAKE2B 635d2d821e47a92a668b2e95364d6587f0f74c21438356e708d6b16ed6c027df39a28f73d261d8ae06eb32de471124cd5ba5df0fc899f59dad5f7d2363391e00 SHA512 0762d90932bdf995160b3410e224660dae2cce327cdc30d5093ca9e3d16d3e910f88e409a87d2d7da211b850f7d0b7d9c70f053462dd9a651e4202b8ca018105 DIST snakeoil-0.9.7.tar.gz 261551 BLAKE2B 6739541d1e40b3ac5c4908e6bb92b5b40957f49119307d6046fd17327394ae0406c01dc10396cb568ceb3757ba3367b930441d08079e9be635eeb6f14bd02e3a SHA512 c2626d8050bf24b4ce3f6fed5c6b8993fa9a5ebb40dd664c7008caffe4b26237edeecd3de8fe90f3a1c5756de3d770c3b9e1ef2e95cc052a5f8fcf22058925f6 +DIST snakeoil-0.9.9.tar.gz 264344 BLAKE2B 160f45dad3a53371063c0c86c186a8baf6370751cf455d84f6e9b9334e6e6f0aa76962803daff031f050d5d8b05b85ebcb05a2b8b9e957babac6e01f127a722f SHA512 bada12556fd2c63fabc8340444f470e08c68ffe56612ae14f08f155c11bd1d4b9657a885cfdee7454faf758309f5287792adf2cf5bd7ab411c7fd6b4982f229e diff --git a/dev-python/snakeoil/snakeoil-0.9.9.ebuild b/dev-python/snakeoil/snakeoil-0.9.9.ebuild new file mode 100644 index 000000000000..cf8f728cfd9e --- /dev/null +++ b/dev-python/snakeoil/snakeoil-0.9.9.ebuild @@ -0,0 +1,31 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) +PYTHON_REQ_USE="threads(+)" +inherit distutils-r1 + +if [[ ${PV} == *9999 ]] ; then + EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" + inherit git-r3 +else + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" +fi + +DESCRIPTION="misc common functionality and useful optimizations" +HOMEPAGE="https://github.com/pkgcore/snakeoil" + +LICENSE="BSD BSD-2 MIT" +SLOT="0" + +RDEPEND=" + dev-python/lazy-object-proxy[${PYTHON_USEDEP}]" +BDEPEND=" + test? ( >=dev-python/pytest-6 )" + +[[ ${PV} == 9999 ]] && BDEPEND+=" dev-python/cython[${PYTHON_USEDEP}]" + +distutils_enable_tests pytest diff --git a/dev-python/snakeoil/snakeoil-9999.ebuild b/dev-python/snakeoil/snakeoil-9999.ebuild index 74842cfb66c8..cf8f728cfd9e 100644 --- a/dev-python/snakeoil/snakeoil-9999.ebuild +++ b/dev-python/snakeoil/snakeoil-9999.ebuild @@ -11,7 +11,7 @@ if [[ ${PV} == *9999 ]] ; then EGIT_REPO_URI="https://github.com/pkgcore/snakeoil.git" inherit git-r3 else - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-macos" SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" fi diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest index d6c6ac781c22..afa3615b7a48 100644 --- a/dev-python/spyder/Manifest +++ b/dev-python/spyder/Manifest @@ -1,8 +1,8 @@ DIST spyder-4.2.5.tar.gz 11539071 BLAKE2B 9d7a98da018aae934803d640995fe2dfa6bbb20bfc7140bd00f5e7a00a09c47922fefd8df84f4b217a50176ee190515da6f4cbf498a03cae68e2ac4f5ec70664 SHA512 081b047a45b7522a69b1b21a221ab5cdef47f87f36ed4423ff63297d205f924c1627517c50622acb2d10efa094bc506fed4ec88f861775d3f58e81ac6ef017ac DIST spyder-5.0.5.tar.gz 20606379 BLAKE2B 52f05ffcf0b6aabdac23a055af1c674c6aa80a7d4f3608779df1d46e0e51de63a71b4e97db286dc92e071cbb44a0dc827aa750d8ca538e6764b5e780f493d615 SHA512 17654ee76eb51c5f5b9f494d009af3d7813f869f27f22ceb8ad8ca96dcedcbcd6b86c7a3895bb63eba3cc60e4a57ab94128abb8d21f05c4672b8bb8d545fe1ff DIST spyder-5.1.5.tar.gz 23849672 BLAKE2B a0a4db5105d4ecbb76bf3c996ea8ea17142bc4f9dfca989098ffdee32b620c711b343746e5dc5dce0c6c0a092a20b47d6bb28181c363f81af394bb8bccb5b6e2 SHA512 2204fe46ad3e4e14bebb51ef6a53074b657f6d970553decd0b2f9d0a7fba71b2f14b4efc3248bb4fb944860e85851e4a8add475ff12c6466e864be75b8cc38bb -DIST spyder-5.2.0.tar.gz 23901277 BLAKE2B ce4846ce054ff484a30d38d836a2da23908e0793cb5ecaeaefe1b4171dcb038facfc19e8d80ca840b538b4effd97c9b8541c9e0af86e74f75acb5237b049c154 SHA512 9298c845a17f348bccbe93451f03aef0d4ee2bde2d3025ac7ed695b3e3c3941cb9852f7c56d676ca022a37020a647c93977e0845fe6f5686dd2598236a9c7d9c +DIST spyder-5.2.1.tar.gz 23903864 BLAKE2B 04b8a81e04bf2f7c6f8a53bc417aeb3708cf67eeeb1bdf7f0b9879dc1848c7c1f48ad8f7bbbce21bef7d12f257f33c69325af77268e9c89d1f4558148fe26929 SHA512 0c2dcdc3a123af48d9d4db35ead0dd773dca7d3c39b763c732709f767d0efa89eed0284a6df2352d8cf2dc202aaccaffa70390e8b3b0b7cb961ff0a8c5ae0244 DIST spyder-docs-5eb83118155a3765de4a0f863b936bcbe73bb7aa.tar.gz 85362596 BLAKE2B 7294dcd0f169958da132b141379b9b1cf497095981a86416fb98d98f98e30a425fe2e628a523785f932bbc06a2ba1ecddb45bae0df009887db928f879e08cdef SHA512 45f45546b83afb3036348e89ee3eded4d8ecee36ce58fe697da14677fbff8fa2dfe170be7385ecf10e1989817780c07b5676d545ee34e87a8f252929ad72882e DIST spyder-docs-78b25754c69a20643258821146e398ad5535c920.tar.gz 69167467 BLAKE2B d2815d552002f329b5fac59329fba3b3b0cd592bcbdacc0878966919e44dbab29548533661e60a1b9b8fd763d57d1e4c2f761782ace1b0a814a5f0cec1f66af9 SHA512 10764367fd5f830d7a3620b9d9e7ec4ab74539c1f48326c0c40f7caff74a50401addc7609fe1558c57dac4649d0a214c0d2d77cecd100bd8574151134e49634d -DIST spyder-docs-879e8a59a522444f1866485290933ed398a30c81.tar.gz 90033271 BLAKE2B fe1f1b2d9284c7d75ed90ebe496dbacc7c5cedb7202c6fa2031f7e5a59675080f5dbbc61293b8ed3e6b676e24fd8896f60c18821f9d31b57595a0f36076b4b8a SHA512 61d099c38efd588689ce1acb9d559fa9d0ca76a6e12cb6ed70b626aa445b9efacb9358393fbf9096987862ee57fb4b52a7b72461b46baea52b8447903fac587c DIST spyder-docs-a3a579ce6e7e42c9d9bbd88ac4e76650b7093e5c.tar.gz 88791917 BLAKE2B bdcf52965b592f4a88ee988afcca71ed73b0499397c8c0b7ff36c38d4408f4b76ff285b3d9739d1c126322fdd8c1c6b93f3017edcaf30563da02d8f509d09fe4 SHA512 2717dad17db836330820578c9082505b7f1126fef2a76284d03a443f3317e3a9a294f69e50f075a29580c4ad1bfbd23dcd02fcef93f32645ae5d52ecfb0b8f10 +DIST spyder-docs-cd0c65d943595da438410559811a5809bf0227a3.tar.gz 90033347 BLAKE2B 11c17ff2e7fd58ca29c927add366490e0e9a218551b2d5b5be8b2e2eaa955cec52983273bfc3630a9b96a76c5650aa2b36a18a44cbcf78ac624758c8f41ed816 SHA512 d0814775026d76156c5c5a3d3a00b764b0803a71416e72c6b974d60dde0b661f06a4cc0940cd3f391a1903a07ceb078918267d332a94e09773906fec4c15eea2 diff --git a/dev-python/spyder/spyder-5.2.0.ebuild b/dev-python/spyder/spyder-5.2.0.ebuild deleted file mode 100644 index 6153a2ea5fd0..000000000000 --- a/dev-python/spyder/spyder-5.2.0.ebuild +++ /dev/null @@ -1,199 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -PYTHON_COMPAT=( python3_{6,7,8,9,10} ) -DISTUTILS_USE_SETUPTOOLS=rdepend - -inherit optfeature xdg distutils-r1 - -# Commit of documentation to fetch -DOCS_PV="879e8a59a522444f1866485290933ed398a30c81" - -DESCRIPTION="The Scientific Python Development Environment" -HOMEPAGE=" - https://www.spyder-ide.org/ - https://github.com/spyder-ide/spyder/ - https://pypi.org/project/spyder/ -" -SRC_URI=" - https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz - https://github.com/spyder-ide/${PN}-docs/archive/${DOCS_PV}.tar.gz -> ${PN}-docs-${DOCS_PV}.tar.gz -" - -LICENSE="MIT" -SLOT="0" -KEYWORDS="~amd64 ~x86" - -# The test suite often hangs or does not work. Technically spyder requires -# pyqt5<13, which we do not have in ::gentoo any more. Likely this is the reason -# many of the tests fail or hang. RESTRICTing because IMO it is not worth the -# several hours I spend every single version bump checking which tests do and -# do not work. Spyder itself works fine with pyqt5>13. -RESTRICT="test" - -RDEPEND=" - >=dev-python/atomicwrites-1.2.0[${PYTHON_USEDEP}] - >=dev-python/chardet-2.0.0[${PYTHON_USEDEP}] - >=dev-util/cookiecutter-1.6.0[${PYTHON_USEDEP}] - >=dev-python/diff-match-patch-20181111[${PYTHON_USEDEP}] - >=dev-python/intervaltree-3.0.2[${PYTHON_USEDEP}] - >=dev-python/jellyfish-0.7[${PYTHON_USEDEP}] - >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}] - >=dev-python/keyring-17.0.0[${PYTHON_USEDEP}] - >=dev-python/nbconvert-4.0[${PYTHON_USEDEP}] - >=dev-python/numpydoc-0.6.0[${PYTHON_USEDEP}] - >=dev-python/pexpect-4.4.0[${PYTHON_USEDEP}] - >=dev-python/pickleshare-0.4[${PYTHON_USEDEP}] - >=dev-python/psutil-5.3[${PYTHON_USEDEP}] - >=dev-python/pygments-2.0[${PYTHON_USEDEP}] - >=dev-python/python-lsp-black-1.0.0[${PYTHON_USEDEP}] - >=dev-python/pyls-spyder-0.4.0[${PYTHON_USEDEP}] - >=dev-python/pyxdg-0.26[${PYTHON_USEDEP}] - >=dev-python/pyzmq-17[${PYTHON_USEDEP}] - ~dev-python/qdarkstyle-3.0.2[${PYTHON_USEDEP}] - >=dev-python/qstylizer-0.1.10[${PYTHON_USEDEP}] - >=dev-python/qtawesome-1.0.2[${PYTHON_USEDEP}] - >=dev-python/qtconsole-5.2.1[${PYTHON_USEDEP}] - =dev-python/QtPy-1.5.0[${PYTHON_USEDEP},svg,webengine] - >=sci-libs/rtree-0.9.7[${PYTHON_USEDEP}] - >=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}] - >=dev-python/spyder-kernels-2.2.0[${PYTHON_USEDEP}] - =dev-python/textdistance-4.2.0[${PYTHON_USEDEP}] - >=dev-python/three-merge-0.1.1[${PYTHON_USEDEP}] - >=dev-python/watchdog-0.10.3[${PYTHON_USEDEP}] -" - -BDEPEND=" - test? ( - dev-python/cython[${PYTHON_USEDEP}] - dev-python/flaky[${PYTHON_USEDEP}] - dev-python/matplotlib[tk,${PYTHON_USEDEP}] - dev-python/pandas[${PYTHON_USEDEP}] - dev-python/pillow[${PYTHON_USEDEP}] - dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}] - dev-python/pytest-mock[${PYTHON_USEDEP}] - dev-python/pytest-ordering[${PYTHON_USEDEP}] - .,]*',/d" \ - -e "/'pyqtwebengine[ 0-9<=>.,]*',/d" \ - -e "/'python-lsp-server\[all\][ 0-9<=>.,]*',/d" \ - -e "/'parso[ 0-9<=>.,]*',/d" \ - -e "/'jedi[ 0-9<=>.,]*',/d" \ - -e "/'pylint[ 0-9<=>.,]*',/d" \ - setup.py || die - sed -i \ - -e "/^PYLS_REQVER/c\PYLS_REQVER = '>=0.0.1'" \ - -e "/^PYLSP_REQVER/c\PYLSP_REQVER = '>=0.0.1'" \ - -e "/^PARSO_REQVER/c\PARSO_REQVER = '>=0.0.1'" \ - -e "/^JEDI_REQVER/c\JEDI_REQVER = '>=0.0.1'" \ - -e "/^PYLINT_REQVER/c\PYLINT_REQVER = '>=0.0.1'" \ - spyder/dependencies.py || die - - # do not check deps, fails because we removed pyqt5 dependency above - sed -i -e 's:test_dependencies_for_spyder_setup_install_requires_in_sync:_&:' \ - spyder/tests/test_dependencies_in_sync.py || die - - # can't check for update, need network - rm spyder/workers/tests/test_update.py || die - - # skip online test - rm spyder/widgets/github/tests/test_github_backend.py || die - - distutils-r1_python_prepare_all -} - -# Calling pytest directly makes the tests freeze after completing even if successful -# Exit code is nonzero even upon success, so can't add || die here test results -# should be checked for success manually -python_test() { - "${EPYTHON}" runtests.py -} - -pkg_postinst() { - xdg_pkg_postinst - - optfeature "2D/3D plotting in the Python and IPython consoles" dev-python/matplotlib - optfeature "View and edit DataFrames and Series in the Variable Explorer" dev-python/pandas - optfeature "View and edit two or three dimensional arrays in the Variable Explorer" dev-python/numpy - optfeature "Symbolic mathematics in the IPython console" dev-python/sympy - optfeature "Import Matlab workspace files in the Variable Explorer" dev-python/scipy - optfeature "Run Cython files in the IPython console" dev-python/cython - optfeature "The hdf5/h5py plugin" dev-python/h5py - optfeature "The line profiler plugin" dev-python/spyder-line-profiler - optfeature "The memory profiler plugin" dev-python/spyder-memory-profiler - # spyder-autopep8 does not have a release (yet) - # and are not compatible with >=spyder-4.0.0 at the moment - # optfeature "The autopep8 plugin" dev-python/spyder-autopep8 - optfeature "Vim key bindings" dev-python/spyder-vim - optfeature "Unittest support" dev-python/spyder-unittest - optfeature "Jupyter notebook support" dev-python/spyder-notebook - optfeature "System terminal inside spyder" dev-python/spyder-terminal - # spyder-reports not yet updated to >=spyder-4.0.0 - # optfeature "Markdown reports using Pweave" dev-python/spyder-reports -} diff --git a/dev-python/spyder/spyder-5.2.1.ebuild b/dev-python/spyder/spyder-5.2.1.ebuild new file mode 100644 index 000000000000..78d65a47b8c7 --- /dev/null +++ b/dev-python/spyder/spyder-5.2.1.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) +DISTUTILS_USE_SETUPTOOLS=rdepend + +inherit optfeature xdg distutils-r1 + +# Commit of documentation to fetch +DOCS_PV="cd0c65d943595da438410559811a5809bf0227a3" + +DESCRIPTION="The Scientific Python Development Environment" +HOMEPAGE=" + https://www.spyder-ide.org/ + https://github.com/spyder-ide/spyder/ + https://pypi.org/project/spyder/ +" +SRC_URI=" + https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://github.com/spyder-ide/${PN}-docs/archive/${DOCS_PV}.tar.gz -> ${PN}-docs-${DOCS_PV}.tar.gz +" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~x86" + +# The test suite often hangs or does not work. Technically spyder requires +# pyqt5<13, which we do not have in ::gentoo any more. Likely this is the reason +# many of the tests fail or hang. RESTRICTing because IMO it is not worth the +# several hours I spend every single version bump checking which tests do and +# do not work. Spyder itself works fine with pyqt5>13. +RESTRICT="test" + +RDEPEND=" + >=dev-python/atomicwrites-1.2.0[${PYTHON_USEDEP}] + >=dev-python/chardet-2.0.0[${PYTHON_USEDEP}] + >=dev-util/cookiecutter-1.6.0[${PYTHON_USEDEP}] + >=dev-python/diff-match-patch-20181111[${PYTHON_USEDEP}] + >=dev-python/intervaltree-3.0.2[${PYTHON_USEDEP}] + >=dev-python/jellyfish-0.7[${PYTHON_USEDEP}] + >=dev-python/jsonschema-3.2.0[${PYTHON_USEDEP}] + >=dev-python/keyring-17.0.0[${PYTHON_USEDEP}] + >=dev-python/nbconvert-4.0[${PYTHON_USEDEP}] + >=dev-python/numpydoc-0.6.0[${PYTHON_USEDEP}] + >=dev-python/pexpect-4.4.0[${PYTHON_USEDEP}] + >=dev-python/pickleshare-0.4[${PYTHON_USEDEP}] + >=dev-python/psutil-5.3[${PYTHON_USEDEP}] + >=dev-python/pygments-2.0[${PYTHON_USEDEP}] + >=dev-python/python-lsp-black-1.0.0[${PYTHON_USEDEP}] + >=dev-python/pyls-spyder-0.4.0[${PYTHON_USEDEP}] + >=dev-python/pyxdg-0.26[${PYTHON_USEDEP}] + >=dev-python/pyzmq-17[${PYTHON_USEDEP}] + ~dev-python/qdarkstyle-3.0.2[${PYTHON_USEDEP}] + >=dev-python/qstylizer-0.1.10[${PYTHON_USEDEP}] + >=dev-python/qtawesome-1.0.2[${PYTHON_USEDEP}] + >=dev-python/qtconsole-5.2.1[${PYTHON_USEDEP}] + =dev-python/QtPy-1.5.0[${PYTHON_USEDEP},svg,webengine] + >=sci-libs/rtree-0.9.7[${PYTHON_USEDEP}] + >=dev-python/sphinx-0.6.6[${PYTHON_USEDEP}] + >=dev-python/spyder-kernels-2.2.0[${PYTHON_USEDEP}] + =dev-python/textdistance-4.2.0[${PYTHON_USEDEP}] + >=dev-python/three-merge-0.1.1[${PYTHON_USEDEP}] + >=dev-python/watchdog-0.10.3[${PYTHON_USEDEP}] +" + +BDEPEND=" + test? ( + dev-python/cython[${PYTHON_USEDEP}] + dev-python/flaky[${PYTHON_USEDEP}] + dev-python/matplotlib[tk,${PYTHON_USEDEP}] + dev-python/pandas[${PYTHON_USEDEP}] + dev-python/pillow[${PYTHON_USEDEP}] + dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}] + dev-python/pytest-mock[${PYTHON_USEDEP}] + dev-python/pytest-ordering[${PYTHON_USEDEP}] + .,]*',/d" \ + -e "/'pyqtwebengine[ 0-9<=>.,]*',/d" \ + -e "/'python-lsp-server\[all\][ 0-9<=>.,]*',/d" \ + -e "/'parso[ 0-9<=>.,]*',/d" \ + -e "/'jedi[ 0-9<=>.,]*',/d" \ + -e "/'pylint[ 0-9<=>.,]*',/d" \ + setup.py || die + sed -i \ + -e "/^PYLS_REQVER/c\PYLS_REQVER = '>=0.0.1'" \ + -e "/^PYLSP_REQVER/c\PYLSP_REQVER = '>=0.0.1'" \ + -e "/^PARSO_REQVER/c\PARSO_REQVER = '>=0.0.1'" \ + -e "/^JEDI_REQVER/c\JEDI_REQVER = '>=0.0.1'" \ + -e "/^PYLINT_REQVER/c\PYLINT_REQVER = '>=0.0.1'" \ + spyder/dependencies.py || die + + # do not check deps, fails because we removed pyqt5 dependency above + sed -i -e 's:test_dependencies_for_spyder_setup_install_requires_in_sync:_&:' \ + spyder/tests/test_dependencies_in_sync.py || die + + # can't check for update, need network + rm spyder/workers/tests/test_update.py || die + + # skip online test + rm spyder/widgets/github/tests/test_github_backend.py || die + + distutils-r1_python_prepare_all +} + +# Calling pytest directly makes the tests freeze after completing even if successful +# Exit code is nonzero even upon success, so can't add || die here test results +# should be checked for success manually +python_test() { + "${EPYTHON}" runtests.py +} + +pkg_postinst() { + xdg_pkg_postinst + + optfeature "2D/3D plotting in the Python and IPython consoles" dev-python/matplotlib + optfeature "View and edit DataFrames and Series in the Variable Explorer" dev-python/pandas + optfeature "View and edit two or three dimensional arrays in the Variable Explorer" dev-python/numpy + optfeature "Symbolic mathematics in the IPython console" dev-python/sympy + optfeature "Import Matlab workspace files in the Variable Explorer" dev-python/scipy + optfeature "Run Cython files in the IPython console" dev-python/cython + optfeature "The hdf5/h5py plugin" dev-python/h5py + optfeature "The line profiler plugin" dev-python/spyder-line-profiler + optfeature "The memory profiler plugin" dev-python/spyder-memory-profiler + # spyder-autopep8 does not have a release (yet) + # and are not compatible with >=spyder-4.0.0 at the moment + # optfeature "The autopep8 plugin" dev-python/spyder-autopep8 + optfeature "Vim key bindings" dev-python/spyder-vim + optfeature "Unittest support" dev-python/spyder-unittest + optfeature "Jupyter notebook support" dev-python/spyder-notebook + optfeature "System terminal inside spyder" dev-python/spyder-terminal + # spyder-reports not yet updated to >=spyder-4.0.0 + # optfeature "Markdown reports using Pweave" dev-python/spyder-reports +} diff --git a/dev-python/symengine/Manifest b/dev-python/symengine/Manifest index dadd6715653c..376b7f28db12 100644 --- a/dev-python/symengine/Manifest +++ b/dev-python/symengine/Manifest @@ -1 +1,2 @@ DIST symengine.py-0.7.2.tar.gz 107747 BLAKE2B cacd11f316df5132b6bbee356fd7a4c2d3fa30e80b144c5d8982fec1b6856ca3c839ef7a6f8daf4e70a27462fc43870d05fa76ece085e5577a1672b8e9910127 SHA512 afde47e5f6274a02c6ca138a6316bf0f7ec1c7585acaf4ab19ba849280dfee9ba937c3f8f5117e70f2a6377224f6dab9757958272f4facbafdc11d7965ee7a84 +DIST symengine.py-0.8.1.tar.gz 108857 BLAKE2B ff721982af3448d63074e599d56d38eef3002b4e8073fc22740ae61b288b863ed856d849675cbb1286f1b9bdd2263aa1e531635a0b074a7de6909a604e6b57e9 SHA512 73af12f686dcb495aef06964c76e6f31ef242bbba2e3b2fd545594fbf1902487edd021cc25b0a8324a7ac014e90ee85f64e388e092d36e8796db4c1ed53e75c7 diff --git a/dev-python/symengine/symengine-0.8.1.ebuild b/dev-python/symengine/symengine-0.8.1.ebuild new file mode 100644 index 000000000000..312ddc112159 --- /dev/null +++ b/dev-python/symengine/symengine-0.8.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) + +inherit distutils-r1 + +MY_P=${PN}.py-${PV} +DESCRIPTION="Python wrappers to the symengine C++ library" +HOMEPAGE="https://github.com/symengine/symengine.py/" +SRC_URI=" + https://github.com/symengine/symengine.py/archive/v${PV}.tar.gz + -> ${MY_P}.tar.gz" +S="${WORKDIR}/${MY_P}" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux" + +BDEPEND=" + dev-util/cmake + dev-python/cython[${PYTHON_USEDEP}] + test? ( + dev-python/sympy[${PYTHON_USEDEP}] + ) +" +# See bug #786582 for symengine constraint +RDEPEND=" + dev-python/numpy[${PYTHON_USEDEP}] + >=sci-libs/symengine-$(ver_cut 1-2) +" + +distutils_enable_tests pytest + +# the C library installs the same docs +DOCS=() + +src_prepare() { + default + + # Don't install tests + > "${S}/symengine/tests/CMakeLists.txt" || die +} + +python_test() { + cd "${BUILD_DIR}" || die + epytest +} + +python_install() { + distutils-r1_python_install + python_optimize +} diff --git a/dev-python/sympy/Manifest b/dev-python/sympy/Manifest index eae3e3ac1e7c..f549c6299d54 100644 --- a/dev-python/sympy/Manifest +++ b/dev-python/sympy/Manifest @@ -1 +1,2 @@ DIST sympy-1.8.tar.gz 7167842 BLAKE2B 878c6daf0584c9da54f82b9c68c62715792db428ab4ebfb355f0368c52edb254947d1ce1919e651279b767295ecb00a76b8cbbaa1fbe9c97915221c7403c3ded SHA512 61141e1d0a6105e725fb415edbdf981b3aa95debcfe73f9da5ca36afc7a70e91b5c28ed45454054c1b9a8d45e42bfe724e5b20da717746c301fd095da17f4db7 +DIST sympy-1.9.tar.gz 7476018 BLAKE2B 5ab9920bf6d16eaed3af30100e7593551a4dce29dc76605ccf87d55e8a7c14514b5733c9456353403cfc96008fd5d046ce04f44bb7e69f844d545bdd3e55e7e0 SHA512 139712219ba6bf420ba89b3f8d086ab8883c5ab965e9308ba9ee665ac3ac69a9b16fa30c6f5dfbc77dd34873ff3ff95c0d058954d7f9d853f5e9537efc24dd3c diff --git a/dev-python/sympy/sympy-1.9.ebuild b/dev-python/sympy/sympy-1.9.ebuild new file mode 100644 index 000000000000..59f4bb9d28e8 --- /dev/null +++ b/dev-python/sympy/sympy-1.9.ebuild @@ -0,0 +1,61 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{6,7,8,9,10} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Computer Algebra System in pure Python" +HOMEPAGE="https://www.sympy.org/" +SRC_URI="https://github.com/sympy/sympy/archive/${P}.tar.gz" +S="${WORKDIR}/${PN}-${P}" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="aesara examples imaging ipython latex mathml opengl pdf png pyglet symengine test texmacs" + +RDEPEND=" + dev-python/mpmath[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + aesara? ( dev-python/aesara[${PYTHON_USEDEP}] ) + imaging? ( dev-python/pillow[${PYTHON_USEDEP}] ) + ipython? ( dev-python/ipython[${PYTHON_USEDEP}] ) + latex? ( + virtual/latex-base + dev-texlive/texlive-fontsextra + png? ( app-text/dvipng ) + pdf? ( app-text/ghostscript-gpl ) + ) + mathml? ( dev-libs/libxml2:2[${PYTHON_USEDEP}] ) + opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] ) + pyglet? ( dev-python/pyglet[${PYTHON_USEDEP}] ) + symengine? ( dev-python/symengine[${PYTHON_USEDEP}] ) + texmacs? ( app-office/texmacs ) +" + +distutils_enable_tests pytest + +python_test() { + virtx esetup.py test +} + +python_install_all() { + local DOCS=( AUTHORS README.md ) + + if use examples; then + dodoc -r examples + docompress -x /usr/share/doc/${PF}/examples + fi + + distutils-r1_python_install_all + + if use texmacs; then + exeinto /usr/libexec/TeXmacs/bin/ + doexe data/TeXmacs/bin/tm_sympy + insinto /usr/share/TeXmacs/plugins/sympy/ + doins -r data/TeXmacs/progs + fi +} -- cgit v1.3.1