Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/spyder/, dev-python/spyder/files/
Date: Wed, 19 Feb 2020 07:34:34
Message-Id: 1582095758.b9d393eb0462256fcf945c103e71dcddcbd6646d.juippis@gentoo
1 commit: b9d393eb0462256fcf945c103e71dcddcbd6646d
2 Author: Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
3 AuthorDate: Mon Jan 13 13:59:44 2020 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Wed Feb 19 07:02:38 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b9d393eb
7
8 dev-python/spyder: Version bump 4.0.1
9
10 Bug: https://bugs.gentoo.org/702458
11 Bug: https://bugs.gentoo.org/702768
12 Package-Manager: Portage-2.3.84, Repoman-2.3.20
13 Signed-off-by: Andrew Ammerlaan <andrewammerlaan <AT> riseup.net>
14 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
15
16 dev-python/spyder/Manifest | 2 +
17 dev-python/spyder/files/spyder-4.0.1-build.patch | 35 ++++++
18 dev-python/spyder/metadata.xml | 8 ++
19 dev-python/spyder/spyder-4.0.1.ebuild | 147 +++++++++++++++++++++++
20 4 files changed, 192 insertions(+)
21
22 diff --git a/dev-python/spyder/Manifest b/dev-python/spyder/Manifest
23 index e07e5f12112..14caae6bac5 100644
24 --- a/dev-python/spyder/Manifest
25 +++ b/dev-python/spyder/Manifest
26 @@ -3,3 +3,5 @@ DIST spyder-3.2.8.tar.gz 3414627 BLAKE2B 95f85f719eba20eb9fed5183cfac582b040abc9
27 DIST spyder-3.3.0.tar.gz 2782654 BLAKE2B e85ef52109c723d6b1b011f0e81ab3a46d3e0e6ba72fd34a1eda9ed650c9e03532e8fd72e05365367f62035a6f03d6ec32d35314c54438bf639070c7bebfb4d6 SHA512 53a2b438afe245092eda4d202d2453b5b93d6682aafcdb00bf251ddcdb30cee2d81d8adadbe23fa36f64fa5f917b327690cb8f9e2cf5c0da2841b5eda648a26f
28 DIST spyder-3.3.1.tar.gz 2786730 BLAKE2B d906b5750cb620db41aec514a64d132b9ee5a992047828faffe11af5abd22d0cec7b876dfe79c6d378804373e8db5c661214f5730833e7599bf13b80d4dc16d6 SHA512 91d648a2717b5d5386115ba800fdd98884e609b213007dbaa09c7d16335f1b9ec3d0bc6b32d1677db8c2704e990e70eaa04d6d1efc800008cddfa511105e9c68
29 DIST spyder-4.0.0b1.tar.gz 2986758 BLAKE2B 7fa918a569ed26d1d71ea7bce725f1b7d5db54badf3fb7bad1265d93f2ebdf25b1246acefb4f8517a6f34968bf8f12331958afcf72fc3c162e0d06d9dc4d4c72 SHA512 5751434b7ffac4d1e0c535f8a842656c3a306ed3d8a275a06a0eb57d3cd9bb36d01341723159292cba8616fcadc7157387fdb334b2ab0efbc1bb6b920102015a
30 +DIST spyder-4.0.1-docs.tar.gz 2257654 BLAKE2B a1d245c018d551e639d5acc862e09132ba80411c745430a5d16ff137c12919ec0b6e32d180aa629ba8dce3776826d754a4e843647b642086565e7a00c6dca94a SHA512 a62a1fd39833d827a2f9be357a2ed82eca37cc096a20a91030af8746d401b517d76a4f6a036c76eaa8355a88db6b2be8009e6b58d5539b57c43091677e93e62c
31 +DIST spyder-4.0.1.tar.gz 10783565 BLAKE2B 5d264991b9bfc8118ef91f929269a300932cb0078b70c54613836c4337dc41214aa4ab81dacb4a535aaa6dea6b1eb591e25c7071664dc102e218373a0d7f8824 SHA512 9249a3b4a73ebe7a485d75fe2bea68bfa106c8ad0710120a6e05a43e3e2a65f9076904d1104180e925ab282b1d9da712c3509e0a5a7cfe3bd5ea8a95a1617bdd
32
33 diff --git a/dev-python/spyder/files/spyder-4.0.1-build.patch b/dev-python/spyder/files/spyder-4.0.1-build.patch
34 new file mode 100644
35 index 00000000000..7463550fc16
36 --- /dev/null
37 +++ b/dev-python/spyder/files/spyder-4.0.1-build.patch
38 @@ -0,0 +1,35 @@
39 +diff -r -U3 spyder-4.0.0b1.orig/setup.py spyder-4.0.0b1/setup.py
40 +--- spyder-4.0.0b1.orig/setup.py 2018-08-12 04:35:49.000000000 +0700
41 ++++ spyder-4.0.0b1/setup.py 2018-08-14 20:25:32.827148778 +0700
42 +@@ -112,21 +107,6 @@
43 +
44 +
45 + #==============================================================================
46 +-# Make Linux detect Spyder desktop file
47 +-#==============================================================================
48 +-class MyInstallData(install_data):
49 +- def run(self):
50 +- install_data.run(self)
51 +- if sys.platform.startswith('linux'):
52 +- try:
53 +- subprocess.call(['update-desktop-database'])
54 +- except:
55 +- print("ERROR: unable to update desktop database",
56 +- file=sys.stderr)
57 +-CMDCLASS = {'install_data': MyInstallData}
58 +-
59 +-
60 +-#==============================================================================
61 + # Main scripts
62 + #==============================================================================
63 + # NOTE: the '[...]_win_post_install.py' script is installed even on non-Windows
64 +@@ -210,8 +190,7 @@
65 + 'Intended Audience :: Science/Research',
66 + 'Intended Audience :: Developers',
67 + 'Topic :: Scientific/Engineering',
68 +- 'Topic :: Software Development :: Widget Sets'],
69 +- cmdclass=CMDCLASS)
70 ++ 'Topic :: Software Development :: Widget Sets'])
71 +
72 +
73 + #==============================================================================
74
75 diff --git a/dev-python/spyder/metadata.xml b/dev-python/spyder/metadata.xml
76 index b6e901261f7..91250b2b501 100644
77 --- a/dev-python/spyder/metadata.xml
78 +++ b/dev-python/spyder/metadata.xml
79 @@ -9,6 +9,14 @@
80 <email>python@g.o</email>
81 <name>Python</name>
82 </maintainer>
83 + <maintainer type="person">
84 + <email>andrewammerlaan@××××××.net</email>
85 + <name>Andrew Ammerlaan</name>
86 + </maintainer>
87 + <maintainer type="project">
88 + <email>proxy-maint@g.o</email>
89 + <name>Proxy Maintainers</name>
90 + </maintainer>
91 <longdescription lang="en">
92 Spyder is a powerful scientific environment written in Python,
93 for Python,and designed by and for scientists, engineers and data analysts.
94
95 diff --git a/dev-python/spyder/spyder-4.0.1.ebuild b/dev-python/spyder/spyder-4.0.1.ebuild
96 new file mode 100644
97 index 00000000000..dc360929321
98 --- /dev/null
99 +++ b/dev-python/spyder/spyder-4.0.1.ebuild
100 @@ -0,0 +1,147 @@
101 +# Copyright 1999-2020 Gentoo Authors
102 +# Distributed under the terms of the GNU General Public License v2
103 +
104 +EAPI=7
105 +
106 +PYTHON_COMPAT=( python3_{6,7} )
107 +
108 +inherit eutils distutils-r1 virtualx xdg-utils
109 +
110 +# Commit of documentation to fetch
111 +DOCS_PV="6177401"
112 +
113 +DESCRIPTION="The Scientific Python Development Environment"
114 +HOMEPAGE="
115 + https://www.spyder-ide.org/
116 + https://github.com/spyder-ide/spyder/
117 + https://pypi.org/project/spyder/"
118 +SRC_URI="https://github.com/spyder-ide/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz
119 + https://github.com/spyder-ide/${PN}-docs/archive/${DOCS_PV}.tar.gz -> ${P}-docs.tar.gz"
120 +
121 +LICENSE="MIT"
122 +SLOT="0"
123 +KEYWORDS="~amd64 ~x86"
124 +
125 +RDEPEND="
126 + dev-python/atomicwrites[${PYTHON_USEDEP}]
127 + >=dev-python/chardet-2.0.0[${PYTHON_USEDEP}]
128 + dev-python/cloudpickle[${PYTHON_USEDEP}]
129 + dev-python/diff-match-patch[${PYTHON_USEDEP}]
130 + dev-python/intervaltree[${PYTHON_USEDEP}]
131 + ~dev-python/jedi-0.14.1[${PYTHON_USEDEP}]
132 + dev-python/keyring[${PYTHON_USEDEP}]
133 + dev-python/nbconvert[${PYTHON_USEDEP}]
134 + dev-python/numpydoc[${PYTHON_USEDEP}]
135 + dev-python/pexpect[${PYTHON_USEDEP}]
136 + dev-python/pickleshare[${PYTHON_USEDEP}]
137 + dev-python/psutil[${PYTHON_USEDEP}]
138 + >=dev-python/pygments-2.0[${PYTHON_USEDEP}]
139 + dev-python/pylint[${PYTHON_USEDEP}]
140 + >=dev-python/python-language-server-0.31.2[${PYTHON_USEDEP}]
141 + >=dev-python/pyxdg-0.26[${PYTHON_USEDEP}]
142 + dev-python/pyzmq[${PYTHON_USEDEP}]
143 + >=dev-python/qdarkstyle-2.7[${PYTHON_USEDEP}]
144 + >=dev-python/qtawesome-0.5.7[${PYTHON_USEDEP}]
145 + >=dev-python/qtconsole-4.6.0[${PYTHON_USEDEP}]
146 + >=dev-python/QtPy-1.5.0[${PYTHON_USEDEP},svg,webengine]
147 + dev-python/sphinx[${PYTHON_USEDEP}]
148 + >=dev-python/spyder-kernels-1.8.1[${PYTHON_USEDEP}]
149 + dev-python/watchdog[${PYTHON_USEDEP}]"
150 +
151 +DEPEND="test? (
152 + dev-python/coverage[${PYTHON_USEDEP}]
153 + dev-python/cython[${PYTHON_USEDEP}]
154 + dev-python/flaky[${PYTHON_USEDEP}]
155 + dev-python/matplotlib[tk,${PYTHON_USEDEP}]
156 + dev-python/mock[${PYTHON_USEDEP}]
157 + dev-python/pandas[${PYTHON_USEDEP}]
158 + dev-python/pillow[${PYTHON_USEDEP}]
159 + dev-python/pytest-lazy-fixture[${PYTHON_USEDEP}]
160 + dev-python/pytest-mock[${PYTHON_USEDEP}]
161 + dev-python/pytest-qt[${PYTHON_USEDEP}]
162 + sci-libs/scipy[${PYTHON_USEDEP}]
163 + dev-python/sympy[${PYTHON_USEDEP}] )"
164 +
165 +# Based on the courtesy of Arfrever
166 +# This patch removes a call to update-desktop-database during build
167 +# This fails because access is denied to this command during build
168 +PATCHES=( "${FILESDIR}"/${P}-build.patch )
169 +
170 +distutils_enable_tests pytest
171 +distutils_enable_sphinx docs/doc --no-autodoc
172 +
173 +python_prepare_all() {
174 + # move docs into workdir
175 + mv ../spyder-docs-${DOCS_PV}* docs || die
176 +
177 + # some tests still depend on QtPy[webkit] which is going to be removed
178 + # spyder itself works fine without webkit
179 + rm spyder/widgets/tests/test_browser.py || die
180 + rm spyder/plugins/onlinehelp/tests/test_pydocgui.py || die
181 + rm spyder/plugins/ipythonconsole/tests/test_ipythonconsole.py || die
182 + rm spyder/plugins/ipythonconsole/tests/test_ipython_config_dialog.py || die
183 + rm spyder/plugins/help/tests/test_widgets.py || die
184 + rm spyder/plugins/help/tests/test_plugin.py || die
185 + rm spyder/app/tests/test_mainwindow.py || die
186 +
187 + # skip uri (online) tests
188 + rm spyder/plugins/editor/widgets/tests/test_goto.py || die
189 +
190 + # skip online test
191 + rm spyder/widgets/github/tests/test_github_backend.py || die
192 +
193 + # Assertion error, looks like an online test
194 + rm spyder/utils/tests/test_vcs.py || die
195 +
196 + # No idea why this fails, no error just stops and dumps core
197 + sed -i -e 's:test_arrayeditor_edit_complex_array:_&:' \
198 + spyder/plugins/variableexplorer/widgets/tests/test_arrayeditor.py || die
199 +
200 + # Assertion error, can't connect/remember inside ebuild environment
201 + sed -i -e 's:test_connection_dialog_remembers_input_with_password:_&:' \
202 + -e 's:test_connection_dialog_remembers_input_with_ssh_passphrase:_&:' \
203 + spyder/plugins/ipythonconsole/widgets/tests/test_kernelconnect.py || die
204 +
205 + # Assertion error (pytest-qt), maybe we can't do shortcuts inside ebuild environment?
206 + sed -i -e 's:test_transform_to_uppercase_shortcut:_&:' \
207 + -e 's:test_transform_to_lowercase_shortcut:_&:' \
208 + -e 's:test_go_to_line_shortcut:_&:' \
209 + -e 's:test_delete_line_shortcut:_&:' \
210 + spyder/plugins/editor/widgets/tests/test_shortcuts.py || die
211 +
212 + distutils-r1_python_prepare_all
213 +}
214 +
215 +python_test() {
216 + virtx pytest -vv
217 +}
218 +
219 +pkg_postinst() {
220 + xdg_desktop_database_update
221 + xdg_icon_cache_update
222 +
223 + elog "To get additional features, optional runtime dependencies may be installed:"
224 + optfeature "2D/3D plotting in the Python and IPython consoles" dev-python/matplotlib
225 + optfeature "View and edit DataFrames and Series in the Variable Explorer" dev-python/pandas
226 + optfeature "View and edit two or three dimensional arrays in the Variable Explorer" dev-python/numpy
227 + optfeature "Symbolic mathematics in the IPython console" dev-python/sympy
228 + optfeature "Import Matlab workspace files in the Variable Explorer" sci-libs/scipy
229 + optfeature "Run Cython files in the IPython console" dev-python/cython
230 + optfeature "The hdf5/h5py plugin" dev-python/h5py
231 + optfeature "The line profiler plugin" dev-python/spyder-line-profiler
232 + optfeature "The memory profiler plugin" dev-python/spyder-memory-profiler
233 + # spyder-autopep8 and spyder-vim do not have a release (yet)
234 + # and are not compatible with >=spyder-4.0.0 at the moment
235 + # optfeature "The autopep8 plugin" dev-python/spyder-autopep8
236 + # optfeature "Vim key bindings" dev-python/spyder-vim
237 + optfeature "Unittest support" dev-python/spyder-unittest
238 + optfeature "Jupyter notebook support" dev-python/spyder-notebook
239 + optfeature "System terminal inside spyder" dev-python/spyder-terminal
240 + # spyder-reports not yet updated to >=spyder-4.0.0
241 + # optfeature "Markdown reports using Pweave" dev-python/spyder-reports
242 +}
243 +
244 +pkg_postrm() {
245 + xdg_desktop_database_update
246 + xdg_icon_cache_update
247 +}