summaryrefslogtreecommitdiff
path: root/dev-python/requests-cache/requests-cache-1.2.0.ebuild
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-02-18 05:38:53 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-02-18 05:38:53 +0000
commit3e4b97f04e1561890eb4b0bcb3a411b931c08d02 (patch)
treed34aa692c74eb0e0de725fa00b6df5785268b52c /dev-python/requests-cache/requests-cache-1.2.0.ebuild
parent78fce155315439a69aa67573fd4696b735649431 (diff)
gentoo auto-resync : 18:02:2024 - 05:38:53
Diffstat (limited to 'dev-python/requests-cache/requests-cache-1.2.0.ebuild')
-rw-r--r--dev-python/requests-cache/requests-cache-1.2.0.ebuild92
1 files changed, 92 insertions, 0 deletions
diff --git a/dev-python/requests-cache/requests-cache-1.2.0.ebuild b/dev-python/requests-cache/requests-cache-1.2.0.ebuild
new file mode 100644
index 000000000000..e6f048116b96
--- /dev/null
+++ b/dev-python/requests-cache/requests-cache-1.2.0.ebuild
@@ -0,0 +1,92 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1 optfeature
+
+HOMEPAGE="
+ https://pypi.org/project/requests-cache/
+ https://github.com/requests-cache/requests-cache/
+"
+DESCRIPTION="Persistent cache for requests library"
+SRC_URI="
+ https://github.com/requests-cache/requests-cache/archive/v${PV}.tar.gz
+ -> ${P}.gh.tar.gz
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+
+RDEPEND="
+ dev-python/attrs[${PYTHON_USEDEP}]
+ >=dev-python/cattrs-22.2[${PYTHON_USEDEP}]
+ >=dev-python/platformdirs-2.5[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.0.0[${PYTHON_USEDEP}]
+ dev-python/urllib3[${PYTHON_USEDEP}]
+ >=dev-python/url-normalize-1.4[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/itsdangerous[${PYTHON_USEDEP}]
+ dev-python/pytest-httpbin[${PYTHON_USEDEP}]
+ dev-python/requests-mock[${PYTHON_USEDEP}]
+ dev-python/responses[${PYTHON_USEDEP}]
+ >=dev-python/rich-10.0[${PYTHON_USEDEP}]
+ dev-python/timeout-decorator[${PYTHON_USEDEP}]
+ >=dev-python/ujson-5.4[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep '
+ dev-python/time-machine[${PYTHON_USEDEP}]
+ ' 'python*')
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_IGNORE=(
+ # These require extra servers running
+ tests/integration/test_dynamodb.py
+ tests/integration/test_gridfs.py
+ tests/integration/test_mongodb.py
+ tests/integration/test_redis.py
+ )
+ local EPYTEST_DESELECT=(
+ # Requires Internet access
+ tests/integration/test_upgrade.py::test_version_upgrade
+ )
+
+ case ${EPYTHON} in
+ pypy3)
+ EPYTEST_DESELECT+=(
+ # "database is locked", upstream probably relies on GC
+ # too much
+ tests/integration/test_sqlite.py
+ )
+ ;;
+ python3.12)
+ # https://github.com/requests-cache/requests-cache/issues/845
+ EPYTEST_DESELECT+=(
+ tests/integration/test_memory.py::TestMemoryCache::test_response_no_duplicate_read
+ tests/integration/test_sqlite.py::TestSQLiteCache::test_concurrency
+ )
+ ;;
+ esac
+
+ local -x USE_PYTEST_HTTPBIN=true
+ epytest
+}
+
+pkg_postinst() {
+ optfeature "redis backend" "dev-python/redis"
+ optfeature "MongoDB backend" "dev-python/pymongo"
+
+ optfeature "JSON serialization" "dev-python/ujson"
+ optfeature "YAML serialization" "dev-python/pyyaml"
+ optfeature "signing serialized data" "dev-python/itsdangerous"
+}