1
0
Fork 0
TheChymera-overlay/dev-vcs/dandi-cli/dandi-cli-0.38.0.ebuild

88 lines
2.5 KiB
Bash

# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{8..10} )
inherit distutils-r1
DESCRIPTION="DANDI command line client to facilitate common operations"
HOMEPAGE="https://github.com/dandi/dandi-cli"
SRC_URI="https://github.com/dandi/dandi-cli/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="test etelemetry"
RDEPEND="
dev-python/appdirs[${PYTHON_USEDEP}]
dev-python/click[${PYTHON_USEDEP}]
dev-python/click-didyoumean[${PYTHON_USEDEP}]
~dev-python/dandi-schema-0.6.0[${PYTHON_USEDEP}]
dev-python/fasteners[${PYTHON_USEDEP}]
dev-python/fscacher[${PYTHON_USEDEP}]
dev-python/humanize[${PYTHON_USEDEP}]
dev-python/interleave[${PYTHON_USEDEP}]
dev-python/joblib[${PYTHON_USEDEP}]
dev-python/keyring[${PYTHON_USEDEP}]
dev-python/keyrings_alt[${PYTHON_USEDEP}]
dev-python/packaging[${PYTHON_USEDEP}]
dev-python/pycryptodome[${PYTHON_USEDEP}]
>=dev-python/pydantic-1.9.0[${PYTHON_USEDEP}]
dev-python/pynwb[${PYTHON_USEDEP}]
dev-python/pyout[${PYTHON_USEDEP}]
dev-python/python-dateutil[${PYTHON_USEDEP}]
dev-python/requests[${PYTHON_USEDEP}]
dev-python/ruamel-yaml[${PYTHON_USEDEP}]
dev-python/semantic_version[${PYTHON_USEDEP}]
dev-python/tenacity[${PYTHON_USEDEP}]
dev-python/wheel[${PYTHON_USEDEP}]
dev-python/zarr[${PYTHON_USEDEP}]
"
DEPEND="
test? (
dev-python/anys[${PYTHON_USEDEP}]
dev-python/responses[${PYTHON_USEDEP}]
dev-python/pyfakefs[${PYTHON_USEDEP}]
dev-python/pytest-mock[${PYTHON_USEDEP}]
media-libs/opencv[ffmpeg,${PYTHON_USEDEP}]
)
"
# Upstream might be amenable to dropping opencv:
# https://github.com/dandi/dandi-cli/issues/944
# Some tests require deep copy with git history
# https://github.com/dandi/dandi-cli/issues/878#issuecomment-1021720299
EPYTEST_DESELECT=(
"dandi/tests/test_utils.py::test_get_instance_dandi_with_api"
"dandi/tests/test_utils.py::test_get_instance_url"
"dandi/tests/test_utils.py::test_get_instance_cli_version_too_old"
"dandi/tests/test_utils.py::test_get_instance_bad_cli_version"
)
distutils_enable_tests pytest
PATCHES=(
"${FILESDIR}/${PN}-0.37.0-pip-versioncheck.patch"
"${FILESDIR}/${PN}-0.37.0-pep517.patch"
)
src_prepare() {
if use etelemetry; then
default
else
eapply "${FILESDIR}/${PN}-0.28.0-no-etelemetry.patch"
default
sed -i "/etelemetry/d" setup.cfg
fi
}
python_test() {
export DANDI_TESTS_NONETWORK=1
epytest
}