GNU bug report logs -
#76323
30.0.93; auth-source-pass: Annoying error when ~/.password-store doesn't exist
Previous Next
Full log
View this message in rfc822 format
"Basil L. Contovounesios" <basil <at> contovou.net> writes:
> Naofumi Yasufuku [2025-02-16 22:57 +0900] wrote:
>
>> I noticed that auth-source-pass-entries is called many times
>> for each search pattern
>
> Ouch!
>
>> I think it would be better to have just one additional dir check on
>> auth-source-pass-search instead of auth-source-pass-entries.
>> auth-source-pass backend just does nothing if password-store dir is not
>> available. Could it be relatively reasonable cost?
>
> Sounds even better to me.
>
> [ I can imagine external users of auth-source-pass-entries also
> benefitting from the filesystem guard, but I think we can leave it up
> to them to decide if/when/how they need it. ]
>
> CCing some of the recent auth-source-pass (and ERC) contributors in case
> they have any comments on the patch below.
Hi Basil and everyone,
I appreciate the shout but unfortunately can't claim to have ever used
the password store. My experience is limited to attempting to make
portions of auth-source-pass behave more like other back ends for the
purpose of improving its integration with ERC, the result being the
option `auth-source-pass-extra-query-keywords'. However, the patch seems
to make sense from a layman's perspective, for whatever that's worth.
Cheers,
J.P.
>
> [ The original attachment and the rest of the discussion can be found
> here: https://bugs.gnu.org/76323#11 ]
>
> If there are no objections, I think this can be applied soon.
>
> Yasufuku-san, do you have a copyright assignment to the FSF?
> I think this contribution is still well within the limits for being
> exempt, but for future contributions perhaps you would be interested in
> starting the process now, if you haven't already?
>
>> From c42a3abeb04b7c28f8532497fe9c9f0e50521a27 Mon Sep 17 00:00:00 2001
>> From: Naofumi Yasufuku <naofumi <at> yasufuku.dev>
>> Date: Sun, 16 Feb 2025 21:12:17 +0900
>> Subject: [PATCH] auth-source-pass: Don't raise errors if ~/.password-store
>> doesn't exist
>>
>> * lisp/auth-source-pass.el (auth-source-pass-search):
>> If auth-source-pass-filename is not a directory, just do nothing to
>> avoid repeated errors raised by directory-files-recursively in
>> auth-source-pass-entries which is called for each search pattern.
>> (Bug#76323)
>> ---
>> lisp/auth-source-pass.el | 3 +++
>> 1 file changed, 3 insertions(+)
>>
>> diff --git a/lisp/auth-source-pass.el b/lisp/auth-source-pass.el
>> index 80ddb38fa88..33786a14a87 100644
>> --- a/lisp/auth-source-pass.el
>> +++ b/lisp/auth-source-pass.el
>> @@ -85,6 +85,9 @@ auth-source-pass-search
>> ((null host)
>> ;; Do not build a result, as none will match when HOST is nil
>> nil)
>> + ((not (file-directory-p (expand-file-name auth-source-pass-filename)))
>> + ;; Do nothing if the password-store folder doesn't exist.
>> + nil)
>> (auth-source-pass-extra-query-keywords
>> (auth-source-pass--build-result-many host port user require max))
>> (t
>
> Thanks,
This bug report was last modified 131 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.