mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-25 07:08:13 -07:00
dev-python/httpx: Remove old
Signed-off-by: Michał Górny <mgorny@gentoo.org>
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST httpx-0.23.0.gh.tar.gz 2160686 BLAKE2B 036c66b2c3f743cd069716297f331f0d75043a98180b9db3e156c5692ae8bf9c68d1db87169953a7f44aaf7ee8554d0166f70b508f77b7ff4b0ebc0500bc02ad SHA512 3cfdf2b3b2f15967a1eec0be05ed947c5e18a46576b68a9cbfd5147dfd4736cb7c389f5431732b93f3a11f3ec6c6f25f7cbb3d96d845f00b58e2b8dae047c1d5
|
||||
DIST httpx-0.23.1.gh.tar.gz 2161798 BLAKE2B ee01771377bbfebbc4a9346280c8d59508c78295e61b6f9d60a07099e44dfb0fc208d37b68f511bbbacb48438cf6daa73ef82d7a7ae75470409c8346ddad0ad5 SHA512 3fe280b6d3cb1a12bdd502e7bd432588375f9cebfcd9e071acb6e851866a56d84a715428599a297f5df43d73997b2a0c02ba1a12b3e32d292b2051161a350751
|
||||
|
||||
@@ -1,68 +0,0 @@
|
||||
From f13ab4d288d0b790f6f1c515a6c0ea45e9615748 Mon Sep 17 00:00:00 2001
|
||||
From: Florimond Manca <florimond.manca@protonmail.com>
|
||||
Date: Thu, 25 Aug 2022 12:23:04 +0200
|
||||
Subject: [PATCH] Replace cgi which will be deprecated in Python 3.11 (#2309)
|
||||
|
||||
* Replace cgi which will be deprecated in Python 3.11
|
||||
|
||||
* Update httpx/_utils.py
|
||||
---
|
||||
httpx/_models.py | 8 ++------
|
||||
httpx/_utils.py | 9 +++++++++
|
||||
2 files changed, 11 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/httpx/_models.py b/httpx/_models.py
|
||||
index fd1d7fe9a..7a3b5885d 100644
|
||||
--- a/httpx/_models.py
|
||||
+++ b/httpx/_models.py
|
||||
@@ -1,4 +1,3 @@
|
||||
-import cgi
|
||||
import datetime
|
||||
import email.message
|
||||
import json as jsonlib
|
||||
@@ -47,6 +46,7 @@
|
||||
normalize_header_key,
|
||||
normalize_header_value,
|
||||
obfuscate_sensitive_headers,
|
||||
+ parse_content_type_charset,
|
||||
parse_header_links,
|
||||
)
|
||||
|
||||
@@ -608,11 +608,7 @@ def charset_encoding(self) -> typing.Optional[str]:
|
||||
if content_type is None:
|
||||
return None
|
||||
|
||||
- _, params = cgi.parse_header(content_type)
|
||||
- if "charset" not in params:
|
||||
- return None
|
||||
-
|
||||
- return params["charset"].strip("'\"")
|
||||
+ return parse_content_type_charset(content_type)
|
||||
|
||||
def _get_content_decoder(self) -> ContentDecoder:
|
||||
"""
|
||||
diff --git a/httpx/_utils.py b/httpx/_utils.py
|
||||
index e01c050df..ecce4f417 100644
|
||||
--- a/httpx/_utils.py
|
||||
+++ b/httpx/_utils.py
|
||||
@@ -1,4 +1,5 @@
|
||||
import codecs
|
||||
+import email.message
|
||||
import logging
|
||||
import mimetypes
|
||||
import netrc
|
||||
@@ -209,6 +210,14 @@ def parse_header_links(value: str) -> typing.List[typing.Dict[str, str]]:
|
||||
return links
|
||||
|
||||
|
||||
+def parse_content_type_charset(content_type: str) -> typing.Optional[str]:
|
||||
+ # We used to use `cgi.parse_header()` here, but `cgi` became a dead battery.
|
||||
+ # See: https://peps.python.org/pep-0594/#cgi
|
||||
+ msg = email.message.Message()
|
||||
+ msg["content-type"] = content_type
|
||||
+ return msg.get_content_charset(failobj=None)
|
||||
+
|
||||
+
|
||||
SENSITIVE_HEADERS = {"authorization", "proxy-authorization"}
|
||||
|
||||
|
||||
@@ -1,91 +0,0 @@
|
||||
# Copyright 2022 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
# Docs builder mkdocs not keyworded on all these arches yet
|
||||
# DOCS_BUILDER="mkdocs"
|
||||
# DOCS_DEPEND="dev-python/mkdocs-material"
|
||||
# DOCS_AUTODOC=1
|
||||
DISTUTILS_USE_PEP517=setuptools
|
||||
PYTHON_COMPAT=( pypy3 python3_{8..11} )
|
||||
|
||||
inherit distutils-r1 optfeature # docs
|
||||
|
||||
DESCRIPTION="Fully-featured HTTP client which provides sync and async APIs"
|
||||
HOMEPAGE="
|
||||
https://www.python-httpx.org/
|
||||
https://github.com/encode/httpx/
|
||||
https://pypi.org/project/httpx/
|
||||
"
|
||||
SRC_URI="
|
||||
https://github.com/encode/httpx/archive/${PV}.tar.gz
|
||||
-> ${P}.gh.tar.gz
|
||||
"
|
||||
|
||||
LICENSE="BSD"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 arm arm64 hppa ~ia64 ~loong ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
||||
IUSE="cli"
|
||||
|
||||
RDEPEND="
|
||||
dev-python/certifi[${PYTHON_USEDEP}]
|
||||
dev-python/sniffio[${PYTHON_USEDEP}]
|
||||
=dev-python/httpcore-0.15*[${PYTHON_USEDEP}]
|
||||
>=dev-python/rfc3986-1.3[${PYTHON_USEDEP}]
|
||||
cli? (
|
||||
=dev-python/click-8*[${PYTHON_USEDEP}]
|
||||
=dev-python/pygments-2*[${PYTHON_USEDEP}]
|
||||
<dev-python/rich-13[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
BDEPEND="
|
||||
test? (
|
||||
dev-python/brotlicffi[${PYTHON_USEDEP}]
|
||||
dev-python/cryptography[${PYTHON_USEDEP}]
|
||||
dev-python/h2[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-asyncio[${PYTHON_USEDEP}]
|
||||
dev-python/pytest-trio[${PYTHON_USEDEP}]
|
||||
dev-python/socksio[${PYTHON_USEDEP}]
|
||||
dev-python/trio[${PYTHON_USEDEP}]
|
||||
dev-python/trustme[${PYTHON_USEDEP}]
|
||||
dev-python/typing-extensions[${PYTHON_USEDEP}]
|
||||
dev-python/uvicorn[${PYTHON_USEDEP}]
|
||||
)
|
||||
"
|
||||
|
||||
distutils_enable_tests pytest
|
||||
|
||||
src_prepare() {
|
||||
local PATCHES=(
|
||||
"${FILESDIR}"/${P}-cgi.patch
|
||||
)
|
||||
|
||||
# unpin deps
|
||||
sed -i -e 's:==[0-9.*]\+::' -e 's:,<[0-9.]\+::' setup.py || die
|
||||
if ! use cli; then
|
||||
sed -i -e '/console_scripts/d' setup.py || die
|
||||
fi
|
||||
distutils-r1_src_prepare
|
||||
}
|
||||
|
||||
python_test() {
|
||||
local EPYTEST_DESELECT=(
|
||||
# Internet
|
||||
tests/client/test_proxies.py::test_async_proxy_close
|
||||
tests/client/test_proxies.py::test_sync_proxy_close
|
||||
)
|
||||
local EPYTEST_IGNORE=()
|
||||
|
||||
use cli || EPYTEST_IGNORE+=(
|
||||
tests/test_main.py
|
||||
)
|
||||
|
||||
epytest
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
optfeature "HTTP/2 support" dev-python/h2
|
||||
optfeature "SOCKS proxy support" dev-python/socksio
|
||||
optfeature "Decoding for brotli compressed responses" dev-python/brotlicffi
|
||||
}
|
||||
Reference in New Issue
Block a user