diff --git a/CHANGES.rst b/CHANGES.rst index a7b94d5b..cc3ad5d1 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -1,3 +1,8 @@ +v23.7.0 +------- + +* #582: Suppress KeyringErrors for devpi client. + v23.6.0 ------- diff --git a/keyring/devpi_client.py b/keyring/devpi_client.py index c9837fe4..dfc02452 100644 --- a/keyring/devpi_client.py +++ b/keyring/devpi_client.py @@ -1,11 +1,19 @@ +import contextlib + from pluggy import HookimplMarker import keyring +from keyring.errors import KeyringError hookimpl = HookimplMarker("devpiclient") +# https://github.com/jaraco/jaraco.context/blob/c3a9b739/jaraco/context.py#L205 +suppress = type('suppress', (contextlib.suppress, contextlib.ContextDecorator), {}) + + @hookimpl() +@suppress(KeyringError) def devpiclient_get_password(url, username): return keyring.get_password(url, username)