Skip to content

Bump dev deps and update Python target versions#976

Merged
achimnol merged 27 commits intomainfrom
chore/update-dev-dependencies
Oct 31, 2025
Merged

Bump dev deps and update Python target versions#976
achimnol merged 27 commits intomainfrom
chore/update-dev-dependencies

Conversation

@achimnol
Copy link
Copy Markdown
Member

@achimnol achimnol commented Oct 29, 2025

  • Drop Python 3.9 support and add Python 3.14 support
  • Bump the minimum aiohttp version to 3.10 for compatibility of async-timeout (5.0) and the stdlib in Python 3.11+
  • Update some test cases to work with latest Docker APIs (v1.50+)
  • Update Python container version used in test_services (3.6, 3.7 → 3.13, 3.14) and move the version definition to conftest.py for easier future updates
  • Adopt testcontainers to ensure safe cleanup of temporary containers regardless of test failures
    • The testcontainers-python package DOES NOT depend on aiodocker but docker-py. So it is safe to use it for our test purpose.
    • Developers no longer need to use bash test.sh but you may just run pytest right away!
  • Update mypy, pytest and its extensions, ruff, and packaging
    • Note that ruff-lsp is now integrated into ruff (as of 0.11).
  • On Windows, add a docker_host fallback to 127.0.0.1:2376 when it fails to detect existence of the \\.\pipe\docker_engine file as described in the dockerd official documentation. However, this does not work on GitHub Action runners. 😞

Ref to dockerd docs) image

Note

This PR disables the CI matrix for Windows because Path(r"\\.\pipe").iterdir() includes docker_engine while Path(r"\\.\pipe\docker_engine").exists() returns False on GitHub Action's Windows runners. It works consistently on my local Windows machine with Docker Desktop.
I don't have enough time to debug this kind of weired problems, so let's skip over it.
If anyone wants "full" Windows platform support, please contribute to this issue.

@achimnol achimnol changed the title Bump development dependencies Bump development dependencies and update Python target versions Oct 29, 2025
@achimnol achimnol changed the title Bump development dependencies and update Python target versions Bump dev deps and update Python target versions Oct 29, 2025
achimnol and others added 18 commits October 29, 2025 23:00
- Also improve typing and usage of `make_container()` fixture
- test_port, test_commit had to be adapted to latest Docker APIs.
- Update image refs used in test_services and centralize the definition
  to conftest.py
@codecov
Copy link
Copy Markdown

codecov bot commented Oct 31, 2025

Codecov Report

❌ Patch coverage is 73.91304% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 81.59%. Comparing base (a9782ae) to head (aeee661).
⚠️ Report is 4 commits behind head on main.

Files with missing lines Patch % Lines
aiodocker/docker.py 62.50% 3 Missing ⚠️
aiodocker/containers.py 71.42% 1 Missing and 1 partial ⚠️
aiodocker/utils.py 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #976      +/-   ##
==========================================
+ Coverage   80.66%   81.59%   +0.92%     
==========================================
  Files          24       24              
  Lines        1443     1418      -25     
  Branches      206      190      -16     
==========================================
- Hits         1164     1157       -7     
+ Misses        187      184       -3     
+ Partials       92       77      -15     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@achimnol achimnol enabled auto-merge (squash) October 31, 2025 08:10
@achimnol achimnol merged commit 6d2976a into main Oct 31, 2025
10 checks passed
@achimnol achimnol deleted the chore/update-dev-dependencies branch October 31, 2025 08:11
achimnol added a commit that referenced this pull request Oct 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant