diff options
| author | Palica <palica+gitlab@liguros.net> | 2020-06-23 22:35:08 +0200 |
|---|---|---|
| committer | Palica <palica+gitlab@liguros.net> | 2020-06-23 22:35:08 +0200 |
| commit | ecdac123787b96ce6649f0f91da12ea6458cc2b1 (patch) | |
| tree | b89c74d9e6fe6e8aebc4c77bcbeb4ab73214127d /dev-python/notebook | |
| parent | 1be72aa41cf41dedadeecf59dca9f01de6381f5e (diff) | |
| download | baldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.tar.gz baldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.tar.xz baldeagleos-repo-ecdac123787b96ce6649f0f91da12ea6458cc2b1.zip | |
Updating liguros repo
Diffstat (limited to 'dev-python/notebook')
| -rw-r--r-- | dev-python/notebook/Manifest | 4 | ||||
| -rw-r--r-- | dev-python/notebook/files/notebook-5.0.0-example-execution.patch | 27 | ||||
| -rw-r--r-- | dev-python/notebook/files/notebook-5.0.0-setupbase.py.patch | 43 | ||||
| -rw-r--r-- | dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch | 44 | ||||
| -rw-r--r-- | dev-python/notebook/files/notebook-5.7.0-no-mathjax.patch | 44 | ||||
| -rw-r--r-- | dev-python/notebook/files/notebook-6.0.3-py39.patch | 73 | ||||
| -rw-r--r-- | dev-python/notebook/metadata.xml | 16 | ||||
| -rw-r--r-- | dev-python/notebook/notebook-5.0.0.ebuild | 93 | ||||
| -rw-r--r-- | dev-python/notebook/notebook-5.2.1.ebuild | 103 | ||||
| -rw-r--r-- | dev-python/notebook/notebook-5.7.8.ebuild | 113 | ||||
| -rw-r--r-- | dev-python/notebook/notebook-6.0.3.ebuild | 84 |
11 files changed, 644 insertions, 0 deletions
diff --git a/dev-python/notebook/Manifest b/dev-python/notebook/Manifest new file mode 100644 index 000000000000..a1a17fd3222c --- /dev/null +++ b/dev-python/notebook/Manifest @@ -0,0 +1,4 @@ +DIST notebook-5.0.0.tar.gz 11481080 BLAKE2B 3cc483d338ca22c6b4d7199100875e9425f90e1a7059c016cec07500f0558c437db5f7e367a5c4441520deb68fa891be31c07cd93e858c872a1f12d893530479 SHA512 fbee29cc554f36e94b1fe9804187a50581e840cfb5884bcdf2fef82ad9ae3ae0e2082ea0056f815bfa2a1c2f203679169155e61e53253aa2e9004a43ff7fbcae +DIST notebook-5.2.1.tar.gz 12458130 BLAKE2B f10a91fd79064fb09889c4ee30a84a0b34321d3a89f950609df9a90106ed4af75268cc1b087d0229882575d548b7b2b78632aa97452f89fc67910586911fc467 SHA512 defdb08e37dcec9fe799d0b03dc8dc2339f37c9417e4b138ba83b98433dd77f0dea3d83e07368e67f18155af1a67bbabea21ccd061d8a926b6b084fd25960576 +DIST notebook-5.7.8.tar.gz 13371684 BLAKE2B 077a94ec7085ae7325a972efb58f8d7eee5a541186522402084dfa55e335163fee30e68476265e9825c3623408989b1a0782ff6a5af71af4d8ea5e6e308c3a45 SHA512 1cccb23ce6810df85b3b600c0e2e5d6599be5551ea5243c7b1a9c73ed45c34dea8b16b0fbb3624aefb9eda848bce2fdcea1f3add8df3f00a90c13a9b01ea3f07 +DIST notebook-6.0.3.tar.gz 14048151 BLAKE2B ad4e433accc90acc13efc8005146dd8bcf2e645c104473f0e71d8d9fab80d7e128eb4e070b8aa04aee77e0d6115499e61beb841d94cf66b0e098dc50d3916cbd SHA512 fb56d0e10da3f8673e9578cdf04759dc3247547af6be4f479e9b183f3c5bd0a891fbfede187e0f5aca5c6ffdb9cae6ada23fe6dd159aca2d9cdf967f1f150922 diff --git a/dev-python/notebook/files/notebook-5.0.0-example-execution.patch b/dev-python/notebook/files/notebook-5.0.0-example-execution.patch new file mode 100644 index 000000000000..4516cadf11f6 --- /dev/null +++ b/dev-python/notebook/files/notebook-5.0.0-example-execution.patch @@ -0,0 +1,27 @@ +commit db90e16d17acc778efdfff6dca69767b47b60cbd +Author: Benda Xu <heroxbd@gentoo.org> +Date: Sat Aug 19 17:31:38 2017 +0900 + + d/s/examples/N/Importing Notebooks.ipynb: disable execution. + + This notebook example includes writing to the directory of another + module, usually resulting in a doc build failure. Therefore we + disable its execution by nbsphinx. + + Closes: #2372 + See-Also: https://bugs.gentoo.org/show_bug.cgi?id=626860 + +diff --git a/docs/source/examples/Notebook/Importing Notebooks.ipynb b/docs/source/examples/Notebook/Importing Notebooks.ipynb +index ee42ad526..d6db5395e 100644 +--- a/docs/source/examples/Notebook/Importing Notebooks.ipynb ++++ b/docs/source/examples/Notebook/Importing Notebooks.ipynb +@@ -511,6 +511,9 @@ + ], + "metadata": { + "gist_id": "6011986", ++ "nbsphinx": { ++ "execute": "never" ++ }, + "kernelspec": { + "display_name": "Python 3", + "language": "python", diff --git a/dev-python/notebook/files/notebook-5.0.0-setupbase.py.patch b/dev-python/notebook/files/notebook-5.0.0-setupbase.py.patch new file mode 100644 index 000000000000..4dc55d937cae --- /dev/null +++ b/dev-python/notebook/files/notebook-5.0.0-setupbase.py.patch @@ -0,0 +1,43 @@ +Disable bundled mathjax. + +Patch by Marius Brehler +--- a/setupbase.py ++++ b/setupbase.py +@@ -165,37 +165,6 @@ def find_package_data(): + if f.endswith(('.js', '.css')): + static_data.append(pjoin(parent, f)) + +- # Trim mathjax +- mj = lambda *path: pjoin(components, 'MathJax', *path) +- static_data.extend([ +- mj('MathJax.js'), +- mj('config', 'TeX-AMS-MML_HTMLorMML-full.js'), +- mj('config', 'Safe.js'), +- ]) +- +- trees = [] +- mj_out = mj('jax', 'output') +- +- if os.path.exists(mj_out): +- for output in os.listdir(mj_out): +- path = pjoin(mj_out, output) +- static_data.append(pjoin(path, '*.js')) +- autoload = pjoin(path, 'autoload') +- if os.path.isdir(autoload): +- trees.append(autoload) +- +- for tree in trees + [ +- mj('localization'), # limit to en? +- mj('fonts', 'HTML-CSS', 'STIX-Web', 'woff'), +- mj('extensions'), +- mj('jax', 'input', 'TeX'), +- mj('jax', 'output', 'HTML-CSS', 'fonts', 'STIX-Web'), +- mj('jax', 'output', 'SVG', 'fonts', 'STIX-Web'), +- ]: +- for parent, dirs, files in os.walk(tree): +- for f in files: +- static_data.append(pjoin(parent, f)) +- + os.chdir(os.path.join('tests',)) + js_tests = glob('*.js') + glob('*/*.js') + diff --git a/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch b/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch new file mode 100644 index 000000000000..97be84cb364a --- /dev/null +++ b/dev-python/notebook/files/notebook-5.2.1-setupbase.py.patch @@ -0,0 +1,44 @@ +Disable bundled mathjax. + +Patch by Marius Brehler. +--- a/setupbase.py ++++ b/setupbase.py +@@ -168,38 +168,6 @@ def find_package_data(): + if f.endswith(('.js', '.css')): + static_data.append(pjoin(parent, f)) + +- # Trim mathjax +- mj = lambda *path: pjoin(components, 'MathJax', *path) +- static_data.extend([ +- mj('MathJax.js'), +- mj('config', 'TeX-AMS-MML_HTMLorMML-full.js'), +- mj('config', 'Safe.js'), +- ]) +- +- trees = [] +- mj_out = mj('jax', 'output') +- +- if os.path.exists(mj_out): +- for output in os.listdir(mj_out): +- path = pjoin(mj_out, output) +- static_data.append(pjoin(path, '*.js')) +- autoload = pjoin(path, 'autoload') +- if os.path.isdir(autoload): +- trees.append(autoload) +- +- for tree in trees + [ +- mj('localization'), # limit to en? +- mj('fonts', 'HTML-CSS', 'STIX-Web', 'woff'), +- mj('extensions'), +- mj('jax', 'input', 'TeX'), +- mj('jax', 'output', 'HTML-CSS', 'fonts', 'STIX-Web'), +- mj('jax', 'output', 'SVG', 'fonts', 'STIX-Web'), +- mj('jax', 'element', 'mml'), +- ]: +- for parent, dirs, files in os.walk(tree): +- for f in files: +- static_data.append(pjoin(parent, f)) +- + os.chdir(os.path.join('tests',)) + js_tests = glob('*.js') + glob('*/*.js') + diff --git a/dev-python/notebook/files/notebook-5.7.0-no-mathjax.patch b/dev-python/notebook/files/notebook-5.7.0-no-mathjax.patch new file mode 100644 index 000000000000..f9ce5c3a9e39 --- /dev/null +++ b/dev-python/notebook/files/notebook-5.7.0-no-mathjax.patch @@ -0,0 +1,44 @@ +Disable bundled mathjax. + +Patch by Marius Brehler. +--- notebook-5.7.0.orig/setupbase.py ++++ notebook-5.7.0/setupbase.py +@@ -169,38 +169,6 @@ def find_package_data(): + if f.endswith(('.js', '.css')): + static_data.append(pjoin(parent, f)) + +- # Trim mathjax +- mj = lambda *path: pjoin(components, 'MathJax', *path) +- static_data.extend([ +- mj('MathJax.js'), +- mj('config', 'TeX-AMS-MML_HTMLorMML-full.js'), +- mj('config', 'Safe.js'), +- ]) +- +- trees = [] +- mj_out = mj('jax', 'output') +- +- if os.path.exists(mj_out): +- for output in os.listdir(mj_out): +- path = pjoin(mj_out, output) +- static_data.append(pjoin(path, '*.js')) +- autoload = pjoin(path, 'autoload') +- if os.path.isdir(autoload): +- trees.append(autoload) +- +- for tree in trees + [ +- mj('localization'), # limit to en? +- mj('fonts', 'HTML-CSS', 'STIX-Web', 'woff'), +- mj('extensions'), +- mj('jax', 'input', 'TeX'), +- mj('jax', 'output', 'HTML-CSS', 'fonts', 'STIX-Web'), +- mj('jax', 'output', 'SVG', 'fonts', 'STIX-Web'), +- mj('jax', 'element', 'mml'), +- ]: +- for parent, dirs, files in os.walk(tree): +- for f in files: +- static_data.append(pjoin(parent, f)) +- + os.chdir(os.path.join('tests',)) + js_tests = glob('*.js') + glob('*/*.js') + diff --git a/dev-python/notebook/files/notebook-6.0.3-py39.patch b/dev-python/notebook/files/notebook-6.0.3-py39.patch new file mode 100644 index 000000000000..2b0fc134b58a --- /dev/null +++ b/dev-python/notebook/files/notebook-6.0.3-py39.patch @@ -0,0 +1,73 @@ +From c01b2cc014af5c3f8c1e00907a985edc19cad8d7 Mon Sep 17 00:00:00 2001 +From: Karthikeyan Singaravelan <tir.karthi@gmail.com> +Date: Wed, 22 Jan 2020 00:41:58 +0530 +Subject: [PATCH] Remove deprecated encoding parameter for Python 3.9 + compatibility. + +--- + notebook/tests/test_gateway.py | 13 ++++++------- + 1 file changed, 6 insertions(+), 7 deletions(-) + +diff --git a/notebook/tests/test_gateway.py b/notebook/tests/test_gateway.py +index d0cc84b09d..116b3db673 100644 +--- a/notebook/tests/test_gateway.py ++++ b/notebook/tests/test_gateway.py +@@ -176,7 +176,7 @@ def test_gateway_get_kernelspecs(self): + with mocked_gateway: + response = self.request('GET', '/api/kernelspecs') + self.assertEqual(response.status_code, 200) +- content = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ content = json.loads(response.content.decode('utf-8')) + kspecs = content.get('kernelspecs') + self.assertEqual(len(kspecs), 2) + self.assertEqual(kspecs.get('kspec_bar').get('name'), 'kspec_bar') +@@ -186,7 +186,7 @@ def test_gateway_get_named_kernelspec(self): + with mocked_gateway: + response = self.request('GET', '/api/kernelspecs/kspec_foo') + self.assertEqual(response.status_code, 200) +- kspec_foo = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ kspec_foo = json.loads(response.content.decode('utf-8')) + self.assertEqual(kspec_foo.get('name'), 'kspec_foo') + + response = self.request('GET', '/api/kernelspecs/no_such_spec') +@@ -257,7 +257,7 @@ def create_session(self, kernel_name): + # Create the kernel... (also tests get_kernel) + response = self.request('POST', '/api/sessions', **kwargs) + self.assertEqual(response.status_code, 201) +- model = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ model = json.loads(response.content.decode('utf-8')) + self.assertEqual(model.get('path'), nb_path) + kernel_id = model.get('kernel').get('id') + # ensure its in the running_kernels and name matches. +@@ -286,7 +286,7 @@ def is_kernel_running(self, kernel_id): + # Get list of running kernels + response = self.request('GET', '/api/kernels') + self.assertEqual(response.status_code, 200) +- kernels = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ kernels = json.loads(response.content.decode('utf-8')) + self.assertEqual(len(kernels), len(running_kernels)) + for model in kernels: + if model.get('id') == kernel_id: +@@ -305,7 +305,7 @@ def create_kernel(self, kernel_name): + + response = self.request('POST', '/api/kernels', **kwargs) + self.assertEqual(response.status_code, 201) +- model = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ model = json.loads(response.content.decode('utf-8')) + kernel_id = model.get('id') + # ensure its in the running_kernels and name matches. + running_kernel = running_kernels.get(kernel_id) +@@ -330,7 +330,7 @@ def restart_kernel(self, kernel_id): + with mocked_gateway: + response = self.request('POST', '/api/kernels/' + kernel_id + '/restart') + self.assertEqual(response.status_code, 200) +- model = json.loads(response.content.decode('utf-8'), encoding='utf-8') ++ model = json.loads(response.content.decode('utf-8')) + restarted_kernel_id = model.get('id') + # ensure its in the running_kernels and name matches. + running_kernel = running_kernels.get(restarted_kernel_id) +@@ -345,4 +345,3 @@ def delete_kernel(self, kernel_id): + response = self.request('DELETE', '/api/kernels/' + kernel_id) + self.assertEqual(response.status_code, 204) + self.assertEqual(response.reason, 'No Content') +- diff --git a/dev-python/notebook/metadata.xml b/dev-python/notebook/metadata.xml new file mode 100644 index 000000000000..4ad788392b77 --- /dev/null +++ b/dev-python/notebook/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>sci@gentoo.org</email> + <name>Gentoo Science Project</name> + </maintainer> + <maintainer type="project"> + <email>python@gentoo.org</email> + <name>Python</name> + </maintainer> + <upstream> + <remote-id type="pypi">notebook</remote-id> + </upstream> + <origin>gentoo-staging</origin> +</pkgmetadata> diff --git a/dev-python/notebook/notebook-5.0.0.ebuild b/dev-python/notebook/notebook-5.0.0.ebuild new file mode 100644 index 000000000000..d4c0e2123f49 --- /dev/null +++ b/dev-python/notebook/notebook-5.0.0.ebuild @@ -0,0 +1,93 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python3_{6,7} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Jupyter Interactive Notebook" +HOMEPAGE="https://jupyter.org" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64 ~arm64 x86" +IUSE="doc test" +RESTRICT="!test? ( test )" +RDEPEND=" + >=dev-libs/mathjax-2.4 + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/terminado-0.3.3[${PYTHON_USEDEP}] + >=www-servers/tornado-4.0[${PYTHON_USEDEP}] + dev-python/ipython_genutils[${PYTHON_USEDEP}] + >=dev-python/traitlets-4.2.1[${PYTHON_USEDEP}] + dev-python/jupyter_core[${PYTHON_USEDEP}] + dev-python/jupyter_client[${PYTHON_USEDEP}] + dev-python/nbformat[${PYTHON_USEDEP}] + >=dev-python/nbconvert-4.2.0[${PYTHON_USEDEP}] + dev-python/ipykernel[${PYTHON_USEDEP}] + " +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + >=dev-python/nose-0.10.1[${PYTHON_USEDEP}] + dev-python/nose_warnings_filters[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/coverage[${PYTHON_USEDEP}] + ) + doc? ( + app-text/pandoc + >=dev-python/ipython-4.0.0[${PYTHON_USEDEP}] + dev-python/nbsphinx[${PYTHON_USEDEP}] + ) + " + +PATCHES=( "${FILESDIR}/${P}"-setupbase.py.patch + "${FILESDIR}/${P}"-example-execution.patch ) + +python_prepare_all() { + sed \ + -e "/import setup/s:$:\nimport setuptools:g" \ + -i setup.py || die + + # disable bundled mathjax + sed -i 's/^.*MathJax.*$//' bower.json || die + + # Prevent un-needed download during build + if use doc; then + sed \ + -e "/^ 'sphinx.ext.intersphinx',/d" \ + -i docs/source/conf.py || die + fi + + distutils-r1_python_prepare_all +} + +python_compile_all() { + if use doc; then + emake -C docs html + HTML_DOCS=( docs/build/html/. ) + fi +} + +python_test() { + nosetests \ + --verbosity=3 \ + notebook || die +} + +python_install() { + distutils-r1_python_install + + ln -sf \ + "${EPREFIX}/usr/share/mathjax" \ + "${D}$(python_get_sitedir)/notebook/static/components/MathJax" || die +} + +pkg_preinst() { + # remove old mathjax folder if present + rm -rf "${EROOT%/}"/usr/lib*/python*/site-packages/notebook/static/components/MathJax || die +} diff --git a/dev-python/notebook/notebook-5.2.1.ebuild b/dev-python/notebook/notebook-5.2.1.ebuild new file mode 100644 index 000000000000..3faa47b3b2ee --- /dev/null +++ b/dev-python/notebook/notebook-5.2.1.ebuild @@ -0,0 +1,103 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python3_6 ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Jupyter Interactive Notebook" +HOMEPAGE="https://jupyter.org" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" +IUSE="doc test" +RESTRICT="!test? ( test )" +RDEPEND=" + >=dev-libs/mathjax-2.4 + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/terminado-0.3.3[${PYTHON_USEDEP}] + >=www-servers/tornado-4.0[${PYTHON_USEDEP}] + dev-python/ipython_genutils[${PYTHON_USEDEP}] + >=dev-python/traitlets-4.2.1[${PYTHON_USEDEP}] + >=dev-python/jupyter_core-4.4.0[${PYTHON_USEDEP}] + dev-python/jupyter_client[${PYTHON_USEDEP}] + dev-python/nbformat[${PYTHON_USEDEP}] + >=dev-python/nbconvert-4.2.0[${PYTHON_USEDEP}] + dev-python/ipykernel[${PYTHON_USEDEP}] + " +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + >=dev-python/nose-0.10.1[${PYTHON_USEDEP}] + dev-python/nose_warnings_filters[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + dev-python/coverage[${PYTHON_USEDEP}] + ) + doc? ( + app-text/pandoc + >=dev-python/ipython-4.0.0[${PYTHON_USEDEP}] + >=dev-python/sphinx-1.3.6[${PYTHON_USEDEP}] + dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}] + =dev-python/nbsphinx-0.2.14[${PYTHON_USEDEP}] + test? ( + dev-python/nbval[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) + ) + " + +PATCHES=( "${FILESDIR}/${P}"-setupbase.py.patch ) + +python_prepare_all() { + sed \ + -e "/import setup/s:$:\nimport setuptools:g" \ + -i setup.py || die + + # disable bundled mathjax + sed -i 's/^.*MathJax.*$//' bower.json || die + + # Prevent un-needed download during build + if use doc; then + sed \ + -e "/^ 'sphinx.ext.intersphinx',/d" \ + -i docs/source/conf.py || die + fi + + distutils-r1_python_prepare_all +} + +python_compile_all() { + if use doc; then + addwrite /dev/dri/card0 + emake -C docs html + HTML_DOCS=( docs/build/html/. ) + fi +} + +python_test() { + nosetests \ + --verbosity=3 \ + notebook || die + + if use doc && python_is_python3; then + py.test --nbval --current-env docs || die + fi +} + +python_install() { + distutils-r1_python_install + + ln -sf \ + "${EPREFIX}/usr/share/mathjax" \ + "${D}$(python_get_sitedir)/notebook/static/components/MathJax" || die +} + +pkg_preinst() { + # remove old mathjax folder if present + rm -rf "${EROOT%/}"/usr/lib*/python*/site-packages/notebook/static/components/MathJax || die +} diff --git a/dev-python/notebook/notebook-5.7.8.ebuild b/dev-python/notebook/notebook-5.7.8.ebuild new file mode 100644 index 000000000000..4c9dc036bc2d --- /dev/null +++ b/dev-python/notebook/notebook-5.7.8.ebuild @@ -0,0 +1,113 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Jupyter Interactive Notebook" +HOMEPAGE="https://jupyter.org" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="amd64" +IUSE="doc test" +RESTRICT="!test? ( test )" +RDEPEND=" + >=dev-libs/mathjax-2.4 + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/terminado-0.8.1[${PYTHON_USEDEP}] + >=www-servers/tornado-4.0[${PYTHON_USEDEP}] + dev-python/ipython_genutils[${PYTHON_USEDEP}] + >=dev-python/traitlets-4.2.1[${PYTHON_USEDEP}] + >=dev-python/jupyter_core-4.4.0[${PYTHON_USEDEP}] + >=dev-python/pyzmq-17[${PYTHON_USEDEP}] + >=dev-python/jupyter_client-5.2[${PYTHON_USEDEP}] + dev-python/nbformat[${PYTHON_USEDEP}] + >=dev-python/nbconvert-4.2.0[${PYTHON_USEDEP}] + dev-python/ipykernel[${PYTHON_USEDEP}] + dev-python/send2trash[${PYTHON_USEDEP}] + dev-python/prometheus_client[${PYTHON_USEDEP}]" + +# sphinx 2+ seems to have a problem with its github plugin. temporarily adding +# a version constraint. +DEPEND="${RDEPEND} + dev-python/setuptools[${PYTHON_USEDEP}] + test? ( + dev-python/nose[${PYTHON_USEDEP}] + dev-python/nose-exclude[${PYTHON_USEDEP}] + dev-python/nose_warnings_filters[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ) + doc? ( + app-text/pandoc + dev-python/ipython[${PYTHON_USEDEP}] + >=dev-python/sphinx-1.3.6[${PYTHON_USEDEP}] + <dev-python/sphinx-2[${PYTHON_USEDEP}] + dev-python/sphinxcontrib-github-alt[${PYTHON_USEDEP}] + dev-python/sphinx_rtd_theme[${PYTHON_USEDEP}] + dev-python/nbsphinx[${PYTHON_USEDEP}] + test? ( + dev-python/nbval[${PYTHON_USEDEP}] + dev-python/pytest[${PYTHON_USEDEP}] + ) + ) + " + +PATCHES=( "${FILESDIR}/${PN}"-5.7.0-no-mathjax.patch ) + +python_prepare_all() { + sed \ + -e "/import setup/s:$:\nimport setuptools:g" \ + -i setup.py || die + + # disable bundled mathjax + sed -i 's/^.*MathJax.*$//' bower.json || die + + # Prevent un-needed download during build + if use doc; then + sed \ + -e "/^ 'sphinx.ext.intersphinx',/d" \ + -i docs/source/conf.py || die + fi + + distutils-r1_python_prepare_all +} + +python_compile_all() { + if use doc; then + addwrite /dev/dri/card0 + emake -C docs html + HTML_DOCS=( docs/build/html/. ) + fi +} + +python_test() { + nosetests \ + --verbosity=3 \ + --exclude-dir notebook/tests/selenium \ + notebook || die + + # These doc-based tests are broken on gentoo for permission-related errors + # (they try to write files in system's ipython folder). Disabled for now. + # if use doc; then + # pytest --nbval --current-env docs || die + # fi +} + +python_install() { + distutils-r1_python_install + + ln -sf \ + "${EPREFIX}/usr/share/mathjax" \ + "${D}$(python_get_sitedir)/notebook/static/components/MathJax" || die +} + +pkg_preinst() { + # remove old mathjax folder if present + rm -rf "${EROOT}"/usr/lib*/python*/site-packages/notebook/static/components/MathJax || die +} diff --git a/dev-python/notebook/notebook-6.0.3.ebuild b/dev-python/notebook/notebook-6.0.3.ebuild new file mode 100644 index 000000000000..a92fb17d8b10 --- /dev/null +++ b/dev-python/notebook/notebook-6.0.3.ebuild @@ -0,0 +1,84 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DISTUTILS_USE_SETUPTOOLS=rdepend +PYTHON_COMPAT=( python3_{6..9} ) +PYTHON_REQ_USE="threads(+)" + +inherit distutils-r1 + +DESCRIPTION="Jupyter Interactive Notebook" +HOMEPAGE="https://jupyter.org" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm64 ~x86" + +RDEPEND=" + >=dev-libs/mathjax-2.4 + dev-python/jinja[${PYTHON_USEDEP}] + >=dev-python/terminado-0.8.1[${PYTHON_USEDEP}] + >=www-servers/tornado-5.0[${PYTHON_USEDEP}] + dev-python/ipython_genutils[${PYTHON_USEDEP}] + >=dev-python/traitlets-4.2.1[${PYTHON_USEDEP}] + >=dev-python/jupyter_core-4.6.1[${PYTHON_USEDEP}] + >=dev-python/pyzmq-17[${PYTHON_USEDEP}] + >=dev-python/jupyter_client-5.3.4[${PYTHON_USEDEP}] + dev-python/nbformat[${PYTHON_USEDEP}] + >=dev-python/nbconvert-4.2.0[${PYTHON_USEDEP}] + dev-python/ipykernel[${PYTHON_USEDEP}] + dev-python/send2trash[${PYTHON_USEDEP}] + dev-python/prometheus_client[${PYTHON_USEDEP}]" + +# sphinx 2+ seems to have a problem with its github plugin. temporarily adding +# a version constraint. +BDEPEND=" + test? ( + dev-python/nose[${PYTHON_USEDEP}] + dev-python/nose_warnings_filters[${PYTHON_USEDEP}] + dev-python/requests[${PYTHON_USEDEP}] + ) + " + +PATCHES=( + "${FILESDIR}/${PN}"-5.7.0-no-mathjax.patch + "${FILESDIR}"/${P}-py39.patch +) + +distutils_enable_tests pytest + +python_prepare_all() { + # disable bundled mathjax + sed -i 's/^.*MathJax.*$//' bower.json || die + + # require geckodriver + rm -r notebook/tests/selenium || die + # trash doesn't seem to work for us + sed -e 's:test_delete:_&:' \ + -i notebook/services/contents/tests/test_manager.py || die + sed -e 's:test_checkpoints_follow_file:_&:' \ + -e 's:test_delete:_&:' \ + -i notebook/services/contents/tests/test_contents_api.py || die + # TODO: high magic, SRE module mismatch + sed -e 's:test_connections:_&:' \ + -e 's:test_main_kernel_handler:_&:' \ + -i notebook/services/kernels/tests/test_kernels_api.py || die + + distutils-r1_python_prepare_all +} + +python_install() { + distutils-r1_python_install + + ln -sf \ + "${EPREFIX}/usr/share/mathjax" \ + "${D}$(python_get_sitedir)/notebook/static/components/MathJax" || die +} + +pkg_preinst() { + # remove old mathjax folder if present + rm -rf "${EROOT}"/usr/lib*/python*/site-packages/notebook/static/components/MathJax || die +} |
