Files
python-kasa/.github/workflows
ZeliardM a679bc516f
Some checks are pending
CI / Perform Lint Checks (3.15) (push) Waiting to run
CI / Python 3.11 on macos-latest (push) Blocked by required conditions
CI / Python 3.12 on macos-latest (push) Blocked by required conditions
CI / Python 3.13 on macos-latest (push) Blocked by required conditions
CI / Python 3.14 on macos-latest (push) Blocked by required conditions
CI / Python 3.15 on macos-latest (push) Blocked by required conditions
CI / Python 3.11 on ubuntu-latest (push) Blocked by required conditions
CI / Python 3.12 on ubuntu-latest (push) Blocked by required conditions
CI / Python 3.13 on ubuntu-latest (push) Blocked by required conditions
CI / Python 3.14 on ubuntu-latest (push) Blocked by required conditions
CI / Python 3.15 on ubuntu-latest (push) Blocked by required conditions
CI / Python 3.11 on windows-latest (push) Blocked by required conditions
CI / Python 3.12 on windows-latest (push) Blocked by required conditions
CI / Python 3.13 on windows-latest (push) Blocked by required conditions
CI / Python 3.14 on windows-latest (push) Blocked by required conditions
CI / Python 3.15 on windows-latest (push) Blocked by required conditions
CodeQL Checks / Analyze (python) (push) Waiting to run
Stop Windows test runs from running out of loopback ports (#1839)
Windows has no native socketpair, so the self-pipe of every asyncio event
loop is a loopback TCP connection, and closing it leaves a port in
TIME_WAIT for two minutes. With a new event loop for each test, a run
that gets through about 16,000 tests within two minutes uses up the
dynamic port range, and the Windows test jobs hang until the 6-hour job
limit.

This PR runs the tests on one event loop per session, so a full run
opens about 100 socket pairs instead of about 26,000, and runs the
Windows jobs with xdist again.

In details:
- `asyncio_default_fixture_loop_scope` and
  `asyncio_default_test_loop_scope` are `session`.
- CI: Windows runs `pytest -n auto` like the other OSes, and the test
  jobs get a 30-minute limit.

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 18:50:15 -05:00
..