Skip to content

Commit

Permalink
Don't split prompt and question in CredentialManager
Browse files Browse the repository at this point in the history
In opposition to the `Credential`'s in datalad core, the
CredentialManager splits the prompting text and the input retrieval when
asking for a property or secret by calling `ui.message` and then
`ui.question`. While this is kinda fine with CLI, other `ui` backends
like gooey can't handle this properly (leading to
datalad/datalad-gooey#340).

The `title` parameter of `ui.question` is intended for the prompting
text, which is somewhat misleading by name.
  • Loading branch information
bpoldrack committed Oct 14, 2022
1 parent 9e14273 commit 256d2fa
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions datalad_next/credman.py
Original file line number Diff line number Diff line change
Expand Up @@ -510,17 +510,17 @@ def _ask_property(self, name, prompt=None):
if not ui.is_interactive:
lgr.debug('Cannot ask for credential property %r in non-interactive session', name)
return
self._prompt(prompt)
return ui.question(name, title=None)

return ui.question(name, title=prompt)

def _ask_secret(self, type_hint=None, prompt=None):
if not ui.is_interactive:
lgr.debug('Cannot ask for credential secret in non-interactive session')
return
self._prompt(prompt)

return ui.question(
type_hint or 'secret',
title=None,
title=prompt,
repeat=self._cfg.obtain(
'datalad.credentials.repeat-secret-entry'),
hidden=self._cfg.obtain(
Expand Down

0 comments on commit 256d2fa

Please sign in to comment.