From 9466111d5638a80f7ffcb92c33e7f9ecfc25b74d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 1 Dec 2025 15:08:39 +0100 Subject: [PATCH] Bump types-docker from 7.1.0.20251127 to 7.1.0.20251129 (#6369) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Bump types-docker from 7.1.0.20251127 to 7.1.0.20251129 Bumps [types-docker](https://github.com/typeshed-internal/stub_uploader) from 7.1.0.20251127 to 7.1.0.20251129. - [Commits](https://github.com/typeshed-internal/stub_uploader/commits) --- updated-dependencies: - dependency-name: types-docker dependency-version: 7.1.0.20251129 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] * Fix type errors for types-docker 7.1.0.20251129 - Cast stats() return to dict[str, Any] when stream=False since the type stubs return Iterator | dict but we know it's dict when not streaming - Cast attach_socket() return to SocketIO for local Docker connections via Unix socket, as the type stubs include types for SSH and other connection methods 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --------- Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Stefan Agner Co-authored-by: Claude --- requirements_tests.txt | 2 +- supervisor/docker/addon.py | 6 +++++- supervisor/docker/manager.py | 3 ++- 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/requirements_tests.txt b/requirements_tests.txt index e060b7fe2..ccdd86804 100644 --- a/requirements_tests.txt +++ b/requirements_tests.txt @@ -10,7 +10,7 @@ pytest-timeout==2.4.0 pytest==9.0.1 ruff==0.14.7 time-machine==3.1.0 -types-docker==7.1.0.20251127 +types-docker==7.1.0.20251129 types-pyyaml==6.0.12.20250915 types-requests==2.32.4.20250913 urllib3==2.5.0 diff --git a/supervisor/docker/addon.py b/supervisor/docker/addon.py index 48b69defe..5faea61f1 100644 --- a/supervisor/docker/addon.py +++ b/supervisor/docker/addon.py @@ -7,6 +7,7 @@ from ipaddress import IPv4Address import logging import os from pathlib import Path +from socket import SocketIO import tempfile from typing import TYPE_CHECKING, cast @@ -834,7 +835,10 @@ class DockerAddon(DockerInterface): try: # Load needed docker objects container = self.sys_docker.containers.get(self.name) - socket = container.attach_socket(params={"stdin": 1, "stream": 1}) + # attach_socket returns SocketIO for local Docker connections (Unix socket) + socket = cast( + SocketIO, container.attach_socket(params={"stdin": 1, "stream": 1}) + ) except (docker.errors.DockerException, requests.RequestException) as err: _LOGGER.error("Can't attach to %s stdin: %s", self.name, err) raise DockerError() from err diff --git a/supervisor/docker/manager.py b/supervisor/docker/manager.py index 73933bf83..2db73e48c 100644 --- a/supervisor/docker/manager.py +++ b/supervisor/docker/manager.py @@ -708,7 +708,8 @@ class DockerAPI(CoreSysAttributes): raise DockerError(f"Container {name} is not running", _LOGGER.error) try: - return docker_container.stats(stream=False) + # When stream=False, stats() returns dict, not Iterator + return cast(dict[str, Any], docker_container.stats(stream=False)) except (docker_errors.DockerException, requests.RequestException) as err: raise DockerError( f"Can't read stats from {name}: {err}", _LOGGER.error