From 4f2ddf976eb2628c91b1c8b5ca8e638608fcaf92 Mon Sep 17 00:00:00 2001
From: "renovate[bot]" <29139614+renovate[bot]@users.noreply.github.com>
Date: Wed, 25 Oct 2023 08:22:03 +0200
Subject: [PATCH] Update Python dependencies (major) (#44)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [anyio](https://togithub.com/agronholm/anyio)
([changelog](https://anyio.readthedocs.io/en/stable/versionhistory.html))
| `==3.7.0` -> `==4.0.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/anyio/4.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/anyio/4.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/anyio/3.7.0/4.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/anyio/3.7.0/4.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [flake8](https://togithub.com/pycqa/flake8)
([changelog](https://flake8.pycqa.org/en/latest/release-notes/index.html))
| `5.0.4` -> `6.1.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/flake8/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/flake8/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/flake8/5.0.4/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/flake8/5.0.4/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [httpcore](https://togithub.com/encode/httpcore) | `==0.17.2` ->
`==1.0.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/httpcore/1.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/httpcore/1.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/httpcore/0.17.2/1.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/httpcore/0.17.2/1.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
agronholm/anyio (anyio)
### [`v4.0.0`](https://togithub.com/agronholm/anyio/releases/tag/4.0.0)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/3.7.1...4.0.0)
- **BACKWARDS INCOMPATIBLE** Replaced AnyIO's own `ExceptionGroup` class
with the PEP 654 `BaseExceptionGroup` and `ExceptionGroup`
- **BACKWARDS INCOMPATIBLE** Changes to cancellation semantics:
- Any exceptions raising out of a task groups are now nested inside an
`ExceptionGroup` (or `BaseExceptionGroup` if one or more `BaseException`
were included)
- Fixed task group not raising a cancellation exception on asyncio at
exit if no child tasks were spawned and an outer cancellation scope had
been cancelled before
- Ensured that exiting a `TaskGroup` always hits a yield point,
regardless of whether there are running child tasks to be waited on
- On asyncio, cancel scopes will defer cancelling tasks that are
scheduled to resume with a finished future
- On asyncio and Python 3.9/3.10, cancel scopes now only suppress
cancellation exceptions if the cancel message matches the scope
- Task groups on all backends now raise a single cancellation exception
when an outer cancel scope is cancelled, and no exceptions other than
cancellation exceptions are raised in the group
- **BACKWARDS INCOMPATIBLE** Changes the pytest plugin to run all tests
and fixtures in the same task, allowing fixtures to set context
variables for tests and other fixtures
- **BACKWARDS INCOMPATIBLE** Changed `anyio.Path.relative_to()` and
`anyio.Path.is_relative_to()` to only accept one argument, as passing
multiple arguments is deprecated as of Python 3.12
- **BACKWARDS INCOMPATIBLE** Dropped support for spawning tasks from
old-style coroutine functions (`@asyncio.coroutine`)
- **BACKWARDS INCOMPATIBLE** The `policy` option on the `asyncio`
backend was changed to `loop_factory` to accommodate `asyncio.Runner`
- Changed `anyio.run()` to use `asyncio.Runner` (or a back-ported
version of it on Pythons older than 3.11) on the `asyncio` backend
- Dropped support for Python 3.7
- Added support for Python 3.12
- Bumped minimum version of trio to v0.22
- Added the `anyio.Path.is_junction()` and `anyio.Path.walk()` methods
- Added `create_unix_datagram_socket` and
`create_connected_unix_datagram_socket` to create UNIX datagram sockets
(PR by Jean Hominal)
- Fixed `from_thread.run` and `from_thread.run_sync` not setting sniffio
on asyncio. As a result:
- Fixed `from_thread.run_sync` failing when used to call
sniffio-dependent functions on asyncio
- Fixed `from_thread.run` failing when used to call sniffio-dependent
functions on asyncio from a thread running trio or curio
- Fixed deadlock when using
`from_thread.start_blocking_portal(backend="asyncio")` in a thread
running trio or curio (PR by Ganden Schaffner)
- Improved type annotations:
- The `item_type` argument of `create_memory_object_stream` was
deprecated. To indicate the item type handled by the stream, use
`create_memory_object_stream[T_Item]()` instead. Type checking should no
longer fail when annotating memory object streams with uninstantiable
item types (PR by Ganden Schaffner)
- Added the `CancelScope.cancelled_caught` property which tells users if
the cancel scope suppressed a cancellation exception
- Fixed `fail_after()` raising an unwarranted `TimeoutError` when the
cancel scope was cancelled before reaching its deadline
- Fixed `MemoryObjectReceiveStream.receive()` causing the receiving task
on asyncio to remain in a cancelled state if the operation was cancelled
after an item was queued to be received by the task (but before the task
could actually receive the item)
- Fixed `TaskGroup.start()` on asyncio not responding to cancellation
from the outside
- Fixed tasks started from `BlockingPortal` not notifying synchronous
listeners (`concurrent.futures.wait()`) when they're cancelled
- Removed unnecessary extra waiting cycle in `Event.wait()` on asyncio
in the case where the event was not yet set
- Fixed processes spawned by `anyio.to_process()` being "lost" as
unusable to the process pool when processes that have idled over 5
minutes are pruned at part of the `to_process.run_sync()` call, leading
to increased memory consumption (PR by Anael Gorfinkel)
Changes since 4.0.0rc1:
- Fixed the type annotation of `TaskGroup.start_soon()` to accept any
awaitables (already in v3.7.0 but was missing from 4.0.0rc1)
- Changed `CancelScope` to also consider the cancellation count (in
addition to the cancel message) on asyncio to determine if a
cancellation exception should be swallowed on scope exit, to combat
issues where third party libraries catch the `CancelledError` and raise
another, thus erasing the original cancel message
- Worked around a [CPython
bug](https://togithub.com/python/cpython/issues/108668) that caused
`TLSListener.handle_handshake_error()` on asyncio to log `"NoneType:
None"` instead of the error (PR by Ganden Schaffner)
- Re-added the `item_type` argument to `create_memory_object_stream()`
(but using it raises a deprecation warning and does nothing with regards
to the static types of the returned streams)
- Fixed processes spawned by `anyio.to_process()` being "lost" as
unusable to the process pool when processes that have idled over 5
minutes are pruned at part of the `to_process.run_sync()` call, leading
to increased memory consumption (PR by Anael Gorfinkel)
###
[`v3.7.1`](https://togithub.com/agronholm/anyio/compare/3.7.0...3.7.1)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/3.7.0...3.7.1)
pycqa/flake8 (flake8)
### [`v6.1.0`](https://togithub.com/pycqa/flake8/compare/6.0.0...6.1.0)
[Compare
Source](https://togithub.com/pycqa/flake8/compare/6.0.0...6.1.0)
### [`v6.0.0`](https://togithub.com/pycqa/flake8/compare/5.0.4...6.0.0)
[Compare
Source](https://togithub.com/pycqa/flake8/compare/5.0.4...6.0.0)
encode/httpcore (httpcore)
###
[`v1.0.0`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#100-November-6th-2023)
[Compare
Source](https://togithub.com/encode/httpcore/compare/0.18.0...1.0.0)
From version 1.0 our async support is now optional, as the package has
minimal dependencies by default.
For async support use either `pip install 'httpcore[asyncio]'` or `pip
install 'httpcore[trio]'`.
The project versioning policy is now explicitly governed by SEMVER. See
https://semver.org/.
- Async support becomes fully optional.
([#809](https://togithub.com/encode/httpcore/issues/809))
- Add support for Python 3.12.
([#807](https://togithub.com/encode/httpcore/issues/807))
###
[`v0.18.0`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#0180-September-8th-2023)
[Compare
Source](https://togithub.com/encode/httpcore/compare/0.17.3...0.18.0)
- Add support for HTTPS proxies.
([#745](https://togithub.com/encode/httpcore/issues/745),
[#786](https://togithub.com/encode/httpcore/issues/786))
- Drop Python 3.7 support.
([#727](https://togithub.com/encode/httpcore/issues/727))
- Handle `sni_hostname` extension with SOCKS proxy.
([#774](https://togithub.com/encode/httpcore/issues/774))
- Handle HTTP/1.1 half-closed connections gracefully.
([#641](https://togithub.com/encode/httpcore/issues/641))
- Change the type of `Extensions` from `Mapping[Str, Any]` to
`MutableMapping[Str, Any]`.
([#762](https://togithub.com/encode/httpcore/issues/762))
###
[`v0.17.3`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#0173-July-5th-2023)
[Compare
Source](https://togithub.com/encode/httpcore/compare/0.17.2...0.17.3)
- Support async cancellations, ensuring that the connection pool is left
in a clean state when cancellations occur.
([#726](https://togithub.com/encode/httpcore/issues/726))
- The networking backend interface has [been added to the public
API](https://www.encode.io/httpcore/network-backends). Some classes
which were previously private implementation detail are now part of the
top-level public API.
([#699](https://togithub.com/encode/httpcore/issues/699))
- Graceful handling of HTTP/2 GoAway frames, with requests being
transparently retried on a new connection.
([#730](https://togithub.com/encode/httpcore/issues/730))
- Add exceptions when a synchronous `trace callback` is passed to an
asynchronous request or an asynchronous `trace callback` is passed to a
synchronous request.
([#717](https://togithub.com/encode/httpcore/issues/717))
- Drop Python 3.7 support.
([#727](https://togithub.com/encode/httpcore/issues/727))
---
### Configuration
📅 **Schedule**: Branch creation - "after 1am and before 2am on saturday"
in timezone Etc/UTC, Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
â™» **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.
---
- [ ] If you want to rebase/retry this PR, check
this box
---
This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/canonical/spark-k8s-toolkit-py).
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
---
requirements.txt | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/requirements.txt b/requirements.txt
index 8132c74..958dd08 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,6 +1,6 @@
-anyio==3.7.0 ; python_full_version > "3.8.0" and python_version < "4.0" \
- --hash=sha256:275d9973793619a5374e1c89a4f4ad3f4b0a5510a2b5b939444bee8f4c4d37ce \
- --hash=sha256:eddca883c4175f14df8aedce21054bfca3adb70ffe76a9f607aef9d7fa2ea7f0
+anyio==4.0.0; python_full_version > "3.8.0" and python_version < "4.0" \
+ --hash=sha256:cfdb2b588b9fc25ede96d8db56ed50848b0b649dca3dd1df0b11f683bb9e0b5f \
+ --hash=sha256:f7ed51751b2c2add651e5747c891b47e26d2a21be5d32d9311dfe9692f3e5d7a
certifi==2023.5.7 ; python_full_version > "3.8.0" and python_version < "4.0" \
--hash=sha256:0f0d56dc5a6ad56fd4ba36484d6cc34451e1c6548c61daad8c320169f91eddc7 \
--hash=sha256:c6c2e98f5c7869efca1f8916fed228dd91539f9f1b444c314c06eef02980c716
@@ -13,9 +13,9 @@ exceptiongroup==1.1.1 ; python_full_version > "3.8.0" and python_version < "3.11
h11==0.14.0 ; python_full_version > "3.8.0" and python_version < "4.0" \
--hash=sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d \
--hash=sha256:e3fe4ac4b851c468cc8363d500db52c2ead036020723024a109d37346efaa761
-httpcore==0.17.2 ; python_full_version > "3.8.0" and python_version < "4.0" \
- --hash=sha256:125f8375ab60036db632f34f4b627a9ad085048eef7cb7d2616fea0f739f98af \
- --hash=sha256:5581b9c12379c4288fe70f43c710d16060c10080617001e6b22a3b6dbcbefd36
+httpcore==1.0.0; python_full_version > "3.8.0" and python_version < "4.0" \
+ --hash=sha256:b8c3a34536aa434297a5e4c8b7057496823cb9a417f7ee859ec0320e60f06337 \
+ --hash=sha256:cdbe42a0ea87dcaf9b5c751e868aff233799e947aff8b9c9eff8a2c11219ddb7
httpx==0.24.1 ; python_full_version > "3.8.0" and python_version < "4.0" \
--hash=sha256:06781eb9ac53cde990577af654bd990a4949de37a28bdb4a230d434f3a30b9bd \
--hash=sha256:5853a43053df830c20f8110c5e69fe44d035d850b2dfe795e196f00fdb774bdd