Releases: jawah/niquests
Releases · jawah/niquests
version 3.6.2
3.6.2 (2024-05-02)
Fixed
- "Help" program
python -m niquests.help
that depended on h2 while not required anymore. - Minor performance regression in async while checking OCSP when certificate isn't eligible (e.g. no OCSP url provided).
Changed
- urllib3.future lower bound constraint has been raised to version 2.7.905 to ensure inclusion of jh2 instead of h2.
Version 3.6.1
3.6.1 (2024-04-22)
Fixed
- Handling broken environments with a graceful exception using a detailed error message.
Version 3.6.0
3.6.0 (2024-04-20)
Added
- Support for qh3 version 1.0.0
This qh3 release enable a greater flexibility by dropping cryptography. We had to adapt the OCSP code as we
relied on cryptography. HTTP/3 experience is greatly improved.
Changed
- urllib3.future lower bound constraint has been raised to version 2.7.904 to ensure support for the last qh3 release.
Fixed
- Improved compatibility with third party mocking tool that are bound to requests.
- OCSP check did not warn if the HTTP server responded with a non 2xx response in strict mode.
Version 3.5.5
3.5.5 (2024-03-25)
Added
- Support for Happy Eyeballs. This feature is disabled by default, you must pass
happy_eyeballs=True
within your session
constructor or http adapter in order to leverage this.
Fixed
- Missed close implementation in AsyncSession causing the underlying poolmanager to remain open.
- Additional OCSP requests (following a redirect) did not use specified custom DNS resolver.
Changed
- urllib3.future lower bound constraint has been raised to version 2.7.900 for the newly added happy eyeballs feature.
Version 3.5.4
3.5.4 (2024-03-17)
Added
- Support to verify the peer certificate fingerprint using
verify=...
by passing a string using the following format:
verify="sha256_748c76348778cb4a536e7ec12bc9aa559c12770bd1419c7ffe516006e1dea0ec"
. Doing so disable the certificate
usual verification and only checks for its fingerprint match.
Fixed
- Multiplexed request in async did not support awaitable in hooks.
- Setting
verify=...
andcert=...
then change it for the same host did not apply to the underlying (existing) connection pool.
Misc
- Overall performance improvements in both async and sync requests.
- Update pre-commit dependencies (ruff, pyupgrade, and mypy).
- Fixed SessionRedirect in tests that produced an incomplete Response instance that wasn't suitable for tests.
Version 3.5.3
3.5.3 (2024-03-07)
Fixed
- A rare error that occurs on PyPy, especially on Windows, complaining about a missing release call.
Misc
- Allow latest dependencies version for httpbin, Flask and werkzeug in tests.
- Remove wheel from test dependencies.
Version 3.5.2
3.5.2 (2024-03-05)
Fixed
- ImportError in an attempt to retrieve
ConnectionInfo
in niquests.utils.
Changed
- General performance improvements.
Version 3.5.0
3.5.0 (2024-02-29)
Changed
- Replaced the thread pool executor for the true asyncio implementation. The asynchronous part is rewritten.
- urllib3.future lower bound constraint has been raised to version 2.6.900 for the newly added asynchronous interfaces.
Added
- Support for awaitable hooks in AsyncSession.
- Extendable AsyncBaseAdapter.
- Support for orjson if installed in environment to dramatically increase performance in JSON deserialization.
- Extra
speedups
to increase overall performances by including optional dependencies such as zstandard, brotli and orjson.
Fixed
- A rare error when leveraging multiplexing when a proxy is used.
- Bypass proxies when looking to validate certificate revocation status in Python < 3.10 with OCSP.
Version 3.4.7
3.4.7 (2024-02-21)
Fixed
- Unintentional performance regression with multiple concurrent multiplexed connection within a single Session.
Version 3.4.6
3.4.6 (2024-02-21)
Fixed
- Unmatched filter for deprecation warning yielded by Cryptography due to some legacy CA available in Windows having a negative serial number.
- Setting
boundary
inContent-Type
header with no value associated (no equal sign) can cause a rare error (multipart). - Rare racing condition while emitting too many request across a multiplexed connections.
- Spawning too many threads while using
AsyncSession
in specific contexts.