diff options
Diffstat (limited to 'dev-python/nbconvert/nbconvert-7.0.0.ebuild')
-rw-r--r-- | dev-python/nbconvert/nbconvert-7.0.0.ebuild | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/dev-python/nbconvert/nbconvert-7.0.0.ebuild b/dev-python/nbconvert/nbconvert-7.0.0.ebuild new file mode 100644 index 000000000000..4328f080d184 --- /dev/null +++ b/dev-python/nbconvert/nbconvert-7.0.0.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=hatchling +PYTHON_COMPAT=( python3_{8..10} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Converting Jupyter Notebooks" +HOMEPAGE=" + https://nbconvert.readthedocs.io/ + https://github.com/jupyter/nbconvert/ + https://pypi.org/project/nbconvert/ +" +SRC_URI=" + mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz +" + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +RDEPEND=" + dev-python/lxml[${PYTHON_USEDEP}] + dev-python/beautifulsoup4[${PYTHON_USEDEP}] + dev-python/bleach[${PYTHON_USEDEP}] + dev-python/defusedxml[${PYTHON_USEDEP}] + $(python_gen_cond_dep ' + >=dev-python/importlib_metadata-3.6[${PYTHON_USEDEP}] + ' 3.8 3.9) + >=dev-python/jinja-3.0[${PYTHON_USEDEP}] + >=dev-python/jupyter_core-4.7[${PYTHON_USEDEP}] + dev-python/jupyterlab_pygments[${PYTHON_USEDEP}] + >=dev-python/markupsafe-2.0[${PYTHON_USEDEP}] + >=dev-python/mistune-2.0.2[${PYTHON_USEDEP}] + >=dev-python/nbclient-0.5.0[${PYTHON_USEDEP}] + >=dev-python/nbformat-5.1[${PYTHON_USEDEP}] + dev-python/packaging[${PYTHON_USEDEP}] + >=dev-python/pandocfilters-1.4.1[${PYTHON_USEDEP}] + >=dev-python/pygments-2.4.1[${PYTHON_USEDEP}] + dev-python/tinycss2[${PYTHON_USEDEP}] + >=dev-python/traitlets-5.1.1[${PYTHON_USEDEP}] +" +BDEPEND=" + dev-python/notebook[${PYTHON_USEDEP}] + test? ( + dev-python/ipykernel[${PYTHON_USEDEP}] + >=dev-python/ipywidgets-7[${PYTHON_USEDEP}] + ) +" + +distutils_enable_tests pytest + +src_prepare() { + mkdir share/templates/classic/static || die + # tries to refetch stuff even if it's already present + sed -e 's:css = .*:raise PermissionError("You shall not fetch!"):' \ + -i hatch_build.py || die + distutils-r1_src_prepare +} + +python_configure() { + cp "${BROOT}$(python_get_sitedir)/notebook/static/style/style.min.css" \ + share/templates/classic/static/style.css || die +} + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # Missing pyppeteer for now + # TODO: Doesn't skip? + nbconvert/exporters/tests/test_webpdf.py + # Needs pyppeteer too + 'nbconvert/tests/test_nbconvertapp.py::TestNbConvertApp::test_webpdf_with_chromium' + # TODO + nbconvert/exporters/tests/test_qtpng.py::TestQtPNGExporter::test_export + nbconvert/tests/test_nbconvertapp.py::TestNbConvertApp::test_convert_full_qualified_name + nbconvert/tests/test_nbconvertapp.py::TestNbConvertApp::test_post_processor + ) + + nonfatal epytest -p no:xvfb --pyargs nbconvert || die +} + +pkg_postinst() { + if ! has_version app-text/pandoc ; then + einfo "Pandoc is required for converting to formats other than Python," + einfo "HTML, and Markdown. If you need this functionality, install" + einfo "app-text/pandoc." + fi +} |