-
Notifications
You must be signed in to change notification settings - Fork 4
Commit d0cb6bd
authored
[MISC] Update Python dependencies (major) (#99)
[](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.4.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
| [certifi](https://togithub.com/certifi/python-certifi) | `==2023.7.22`
-> `==2024.6.2` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](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` -> `7.1.0` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
| [httpcore](https://togithub.com/encode/httpcore) | `==0.17.2` ->
`==1.0.5` |
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
<details>
<summary>agronholm/anyio (anyio)</summary>
### [`v4.4.0`](https://togithub.com/agronholm/anyio/releases/tag/4.4.0)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/4.3.0...4.4.0)
- Added the `BlockingPortalProvider` class to aid with constructing
synchronous counterparts to asynchronous interfaces that would otherwise
require multiple blocking portals
- Added `__slots__` to `AsyncResource` so that child classes can use
`__slots__`
([#​733](https://togithub.com/agronholm/anyio/pull/733); PR by
Justin Su)
- Added the `TaskInfo.has_pending_cancellation()` method
- Fixed erroneous `RuntimeError: called 'started' twice on the same task
status` when cancelling a task in a TaskGroup created with the `start()`
method before the first checkpoint is reached after calling
`task_status.started()`
([#​706](https://togithub.com/agronholm/anyio/issues/706); PR by
Dominik Schwabe)
- Fixed two bugs with `TaskGroup.start()` on asyncio:
- Fixed erroneous `RuntimeError: called 'started' twice on the same task
status` when cancelling a task in a TaskGroup created with the `start()`
method before the first checkpoint is reached after calling
`task_status.started()`
([#​706](https://togithub.com/agronholm/anyio/issues/706); PR by
Dominik Schwabe)
- Fixed the entire task group being cancelled if a `TaskGroup.start()`
call gets cancelled
([#​685](https://togithub.com/agronholm/anyio/issues/685),
[#​710](https://togithub.com/agronholm/anyio/issues/710))
- Fixed a race condition that caused crashes when multiple event loops
of the same backend were running in separate threads and simultaneously
attempted to use AnyIO for their first time
([#​425](https://togithub.com/agronholm/anyio/issues/425); PR by
David Jiricek and Ganden Schaffner)
- Fixed cancellation delivery on asyncio incrementing the wrong cancel
scope's cancellation counter when cascading a cancel operation to a
child scope, thus failing to uncancel the host task
([#​716](https://togithub.com/agronholm/anyio/issues/716))
- Fixed erroneous `TypedAttributeLookupError` if a typed attribute
getter raises `KeyError`
- Fixed the asyncio backend not respecting the `PYTHONASYNCIODEBUG`
environment variable when setting the `debug` flag in `anyio.run()`
- Fixed `SocketStream.receive()` not detecting EOF on asyncio if there
is also data in the read buffer
([#​701](https://togithub.com/agronholm/anyio/issues/701))
- Fixed `MemoryObjectStream` dropping an item if the item is delivered
to a recipient that is waiting to receive an item but has a cancellation
pending ([#​728](https://togithub.com/agronholm/anyio/issues/728))
- Emit a `ResourceWarning` for `MemoryObjectReceiveStream` and
`MemoryObjectSendStream` that were garbage collected without being
closed (PR by Andrey Kazantcev)
- Fixed `MemoryObjectSendStream.send()` not raising
`BrokenResourceError` when the last corresponding
`MemoryObjectReceiveStream` is closed while waiting to send a falsey
item ([#​731](https://togithub.com/agronholm/anyio/issues/731); PR
by Ganden Schaffner)
### [`v4.3.0`](https://togithub.com/agronholm/anyio/releases/tag/4.3.0)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/4.2.0...4.3.0)
- Added support for the Python 3.12 `walk_up` keyword argument in
`anyio.Path.relative_to()` (PR by Colin Taylor)
- Fixed passing `total_tokens` to `anyio.CapacityLimiter()` as a keyword
argument not working on the `trio` backend
([#​515](https://togithub.com/agronholm/anyio/issues/515))
- Fixed `Process.aclose()` not performing the minimum level of necessary
cleanup when cancelled. Previously:
- Cancellation of `Process.aclose()` could leak an orphan process
- Cancellation of `run_process()` could very briefly leak an orphan
process.
- Cancellation of `Process.aclose()` or `run_process()` on Trio could
leave standard streams unclosed
(PR by Ganden Schaffner)
- Fixed `Process.stdin.aclose()`, `Process.stdout.aclose()`, and
`Process.stderr.aclose()` not including a checkpoint on asyncio (PR by
Ganden Schaffner)
- Fixed documentation on how to provide your own typed attributes
### [`v4.2.0`](https://togithub.com/agronholm/anyio/releases/tag/4.2.0)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/4.1.0...4.2.0)
- Add support for `byte`-based paths in `connect_unix`,
`create_unix_listeners`, `create_unix_datagram_socket`, and
`create_connected_unix_datagram_socket`. (PR by Lura Skye)
- Enabled the `Event` and `CapacityLimiter` classes to be instantiated
outside an event loop thread
- Broadly improved/fixed the type annotations. Among other things, many
functions and methods that take variadic positional arguments now make
use of PEP 646 `TypeVarTuple` to allow the positional arguments to be
validated by static type checkers. These changes affected numerous
methods and functions, including:
- `anyio.run()`
- `TaskGroup.start_soon()`
- `anyio.from_thread.run()`
- `anyio.from_thread.run_sync()`
- `anyio.to_thread.run_sync()`
- `anyio.to_process.run_sync()`
- `BlockingPortal.call()`
- `BlockingPortal.start_task_soon()`
- `BlockingPortal.start_task()`
(also resolves
[#​560](https://togithub.com/agronholm/anyio/issues/560))
- Fixed various type annotations of `anyio.Path` to match Typeshed:
- `anyio.Path.__lt__()`
- `anyio.Path.__le__()`
- `anyio.Path.__gt__()`
- `anyio.Path.__ge__()`
- `anyio.Path.__truediv__()`
- `anyio.Path.__rtruediv__()`
- `anyio.Path.hardlink_to()`
- `anyio.Path.samefile()`
- `anyio.Path.symlink_to()`
- `anyio.Path.with_segments()`
(PR by Ganden Schaffner)
- Fixed adjusting the total number of tokens in a `CapacityLimiter` on
asyncio failing to wake up tasks waiting to acquire the limiter in
certain edge cases (fixed with help from Egor Blagov)
- Fixed `loop_factory` and `use_uvloop` options not being used on the
asyncio backend
([#​643](https://togithub.com/agronholm/anyio/issues/643))
- Fixed cancellation propagating on asyncio from a task group to child
tasks if the task hosting the task group is in a shielded cancel scope
([#​642](https://togithub.com/agronholm/anyio/issues/642))
### [`v4.1.0`](https://togithub.com/agronholm/anyio/releases/tag/4.1.0)
[Compare
Source](https://togithub.com/agronholm/anyio/compare/4.0.0...4.1.0)
- Adapted to API changes made in Trio v0.23:
- Call `trio.to_thread.run_sync()` using the `abandon_on_cancel` keyword
argument instead of `cancellable`
- Removed a checkpoint when exiting a task group
- Renamed the `cancellable` argument in `anyio.to_thread.run_sync()` to
`abandon_on_cancel` (and deprecated the old parameter name)
- Bumped minimum version of Trio to v0.23
- Added support for voluntary thread cancellation via
`anyio.from_thread.check_cancelled()`
- Bumped minimum version of trio to v0.23
- Exposed the `ResourceGuard` class in the public API
([#​627](https://togithub.com/agronholm/anyio/issues/627))
- Fixed `RuntimeError: Runner is closed` when running higher-scoped
async generator fixtures in some cases
([#​619](https://togithub.com/agronholm/anyio/issues/619))
- Fixed discrepancy between `asyncio` and `trio` where reraising a
cancellation exception in an `except*` block would incorrectly bubble
out of its cancel scope
([#​634](https://togithub.com/agronholm/anyio/issues/634))
### [`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)
</details>
<details>
<summary>certifi/python-certifi (certifi)</summary>
###
[`v2024.6.2`](https://togithub.com/certifi/python-certifi/compare/2024.02.02...2024.06.02)
[Compare
Source](https://togithub.com/certifi/python-certifi/compare/2024.02.02...2024.06.02)
###
[`v2024.2.2`](https://togithub.com/certifi/python-certifi/compare/2023.11.17...2024.02.02)
[Compare
Source](https://togithub.com/certifi/python-certifi/compare/2023.11.17...2024.02.02)
###
[`v2023.11.17`](https://togithub.com/certifi/python-certifi/compare/2023.07.22...2023.11.17)
[Compare
Source](https://togithub.com/certifi/python-certifi/compare/2023.07.22...2023.11.17)
</details>
<details>
<summary>pycqa/flake8 (flake8)</summary>
### [`v7.1.0`](https://togithub.com/pycqa/flake8/compare/7.0.0...7.1.0)
[Compare
Source](https://togithub.com/pycqa/flake8/compare/7.0.0...7.1.0)
### [`v7.0.0`](https://togithub.com/pycqa/flake8/compare/6.1.0...7.0.0)
[Compare
Source](https://togithub.com/pycqa/flake8/compare/6.1.0...7.0.0)
### [`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)
</details>
<details>
<summary>encode/httpcore (httpcore)</summary>
###
[`v1.0.5`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#105-March-27th-2024)
[Compare
Source](https://togithub.com/encode/httpcore/compare/1.0.4...1.0.5)
- Handle `EndOfStream` exception for anyio backend.
([#​899](https://togithub.com/encode/httpcore/issues/899))
- Allow trio `0.25.*` series in package dependancies.
([#​903](https://togithub.com/encode/httpcore/issues/903))
###
[`v1.0.4`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#104-February-21st-2024)
[Compare
Source](https://togithub.com/encode/httpcore/compare/1.0.3...1.0.4)
- Add `target` request extension.
([#​888](https://togithub.com/encode/httpcore/issues/888))
- Fix support for connection `Upgrade` and `CONNECT` when some data in
the stream has been read.
([#​882](https://togithub.com/encode/httpcore/issues/882))
###
[`v1.0.3`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#103-February-13th-2024)
[Compare
Source](https://togithub.com/encode/httpcore/compare/1.0.2...1.0.3)
- Fix support for async cancellations.
([#​880](https://togithub.com/encode/httpcore/issues/880))
- Fix trace extension when used with socks proxy.
([#​849](https://togithub.com/encode/httpcore/issues/849))
- Fix SSL context for connections using the "wss" scheme
([#​869](https://togithub.com/encode/httpcore/issues/869))
###
[`v1.0.2`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#102-November-10th-2023)
[Compare
Source](https://togithub.com/encode/httpcore/compare/1.0.1...1.0.2)
- Fix `float("inf")` timeouts in `Event.wait` function.
([#​846](https://togithub.com/encode/httpcore/issues/846))
###
[`v1.0.1`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#101-November-3rd-2023)
[Compare
Source](https://togithub.com/encode/httpcore/compare/1.0.0...1.0.1)
- Fix pool timeout to account for the total time spent retrying.
([#​823](https://togithub.com/encode/httpcore/issues/823))
- Raise a neater RuntimeError when the correct async deps are not
installed.
([#​826](https://togithub.com/encode/httpcore/issues/826))
- Add support for synchronous TLS-in-TLS streams.
([#​840](https://togithub.com/encode/httpcore/issues/840))
###
[`v1.0.0`](https://togithub.com/encode/httpcore/blob/HEAD/CHANGELOG.md#100-October-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))
</details>
---
### 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.
---
- [ ] <!-- rebase-check -->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).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MjAuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQyMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>1 parent 6260837 commit d0cb6bdCopy full SHA for d0cb6bd
File tree
Expand file treeCollapse file tree
1 file changed
+9
-9
lines changedFilter options
Expand file treeCollapse file tree
1 file changed
+9
-9
lines changedCollapse file: requirements.txt
+9-9Lines changed: 9 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
2 |
| - | |
3 |
| - | |
4 |
| - | |
5 |
| - | |
6 |
| - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
| |||
13 | 13 |
| |
14 | 14 |
| |
15 | 15 |
| |
16 |
| - | |
17 |
| - | |
18 |
| - | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
19 | 19 |
| |
20 | 20 |
| |
21 | 21 |
| |
|
0 commit comments