diff options
Diffstat (limited to 'dev-python/sympy/sympy-1.12.1.ebuild')
-rw-r--r-- | dev-python/sympy/sympy-1.12.1.ebuild | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/dev-python/sympy/sympy-1.12.1.ebuild b/dev-python/sympy/sympy-1.12.1.ebuild new file mode 100644 index 000000000000..b5b261a645c7 --- /dev/null +++ b/dev-python/sympy/sympy-1.12.1.ebuild @@ -0,0 +1,104 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +DISTUTILS_USE_PEP517=setuptools +PYTHON_COMPAT=( pypy3 python3_{10..12} ) + +inherit distutils-r1 virtualx + +DESCRIPTION="Computer Algebra System in pure Python" +HOMEPAGE=" + https://www.sympy.org/ + https://github.com/sympy/sympy/ + https://pypi.org/project/sympy/ +" +# pypi sdist misses some files, notably top-level conftest.py, as of 1.12.1_rc1 +SRC_URI=" + https://github.com/sympy/sympy/archive/${PV/_/}.tar.gz + -> ${P/_/}.gh.tar.gz +" +S=${WORKDIR}/${P/_/} + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~loong ~riscv ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos" +IUSE="aesara examples imaging ipython latex mathml opengl pdf png pyglet symengine texmacs" + +RDEPEND=" + dev-python/mpmath[${PYTHON_USEDEP}] + dev-python/pexpect[${PYTHON_USEDEP}] + aesara? ( + $(python_gen_cond_dep ' + dev-python/aesara[${PYTHON_USEDEP}] + ' python3_{10..11}) + ) + 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-python/lxml[${PYTHON_USEDEP}] ) + opengl? ( dev-python/pyopengl[${PYTHON_USEDEP}] ) + pyglet? ( dev-python/pyglet[${PYTHON_USEDEP}] ) + symengine? ( dev-python/symengine[${PYTHON_USEDEP}] ) + texmacs? ( app-office/texmacs ) +" + +EPYTEST_XDIST=1 +distutils_enable_tests pytest + +src_test() { + virtx distutils-r1_src_test +} + +python_test() { + local EPYTEST_DESELECT=( + # require old version of antlr4 + sympy/parsing/tests/test_autolev.py + sympy/parsing/tests/test_latex.py + # crash due to assertions in sys-devel/llvm[debug] + sympy/parsing/tests/test_c_parser.py + + # TODO: pytest? + sympy/solvers/ode/tests/test_systems.py::test_linear_3eq_order1_type4_long_check + sympy/solvers/ode/tests/test_systems.py::test_linear_3eq_order1_type4_long_dsolve_dotprodsimp + + # either very slow or hanging + sympy/solvers/ode/tests/test_systems.py::test_linear_new_order1_type2_de_lorentz_slow_check + sympy/integrals/tests/test_failing_integrals.py::test_issue_15227 + sympy/matrices/tests/test_matrices.py::test_pinv_rank_deficient_when_diagonalization_fails + sympy/solvers/ode/tests/test_systems.py::test_nonlinear_3eq_order1_type1 + sympy/solvers/ode/tests/test_systems.py::test_nonlinear_3eq_order1_type3 + + # known broken + # https://github.com/sympy/sympy/issues/26321 + sympy/solvers/tests/test_simplex.py::test_lp + ) + + local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 + nonfatal epytest --veryquickcheck || + die -n "Tests failed with ${EPYTHON}" +} + +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 +} |