Mon Nov 15 17:41:18 2021 UTC ()
py-httpcore: updated to 0.14.1

0.14.1 (November 12th, 2021)

max_connections becomes optional.
certifi is now included in the install dependancies.
h2 is now strictly optional.

0.14.0 (November 11th, 2021)

The 0.14 release is a complete reworking of httpcore, comprehensively addressing some underlying issues in the connection pooling, as well as substantially redesigning the API to be more user friendly.

Some of the lower-level API design also makes the components more easily testable in isolation, and the package now has 100% test coverage.

There's some other neat bits in there too, such as the "trace" extension, which gives a hook into inspecting the internal events that occur during the request/response cycle. This extension is needed for the HTTPX cli, in order to...

Log the point at which the connection is established, and the IP/port on which it is made.
Determine if the outgoing request should log as HTTP/1.1 or HTTP/2, rather than having to assume it's HTTP/2 if the --http2 flag was passed. (Which may not actually be true.)
Log SSL version info / certificate info.
Note that curio support is not currently available in 0.14.0. If you're using httpcore with curio please get in touch, so we can assess if we ought to prioritize it as a feature or not.


(adam)
diff -r1.8 -r1.9 pkgsrc/www/py-httpcore/Makefile
diff -r1.2 -r1.3 pkgsrc/www/py-httpcore/PLIST
diff -r1.10 -r1.11 pkgsrc/www/py-httpcore/distinfo

cvs diff -r1.8 -r1.9 pkgsrc/www/py-httpcore/Makefile (expand / switch to unified diff)

--- pkgsrc/www/py-httpcore/Makefile 2021/09/14 06:42:49 1.8
+++ pkgsrc/www/py-httpcore/Makefile 2021/11/15 17:41:18 1.9
@@ -1,23 +1,24 @@ @@ -1,23 +1,24 @@
1# $NetBSD: Makefile,v 1.8 2021/09/14 06:42:49 adam Exp $ 1# $NetBSD: Makefile,v 1.9 2021/11/15 17:41:18 adam Exp $
2 2
3DISTNAME= httpcore-0.13.7 3DISTNAME= httpcore-0.14.1
4PKGNAME= ${PYPKGPREFIX}-${DISTNAME} 4PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
5CATEGORIES= www python 5CATEGORIES= www python
6MASTER_SITES= ${MASTER_SITE_PYPI:=h/httpcore/} 6MASTER_SITES= ${MASTER_SITE_PYPI:=h/httpcore/}
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://github.com/encode/httpcore 9HOMEPAGE= https://github.com/encode/httpcore
10COMMENT= Minimal low-level HTTP client 10COMMENT= Minimal low-level HTTP client
11LICENSE= modified-bsd 11LICENSE= modified-bsd
12 12
13DEPENDS+= ${PYPKGPREFIX}-anyio>=3.0.0:../../devel/py-anyio 13DEPENDS+= ${PYPKGPREFIX}-anyio>=3.0.0:../../devel/py-anyio
14DEPENDS+= ${PYPKGPREFIX}-h11>=0.8.0:../../www/py-h11 14DEPENDS+= ${PYPKGPREFIX}-certifi-[0-9]*:../../security/py-certifi
 15DEPENDS+= ${PYPKGPREFIX}-h11>=0.11.0:../../www/py-h11
15DEPENDS+= ${PYPKGPREFIX}-h2>=3.0:../../www/py-h2 16DEPENDS+= ${PYPKGPREFIX}-h2>=3.0:../../www/py-h2
16DEPENDS+= ${PYPKGPREFIX}-sniffio>=1.0.0:../../misc/py-sniffio 17DEPENDS+= ${PYPKGPREFIX}-sniffio>=1.0.0:../../misc/py-sniffio
17 18
18USE_LANGUAGES= # none 19USE_LANGUAGES= # none
19 20
20PYTHON_VERSIONS_INCOMPATIBLE= 27 36 # py-anyio, py-uvloop 21PYTHON_VERSIONS_INCOMPATIBLE= 27 36 # py-anyio, py-uvloop
21 22
22.include "../../lang/python/egg.mk" 23.include "../../lang/python/egg.mk"
23.include "../../mk/bsd.pkg.mk" 24.include "../../mk/bsd.pkg.mk"

cvs diff -r1.2 -r1.3 pkgsrc/www/py-httpcore/PLIST (expand / switch to unified diff)

--- pkgsrc/www/py-httpcore/PLIST 2020/10/01 06:48:37 1.2
+++ pkgsrc/www/py-httpcore/PLIST 2021/11/15 17:41:18 1.3
@@ -1,98 +1,98 @@ @@ -1,98 +1,98 @@
1@comment $NetBSD: PLIST,v 1.2 2020/10/01 06:48:37 adam Exp $ 1@comment $NetBSD: PLIST,v 1.3 2021/11/15 17:41:18 adam Exp $
2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO 2${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt 3${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt 4${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
5${PYSITELIB}/${EGG_INFODIR}/not-zip-safe 5${PYSITELIB}/${EGG_INFODIR}/not-zip-safe
6${PYSITELIB}/${EGG_INFODIR}/requires.txt 6${PYSITELIB}/${EGG_INFODIR}/requires.txt
7${PYSITELIB}/${EGG_INFODIR}/top_level.txt 7${PYSITELIB}/${EGG_INFODIR}/top_level.txt
8${PYSITELIB}/httpcore/__init__.py 8${PYSITELIB}/httpcore/__init__.py
9${PYSITELIB}/httpcore/__init__.pyc 9${PYSITELIB}/httpcore/__init__.pyc
10${PYSITELIB}/httpcore/__init__.pyo 10${PYSITELIB}/httpcore/__init__.pyo
 11${PYSITELIB}/httpcore/_api.py
 12${PYSITELIB}/httpcore/_api.pyc
 13${PYSITELIB}/httpcore/_api.pyo
11${PYSITELIB}/httpcore/_async/__init__.py 14${PYSITELIB}/httpcore/_async/__init__.py
12${PYSITELIB}/httpcore/_async/__init__.pyc 15${PYSITELIB}/httpcore/_async/__init__.pyc
13${PYSITELIB}/httpcore/_async/__init__.pyo 16${PYSITELIB}/httpcore/_async/__init__.pyo
14${PYSITELIB}/httpcore/_async/base.py 
15${PYSITELIB}/httpcore/_async/base.pyc 
16${PYSITELIB}/httpcore/_async/base.pyo 
17${PYSITELIB}/httpcore/_async/connection.py 17${PYSITELIB}/httpcore/_async/connection.py
18${PYSITELIB}/httpcore/_async/connection.pyc 18${PYSITELIB}/httpcore/_async/connection.pyc
19${PYSITELIB}/httpcore/_async/connection.pyo 19${PYSITELIB}/httpcore/_async/connection.pyo
20${PYSITELIB}/httpcore/_async/connection_pool.py 20${PYSITELIB}/httpcore/_async/connection_pool.py
21${PYSITELIB}/httpcore/_async/connection_pool.pyc 21${PYSITELIB}/httpcore/_async/connection_pool.pyc
22${PYSITELIB}/httpcore/_async/connection_pool.pyo 22${PYSITELIB}/httpcore/_async/connection_pool.pyo
23${PYSITELIB}/httpcore/_async/http.py 
24${PYSITELIB}/httpcore/_async/http.pyc 
25${PYSITELIB}/httpcore/_async/http.pyo 
26${PYSITELIB}/httpcore/_async/http11.py 23${PYSITELIB}/httpcore/_async/http11.py
27${PYSITELIB}/httpcore/_async/http11.pyc 24${PYSITELIB}/httpcore/_async/http11.pyc
28${PYSITELIB}/httpcore/_async/http11.pyo 25${PYSITELIB}/httpcore/_async/http11.pyo
29${PYSITELIB}/httpcore/_async/http2.py 26${PYSITELIB}/httpcore/_async/http2.py
30${PYSITELIB}/httpcore/_async/http2.pyc 27${PYSITELIB}/httpcore/_async/http2.pyc
31${PYSITELIB}/httpcore/_async/http2.pyo 28${PYSITELIB}/httpcore/_async/http2.pyo
32${PYSITELIB}/httpcore/_async/http_proxy.py 29${PYSITELIB}/httpcore/_async/http_proxy.py
33${PYSITELIB}/httpcore/_async/http_proxy.pyc 30${PYSITELIB}/httpcore/_async/http_proxy.pyc
34${PYSITELIB}/httpcore/_async/http_proxy.pyo 31${PYSITELIB}/httpcore/_async/http_proxy.pyo
35${PYSITELIB}/httpcore/_backends/__init__.py 32${PYSITELIB}/httpcore/_async/interfaces.py
36${PYSITELIB}/httpcore/_backends/__init__.pyc 33${PYSITELIB}/httpcore/_async/interfaces.pyc
37${PYSITELIB}/httpcore/_backends/__init__.pyo 34${PYSITELIB}/httpcore/_async/interfaces.pyo
38${PYSITELIB}/httpcore/_backends/anyio.py 35${PYSITELIB}/httpcore/_compat.py
39${PYSITELIB}/httpcore/_backends/anyio.pyc 36${PYSITELIB}/httpcore/_compat.pyc
40${PYSITELIB}/httpcore/_backends/anyio.pyo 37${PYSITELIB}/httpcore/_compat.pyo
41${PYSITELIB}/httpcore/_backends/asyncio.py 
42${PYSITELIB}/httpcore/_backends/asyncio.pyc 
43${PYSITELIB}/httpcore/_backends/asyncio.pyo 
44${PYSITELIB}/httpcore/_backends/auto.py 
45${PYSITELIB}/httpcore/_backends/auto.pyc 
46${PYSITELIB}/httpcore/_backends/auto.pyo 
47${PYSITELIB}/httpcore/_backends/base.py 
48${PYSITELIB}/httpcore/_backends/base.pyc 
49${PYSITELIB}/httpcore/_backends/base.pyo 
50${PYSITELIB}/httpcore/_backends/curio.py 
51${PYSITELIB}/httpcore/_backends/curio.pyc 
52${PYSITELIB}/httpcore/_backends/curio.pyo 
53${PYSITELIB}/httpcore/_backends/sync.py 
54${PYSITELIB}/httpcore/_backends/sync.pyc 
55${PYSITELIB}/httpcore/_backends/sync.pyo 
56${PYSITELIB}/httpcore/_backends/trio.py 
57${PYSITELIB}/httpcore/_backends/trio.pyc 
58${PYSITELIB}/httpcore/_backends/trio.pyo 
59${PYSITELIB}/httpcore/_bytestreams.py 
60${PYSITELIB}/httpcore/_bytestreams.pyc 
61${PYSITELIB}/httpcore/_bytestreams.pyo 
62${PYSITELIB}/httpcore/_exceptions.py 38${PYSITELIB}/httpcore/_exceptions.py
63${PYSITELIB}/httpcore/_exceptions.pyc 39${PYSITELIB}/httpcore/_exceptions.pyc
64${PYSITELIB}/httpcore/_exceptions.pyo 40${PYSITELIB}/httpcore/_exceptions.pyo
 41${PYSITELIB}/httpcore/_models.py
 42${PYSITELIB}/httpcore/_models.pyc
 43${PYSITELIB}/httpcore/_models.pyo
 44${PYSITELIB}/httpcore/_ssl.py
 45${PYSITELIB}/httpcore/_ssl.pyc
 46${PYSITELIB}/httpcore/_ssl.pyo
65${PYSITELIB}/httpcore/_sync/__init__.py 47${PYSITELIB}/httpcore/_sync/__init__.py
66${PYSITELIB}/httpcore/_sync/__init__.pyc 48${PYSITELIB}/httpcore/_sync/__init__.pyc
67${PYSITELIB}/httpcore/_sync/__init__.pyo 49${PYSITELIB}/httpcore/_sync/__init__.pyo
68${PYSITELIB}/httpcore/_sync/base.py 
69${PYSITELIB}/httpcore/_sync/base.pyc 
70${PYSITELIB}/httpcore/_sync/base.pyo 
71${PYSITELIB}/httpcore/_sync/connection.py 50${PYSITELIB}/httpcore/_sync/connection.py
72${PYSITELIB}/httpcore/_sync/connection.pyc 51${PYSITELIB}/httpcore/_sync/connection.pyc
73${PYSITELIB}/httpcore/_sync/connection.pyo 52${PYSITELIB}/httpcore/_sync/connection.pyo
74${PYSITELIB}/httpcore/_sync/connection_pool.py 53${PYSITELIB}/httpcore/_sync/connection_pool.py
75${PYSITELIB}/httpcore/_sync/connection_pool.pyc 54${PYSITELIB}/httpcore/_sync/connection_pool.pyc
76${PYSITELIB}/httpcore/_sync/connection_pool.pyo 55${PYSITELIB}/httpcore/_sync/connection_pool.pyo
77${PYSITELIB}/httpcore/_sync/http.py 
78${PYSITELIB}/httpcore/_sync/http.pyc 
79${PYSITELIB}/httpcore/_sync/http.pyo 
80${PYSITELIB}/httpcore/_sync/http11.py 56${PYSITELIB}/httpcore/_sync/http11.py
81${PYSITELIB}/httpcore/_sync/http11.pyc 57${PYSITELIB}/httpcore/_sync/http11.pyc
82${PYSITELIB}/httpcore/_sync/http11.pyo 58${PYSITELIB}/httpcore/_sync/http11.pyo
83${PYSITELIB}/httpcore/_sync/http2.py 59${PYSITELIB}/httpcore/_sync/http2.py
84${PYSITELIB}/httpcore/_sync/http2.pyc 60${PYSITELIB}/httpcore/_sync/http2.pyc
85${PYSITELIB}/httpcore/_sync/http2.pyo 61${PYSITELIB}/httpcore/_sync/http2.pyo
86${PYSITELIB}/httpcore/_sync/http_proxy.py 62${PYSITELIB}/httpcore/_sync/http_proxy.py
87${PYSITELIB}/httpcore/_sync/http_proxy.pyc 63${PYSITELIB}/httpcore/_sync/http_proxy.pyc
88${PYSITELIB}/httpcore/_sync/http_proxy.pyo 64${PYSITELIB}/httpcore/_sync/http_proxy.pyo
89${PYSITELIB}/httpcore/_threadlock.py 65${PYSITELIB}/httpcore/_sync/interfaces.py
90${PYSITELIB}/httpcore/_threadlock.pyc 66${PYSITELIB}/httpcore/_sync/interfaces.pyc
91${PYSITELIB}/httpcore/_threadlock.pyo 67${PYSITELIB}/httpcore/_sync/interfaces.pyo
92${PYSITELIB}/httpcore/_types.py 68${PYSITELIB}/httpcore/_synchronization.py
93${PYSITELIB}/httpcore/_types.pyc 69${PYSITELIB}/httpcore/_synchronization.pyc
94${PYSITELIB}/httpcore/_types.pyo 70${PYSITELIB}/httpcore/_synchronization.pyo
 71${PYSITELIB}/httpcore/_trace.py
 72${PYSITELIB}/httpcore/_trace.pyc
 73${PYSITELIB}/httpcore/_trace.pyo
95${PYSITELIB}/httpcore/_utils.py 74${PYSITELIB}/httpcore/_utils.py
96${PYSITELIB}/httpcore/_utils.pyc 75${PYSITELIB}/httpcore/_utils.pyc
97${PYSITELIB}/httpcore/_utils.pyo 76${PYSITELIB}/httpcore/_utils.pyo
 77${PYSITELIB}/httpcore/backends/__init__.py
 78${PYSITELIB}/httpcore/backends/__init__.pyc
 79${PYSITELIB}/httpcore/backends/__init__.pyo
 80${PYSITELIB}/httpcore/backends/asyncio.py
 81${PYSITELIB}/httpcore/backends/asyncio.pyc
 82${PYSITELIB}/httpcore/backends/asyncio.pyo
 83${PYSITELIB}/httpcore/backends/auto.py
 84${PYSITELIB}/httpcore/backends/auto.pyc
 85${PYSITELIB}/httpcore/backends/auto.pyo
 86${PYSITELIB}/httpcore/backends/base.py
 87${PYSITELIB}/httpcore/backends/base.pyc
 88${PYSITELIB}/httpcore/backends/base.pyo
 89${PYSITELIB}/httpcore/backends/mock.py
 90${PYSITELIB}/httpcore/backends/mock.pyc
 91${PYSITELIB}/httpcore/backends/mock.pyo
 92${PYSITELIB}/httpcore/backends/sync.py
 93${PYSITELIB}/httpcore/backends/sync.pyc
 94${PYSITELIB}/httpcore/backends/sync.pyo
 95${PYSITELIB}/httpcore/backends/trio.py
 96${PYSITELIB}/httpcore/backends/trio.pyc
 97${PYSITELIB}/httpcore/backends/trio.pyo
98${PYSITELIB}/httpcore/py.typed 98${PYSITELIB}/httpcore/py.typed

cvs diff -r1.10 -r1.11 pkgsrc/www/py-httpcore/distinfo (expand / switch to unified diff)

--- pkgsrc/www/py-httpcore/distinfo 2021/10/26 11:30:42 1.10
+++ pkgsrc/www/py-httpcore/distinfo 2021/11/15 17:41:18 1.11
@@ -1,5 +1,5 @@ @@ -1,5 +1,5 @@
1$NetBSD: distinfo,v 1.10 2021/10/26 11:30:42 nia Exp $ 1$NetBSD: distinfo,v 1.11 2021/11/15 17:41:18 adam Exp $
2 2
3BLAKE2s (httpcore-0.13.7.tar.gz) = 25d5bcabb5413986384d5b1c2f94a3fa56250e20e9af097dae7f89eba12765f7 3BLAKE2s (httpcore-0.14.1.tar.gz) = cde66ab0c855a578628bbe69148dca18671257d117a447522fb929be79c9cf9f
4SHA512 (httpcore-0.13.7.tar.gz) = 4ac6a9c653c2ec88846c2a37c829f4325296945500180d03e394ba888b3476245179c12fc121e83beb0b7cb5d6aa1fda14b4750499ba53cea8a4d656fb640923 4SHA512 (httpcore-0.14.1.tar.gz) = 4f459e6c4bd3e38212a6d91c9c11d21c2f9a84c720a64c323ecbca60e1b988e7fbe130f0f835d21507856bb46ee374fc3cd33c5a9f80e6d8acc8229ddca9ed2d
5Size (httpcore-0.13.7.tar.gz) = 45262 bytes 5Size (httpcore-0.14.1.tar.gz) = 45522 bytes