diff --git a/distributed/client.py b/distributed/client.py index 0d41254a04..53fead4d55 100644 --- a/distributed/client.py +++ b/distributed/client.py @@ -1705,17 +1705,7 @@ async def __aenter__(self): async def __aexit__(self, exc_type, exc_value, traceback): if self._previous_as_current: - try: - _current_client.reset(self._previous_as_current) - except ValueError as e: - if not e.args[0].endswith(" was created in a different Context"): - raise # pragma: nocover - warnings.warn( - "It is deprecated to enter and exit the Client context " - "manager from different tasks", - DeprecationWarning, - stacklevel=2, - ) + _current_client.reset(self._previous_as_current) await self._close( # if we're handling an exception, we assume that it's more # important to deliver that exception than shutdown gracefully. @@ -1724,17 +1714,7 @@ async def __aexit__(self, exc_type, exc_value, traceback): def __exit__(self, exc_type, exc_value, traceback): if self._previous_as_current: - try: - _current_client.reset(self._previous_as_current) - except ValueError as e: - if not e.args[0].endswith(" was created in a different Context"): - raise # pragma: nocover - warnings.warn( - "It is deprecated to enter and exit the Client context " - "manager from different threads", - DeprecationWarning, - stacklevel=2, - ) + _current_client.reset(self._previous_as_current) self.close() def __del__(self): diff --git a/distributed/tests/test_client.py b/distributed/tests/test_client.py index 5882d6bae7..eea7f7acf0 100644 --- a/distributed/tests/test_client.py +++ b/distributed/tests/test_client.py @@ -1330,30 +1330,22 @@ async def client_2(): await asyncio.gather(client_1(), client_2()) -@gen_cluster(client=False, nthreads=[]) +@gen_cluster(nthreads=[]) async def test_context_manager_used_from_different_tasks(s): c = Client(s.address, asynchronous=True) await asyncio.create_task(c.__aenter__()) - with pytest.warns( - DeprecationWarning, - match=r"It is deprecated to enter and exit the Client context manager " - "from different tasks", - ): + with pytest.raises(ValueError, match="was created in a different Context"): await asyncio.create_task(c.__aexit__(None, None, None)) -def test_context_manager_used_from_different_threads(s, loop): +def test_context_manager_used_from_different_threads(s): c = Client(s["address"]) with ( concurrent.futures.ThreadPoolExecutor(1) as tp1, concurrent.futures.ThreadPoolExecutor(1) as tp2, ): tp1.submit(c.__enter__).result() - with pytest.warns( - DeprecationWarning, - match=r"It is deprecated to enter and exit the Client context manager " - "from different threads", - ): + with pytest.raises(ValueError, match="was created in a different Context"): tp2.submit(c.__exit__, None, None, None).result()