Skip to content

Commit 2f04b87

Browse files
committed
ci: require Python 3.8 for deltachat-rpc-client
With Python 3.7 asynchronous tests randomly fail with "RuntimeError: Event loop is closed" during shutdown. Backtrace of the error includes `SafeChildWatcher` calls. Python 3.8 has replaced `SafeChildWatcher` with a new `ThreadedChildWatcher` by default [1] as a bugfix for "asyncio.create_subprocess_exec() only works with main event loop" bug [2]. Python 3.7 scheduled end of life is 2023-06-27 according to <https://devguide.python.org/versions/>. [1] python/cpython#14344 [2] https://bugs.python.org/issue35621
1 parent d27e3d0 commit 2f04b87

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -233,11 +233,12 @@ jobs:
233233
- os: macos-latest
234234
python: pypy3.9
235235

236-
# Minimum Supported Python Version = 3.7
237-
# This is the minimum version for which manylinux Python wheels are
238-
# built. Test it with minimum supported Rust version.
236+
# Minimum Supported Python Version = 3.8
237+
#
238+
# Python 3.7 has at least one known bug related to starting subprocesses
239+
# in asyncio programs: <https://bugs.python.org/issue35621>
239240
- os: ubuntu-latest
240-
python: 3.7
241+
python: 3.8
241242

242243
runs-on: ${{ matrix.os }}
243244
steps:

0 commit comments

Comments
 (0)