Files
guru/dev-python/dropbox/dropbox-12.0.2_p20260506.ebuild
2026-05-06 22:35:46 -03:00

60 lines
1.5 KiB
Bash

# Copyright 2021-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{12..14} )
GIT_HASH="8223031ffad6b4b3ab4ee886658bc606e6f82bac"
inherit distutils-r1
MY_PN=dropbox-sdk-python
MY_P=${MY_PN}-${PV}
DESCRIPTION="The offical Dropbox SDK for Python"
HOMEPAGE="https://www.dropbox.com/developers"
# pypi does not have tests, stick with gh
if [[ ${PV} == *_p* ]] ; then
SRC_URI="https://github.com/dropbox/${MY_PN}/archive/${GIT_HASH}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${MY_PN}-${GIT_HASH}"
else
SRC_URI="https://github.com/dropbox/${MY_PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.gh.tar.gz"
S="${WORKDIR}/${MY_P}"
fi
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
>=dev-python/requests-2.16.2[${PYTHON_USEDEP}]
>=dev-python/six-1.12.0[${PYTHON_USEDEP}]
dev-python/stone[${PYTHON_USEDEP}]
dev-python/urllib3[${PYTHON_USEDEP}]
"
# disable tests that need SCOPED_USER_DROPBOX_TOKEN
# and tests that fail
EPYTEST_DESELECT=(
test/integration/test_dropbox.py
test/unit/test_dropbox_unit.py::TestClient
test/unit/test_dropbox_unit.py::TestOAuth::test_NoRedirect_whole_flow
)
distutils_enable_tests pytest
src_prepare() {
if [[ ${PV} == *_p* ]] ; then
local MY_PV=$(ver_cut 1-3)
sed -i -e "s/__version__ = '0.0.0'/__version__ = '${MY_PV}'/" dropbox/dropbox_client.py || die
fi
sed -i -e "s/^import mock$/from unittest import mock/" test/unit/test_dropbox_unit.py || die
distutils-r1_src_prepare
}