From 2d6f52bdf5266688c51f3270cd7e47bbd17c708c Mon Sep 17 00:00:00 2001 From: Matthias Bussonnier Date: Mon, 6 Nov 2023 04:51:51 -0800 Subject: [PATCH] Unused `*args` in `KernelManager`'s `__init__` (#986) * Unused *args in KernelManager `__init__` I think that if it is unused, then it is likely a mistake from the caller that meant to pass a kwargs. This seem to have been ignored since 7.0. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- jupyter_client/manager.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/jupyter_client/manager.py b/jupyter_client/manager.py index 2f7fa0e3..088acd6c 100644 --- a/jupyter_client/manager.py +++ b/jupyter_client/manager.py @@ -9,6 +9,7 @@ import sys import typing as t import uuid +import warnings from asyncio.futures import Future from concurrent.futures import Future as CFuture from contextlib import contextmanager @@ -107,6 +108,15 @@ class KernelManager(ConnectionFileMixin): def __init__(self, *args: t.Any, **kwargs: t.Any) -> None: """Initialize a kernel manager.""" + if args: + warnings.warn( + "Passing positional only arguments to " + "`KernelManager.__init__` is deprecated since jupyter_client" + " 8.6, and will become an error on future versions. Positional " + " arguments have been ignored since jupyter_client 7.0", + DeprecationWarning, + stacklevel=2, + ) self._owns_kernel = kwargs.pop("owns_kernel", True) super().__init__(**kwargs) self._shutdown_status = _ShutdownStatus.Unset