* [gentoo-commits] repo/gentoo:master commit in: dev-python/requests-cache/files/, dev-python/requests-cache/
@ 2021-04-10 9:00 Michał Górny
0 siblings, 0 replies; 2+ messages in thread
From: Michał Górny @ 2021-04-10 9:00 UTC (permalink / raw
To: gentoo-commits
commit: 56ec9b13978d1391edd8b7b9a3d9439d3c2ba6bc
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 10 08:00:50 2021 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Apr 10 08:59:56 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56ec9b13
dev-python/requests-cache: Bump to 0.6.0
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
dev-python/requests-cache/Manifest | 1 +
.../files/requests-cache-0.6.0-test-install.patch | 25 ++++++++
.../requests-cache/requests-cache-0.6.0.ebuild | 69 ++++++++++++++++++++++
3 files changed, 95 insertions(+)
diff --git a/dev-python/requests-cache/Manifest b/dev-python/requests-cache/Manifest
index 8f1ffcb456e..858021548fd 100644
--- a/dev-python/requests-cache/Manifest
+++ b/dev-python/requests-cache/Manifest
@@ -1 +1,2 @@
DIST requests-cache-0.5.2.tar.gz 31159 BLAKE2B 4fca146a751064baf70954a71df64dbb7f8c9a4e27fec5dbea3620496ce78e7ccfb3785fb63705f513ff6fa938376b0c6acc4a2f584856060b1bc8388517df46 SHA512 355cc571a46b768615606a907a69ed065b3c4b5e74bb6c311abc7a28d9406f32fdea1db0dfd2b1c32dcdc82ed817ef7e0b30086c069de57307254617604c5177
+DIST requests-cache-0.6.0.tar.gz 52342 BLAKE2B 12af89721fcf1ae2e4ab14d7ac377f119ef312c64d3b9e5d80a36f26f3a9a798cf090835ee2c9bf886d0baa9b472f4c439d5a032573d442feecbbad930c239fd SHA512 b5b32b9cb99ec51cee67defde715df66b7c50a26f4124cbaf893685048fe188af0cf664232150e3b4fafe3b7a927716966efafadd711be01118d67ad802acef6
diff --git a/dev-python/requests-cache/files/requests-cache-0.6.0-test-install.patch b/dev-python/requests-cache/files/requests-cache-0.6.0-test-install.patch
new file mode 100644
index 00000000000..3862716c301
--- /dev/null
+++ b/dev-python/requests-cache/files/requests-cache-0.6.0-test-install.patch
@@ -0,0 +1,25 @@
+From 430424bf43ad1f5979adbb2eabdbb23726465fde Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Sat, 10 Apr 2021 10:56:39 +0200
+Subject: [PATCH] Do not install "tests" package
+
+---
+ setup.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/setup.py b/setup.py
+index 5ca5b80..58d8e89 100644
+--- a/setup.py
++++ b/setup.py
+@@ -40,7 +40,7 @@ extras_require['dev'] = list(chain.from_iterable(extras_require.values()))
+
+ setup(
+ name='requests-cache',
+- packages=find_packages(),
++ packages=find_packages(exclude=['tests*']),
+ version=__version__,
+ author='Roman Haritonov',
+ author_email='reclosedev@gmail.com',
+--
+2.31.1
+
diff --git a/dev-python/requests-cache/requests-cache-0.6.0.ebuild b/dev-python/requests-cache/requests-cache-0.6.0.ebuild
new file mode 100644
index 00000000000..28591398044
--- /dev/null
+++ b/dev-python/requests-cache/requests-cache-0.6.0.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{7..9} )
+PYTHON_REQ_USE="sqlite"
+
+inherit distutils-r1
+
+HOMEPAGE="https://pypi.org/project/requests-cache/"
+DESCRIPTION="Persistent cache for requests library"
+SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/itsdangerous[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.0.0[${PYTHON_USEDEP}]
+ >=dev-python/url-normalize-1.4[${PYTHON_USEDEP}]"
+BDEPEND="
+ test? (
+ $(python_gen_any_dep '
+ dev-python/httpbin[${PYTHON_USEDEP}]
+ www-servers/gunicorn[${PYTHON_USEDEP}]
+ ')
+ )"
+
+distutils_enable_sphinx docs
+distutils_enable_tests pytest
+
+PATCHES=(
+ "${FILESDIR}"/${P}-test-install.patch
+)
+
+python_check_deps() {
+ use test || return 0
+
+ has_version -b "dev-python/httpbin[${PYTHON_USEDEP}]" &&
+ has_version -b "www-servers/gunicorn[${PYTHON_USEDEP}]"
+}
+
+src_test() {
+ local hostport="127.0.0.1:23125"
+ python_setup
+ einfo "Starting httpbin on ${hostport}"
+ gunicorn -b "${hostport}" -D -p gunicorn.pid httpbin:app || die
+
+ local -x HTTPBIN_URL="http://${hostport}/"
+ distutils-r1_src_test
+ kill $(<gunicorn.pid) || die
+}
+
+python_test() {
+ local skipped_tests=(
+ # 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
+
+ # TODO
+ 'tests/integration/test_cache.py::test_all_response_formats[json]'
+ )
+
+ epytest ${skipped_tests[@]/#/--deselect }
+}
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/requests-cache/files/, dev-python/requests-cache/
@ 2022-08-03 7:04 Michał Górny
0 siblings, 0 replies; 2+ messages in thread
From: Michał Górny @ 2022-08-03 7:04 UTC (permalink / raw
To: gentoo-commits
commit: 727545c519049c0ae0352200a804e65ee28dc66f
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 3 07:03:40 2022 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Wed Aug 3 07:03:40 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=727545c5
dev-python/requests-cache: Remove old
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
dev-python/requests-cache/Manifest | 1 -
.../files/requests-cache-0.9.3-cattrs-22.patch | 150 ---------------------
.../requests-cache/requests-cache-0.9.4.ebuild | 81 -----------
3 files changed, 232 deletions(-)
diff --git a/dev-python/requests-cache/Manifest b/dev-python/requests-cache/Manifest
index 1c63fb6def33..d2c56a578588 100644
--- a/dev-python/requests-cache/Manifest
+++ b/dev-python/requests-cache/Manifest
@@ -1,2 +1 @@
-DIST requests-cache-0.9.4.gh.tar.gz 1541821 BLAKE2B 90f3ffe8f4213a47d19c1190f1201bb484473a4ee2fae82dff59c9e80bc8c154739e99f5024aa55b436f9e620d5594441df61e2db44e3cbb381d394c1b6b4a0b SHA512 66023dc8b153070a532f160af58ac2102f6b9d536a0045c4c62ad1d4175f59df6e7db5a25422f5610a2f17049270ad0b63c6023ddddf64235432a63d2cce9b91
DIST requests-cache-0.9.5.gh.tar.gz 1542034 BLAKE2B 01996e7536ce967dee2b909091d1eb08501b3882b6171a5460b2196666eed848dec89a85ef8ea0c892b2fd153f90107948239de04b973e7766d3acfad7b10059 SHA512 de1481ff609f3ff36ed662d986fb86a500a8d26755832478a9a4396f2c71934b5f65540137b92365eb36f66087b3fbc1cd72c63d37546d09c86bbee7340fd8eb
diff --git a/dev-python/requests-cache/files/requests-cache-0.9.3-cattrs-22.patch b/dev-python/requests-cache/files/requests-cache-0.9.3-cattrs-22.patch
deleted file mode 100644
index 258738158355..000000000000
--- a/dev-python/requests-cache/files/requests-cache-0.9.3-cattrs-22.patch
+++ /dev/null
@@ -1,150 +0,0 @@
-From 7917ba0dd12901d88137d3f8b487307eda38d326 Mon Sep 17 00:00:00 2001
-From: Jordan Cook <jordan.cook@pioneer.com>
-Date: Sat, 9 Apr 2022 13:33:32 -0500
-Subject: [PATCH] Add compatibility with cattrs 21.1+, and clean up preconf
- module a bit
-
----
- requests_cache/__init__.py | 2 +-
- requests_cache/serializers/preconf.py | 89 +++++++++++++++------------
- 2 files changed, 49 insertions(+), 42 deletions(-)
-
-diff --git a/requests_cache/__init__.py b/requests_cache/__init__.py
-index 87781ba..835586c 100644
---- a/requests_cache/__init__.py
-+++ b/requests_cache/__init__.py
-@@ -17,4 +17,4 @@ try:
- from .session import *
- # Log and ignore ImportErrors, if imported outside a virtualenv (e.g., just to check __version__)
- except ImportError as e:
-- logger.warning(e)
-+ logger.warning(e, exc_info=True)
-diff --git a/requests_cache/serializers/preconf.py b/requests_cache/serializers/preconf.py
-index ed19fb4..cb099b8 100644
---- a/requests_cache/serializers/preconf.py
-+++ b/requests_cache/serializers/preconf.py
-@@ -1,3 +1,4 @@
-+# flake8: noqa: F841
- """The ``cattrs`` library includes a number of `pre-configured converters
- <https://cattrs.readthedocs.io/en/latest/preconf.html>`_ that perform some pre-serialization steps
- required for specific serialization formats.
-@@ -14,69 +15,75 @@ class that raises an ``ImportError`` at initialization time instead of at import
- """
- import pickle
- from functools import partial
--
--from cattr.preconf import bson as bson_preconf
--from cattr.preconf import json as json_preconf
--from cattr.preconf import msgpack, orjson, pyyaml, tomlkit, ujson
-+from importlib import import_module
-
- from .._utils import get_placeholder_class
- from .cattrs import CattrStage
- from .pipeline import SerializerPipeline, Stage
-
--base_stage = (
-- CattrStage()
--) #: Base stage for all serializer pipelines (or standalone dict serializer)
-+
-+def make_stage(preconf_module: str):
-+ """Create a preconf serializer stage from a module name, if dependencies are installed"""
-+ try:
-+ return CattrStage(import_module(preconf_module).make_converter)
-+ except ImportError as e:
-+ return get_placeholder_class(e)
-+
-+
-+base_stage = CattrStage() #: Base stage for all serializer pipelines
- dict_serializer = base_stage #: Partial serializer that unstructures responses into dicts
--bson_preconf_stage = CattrStage(bson_preconf.make_converter) #: Pre-serialization steps for BSON
--json_preconf_stage = CattrStage(json_preconf.make_converter) #: Pre-serialization steps for JSON
--msgpack_preconf_stage = CattrStage(msgpack.make_converter) #: Pre-serialization steps for msgpack
--orjson_preconf_stage = CattrStage(orjson.make_converter) #: Pre-serialization steps for orjson
--yaml_preconf_stage = CattrStage(pyyaml.make_converter) #: Pre-serialization steps for YAML
--toml_preconf_stage = CattrStage(tomlkit.make_converter) #: Pre-serialization steps for TOML
--ujson_preconf_stage = CattrStage(ujson.make_converter) #: Pre-serialization steps for ultrajson
--pickle_serializer = SerializerPipeline(
-- [base_stage, pickle], is_binary=True
--) #: Complete pickle serializer
-+pickle_serializer = SerializerPipeline([base_stage, pickle], is_binary=True) #: Pickle serializer
- utf8_encoder = Stage(dumps=str.encode, loads=lambda x: x.decode()) #: Encode to bytes
-+bson_preconf_stage = make_stage('cattr.preconf.bson') #: Pre-serialization steps for BSON
-+json_preconf_stage = make_stage('cattr.preconf.json') #: Pre-serialization steps for JSON
-+msgpack_preconf_stage = make_stage('cattr.preconf.msgpack') #: Pre-serialization steps for msgpack
-+orjson_preconf_stage = make_stage('cattr.preconf.orjson') #: Pre-serialization steps for orjson
-+toml_preconf_stage = make_stage('cattr.preconf.tomlkit') #: Pre-serialization steps for TOML
-+ujson_preconf_stage = make_stage('cattr.preconf.ujson') #: Pre-serialization steps for ultrajson
-+yaml_preconf_stage = make_stage('cattr.preconf.pyyaml') #: Pre-serialization steps for YAML
-
-
- # Safe pickle serializer
--try:
-+def signer_stage(secret_key=None, salt='requests-cache') -> Stage:
-+ """Create a stage that uses ``itsdangerous`` to add a signature to responses on write, and
-+ validate that signature with a secret key on read. Can be used in a
-+ :py:class:`.SerializerPipeline` in combination with any other serialization steps.
-+ """
- from itsdangerous import Signer
-
-- def signer_stage(secret_key=None, salt='requests-cache') -> Stage:
-- """Create a stage that uses ``itsdangerous`` to add a signature to responses on write, and
-- validate that signature with a secret key on read. Can be used in a
-- :py:class:`.SerializerPipeline` in combination with any other serialization steps.
-- """
-- return Stage(Signer(secret_key=secret_key, salt=salt), dumps='sign', loads='unsign')
--
-- def safe_pickle_serializer(
-- secret_key=None, salt='requests-cache', **kwargs
-- ) -> SerializerPipeline:
-- """Create a serializer that uses ``pickle`` + ``itsdangerous`` to add a signature to
-- responses on write, and validate that signature with a secret key on read.
-- """
-- return SerializerPipeline(
-- [base_stage, pickle, signer_stage(secret_key, salt)], is_binary=True
-- )
-+ return Stage(Signer(secret_key=secret_key, salt=salt), dumps='sign', loads='unsign')
-+
-+
-+def safe_pickle_serializer(secret_key=None, salt='requests-cache', **kwargs) -> SerializerPipeline:
-+ """Create a serializer that uses ``pickle`` + ``itsdangerous`` to add a signature to
-+ responses on write, and validate that signature with a secret key on read.
-+ """
-+ return SerializerPipeline([base_stage, pickle, signer_stage(secret_key, salt)], is_binary=True)
-+
-
-+try:
-+ import itsdangerous # noqa: F401
- except ImportError as e:
- signer_stage = get_placeholder_class(e)
- safe_pickle_serializer = get_placeholder_class(e)
-
-
--# BSON serializer
--try:
-+def _get_bson_functions():
-+ """Handle different function names between pymongo's bson and standalone bson"""
- try:
-- from bson import decode as _bson_loads
-- from bson import encode as _bson_dumps
-+ import pymongo # noqa: F401
-+
-+ return {'dumps': 'encode', 'loads': 'decode'}
- except ImportError:
-- from bson import dumps as _bson_dumps
-- from bson import loads as _bson_loads
-+ return {'dumps': 'dumps', 'loads': 'loads'}
-+
-+
-+# BSON serializer
-+try:
-+ import bson
-
- bson_serializer = SerializerPipeline(
-- [bson_preconf_stage, Stage(dumps=_bson_dumps, loads=_bson_loads)], is_binary=True
-+ [bson_preconf_stage, Stage(bson, **_get_bson_functions())], is_binary=True
- ) #: Complete BSON serializer; uses pymongo's ``bson`` if installed, otherwise standalone ``bson`` codec
- except ImportError as e:
- bson_serializer = get_placeholder_class(e)
---
-2.35.1
-
diff --git a/dev-python/requests-cache/requests-cache-0.9.4.ebuild b/dev-python/requests-cache/requests-cache-0.9.4.ebuild
deleted file mode 100644
index c9a10a8eef4c..000000000000
--- a/dev-python/requests-cache/requests-cache-0.9.4.ebuild
+++ /dev/null
@@ -1,81 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-DISTUTILS_USE_PEP517=poetry
-PYTHON_COMPAT=( python3_{8..10} )
-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 x86"
-
-RDEPEND="
- dev-python/attrs[${PYTHON_USEDEP}]
- dev-python/appdirs[${PYTHON_USEDEP}]
- dev-python/cattrs[${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/timeout-decorator[${PYTHON_USEDEP}]
- dev-python/ujson[${PYTHON_USEDEP}]
- )
-"
-
-distutils_enable_tests pytest
-
-PATCHES=(
- "${FILESDIR}"/requests-cache-0.9.3-cattrs-22.patch
-)
-
-src_prepare() {
- # unpin the dep
- sed -i -e '/cattrs/s:\^:>=:' pyproject.toml || die
- distutils-r1_src_prepare
-}
-
-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_compat.py::test_version_upgrade
- )
-
- local -x USE_PYTEST_HTTPBIN=true
- epytest
-}
-
-pkg_postinst() {
- optfeature "redis backend" "dev-python/redis-py"
- 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"
-}
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-08-03 7:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-04-10 9:00 [gentoo-commits] repo/gentoo:master commit in: dev-python/requests-cache/files/, dev-python/requests-cache/ Michał Górny
-- strict thread matches above, loose matches on Subject: below --
2022-08-03 7:04 Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox