Skip to content

Commit

Permalink
ci: require Python 3.8 for deltachat-rpc-client
Browse files Browse the repository at this point in the history
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
  • Loading branch information
link2xt committed May 21, 2023
1 parent c7ad0b1 commit c68a2e3
Showing 1 changed file with 5 additions and 4 deletions.
9 changes: 5 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -233,11 +233,12 @@ jobs:
- os: macos-latest
python: pypy3.9

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

runs-on: ${{ matrix.os }}
steps:
Expand Down

0 comments on commit c68a2e3

Please sign in to comment.