Soham Gumaste writes: > Hello, > > I am trying to patch the `oauth2.el` elpa library to better integrate > with the native auth-sources system so that functions like nnimap and > smtpmail can use it transparently. > > I noticed the following inconsistency while playing with this: As > shown by [1], the netrc backend does not require :host, :user or :port > as required keys in matched results, however, the plstore backend > requires :host, :login: :port and :secret. > > This is causing an issue for me as I would like to patch the oauth2.el > library to store the access token as a secret, but without any port > associated with it. The oauth2.el library already uses plstore and it > is the more convenient backend to use. > > Please let me know if this is indeed a bug and the possible direction > for a bugfix patch if that is the case. > > Thanks > > > [1]: https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/auth-source.el#n1274 > [2]: https://git.savannah.gnu.org/cgit/emacs.git/tree/lisp/auth-source.el#n2112 > -- > Soham Gumaste > sohamg2@gmail.com > I have done some recent improvements to `oauth2.el'[1] and provided a hackish solution to use it with auth-source[2]. I wonder whether you have tried those out and would like to get your feedback. I am also interested in what you are adding to/modifying `oauth2.el'. In case it's related, in the previous bugs I saw people seemed confused about why `oauth2.el' used a separate storage for storing refresh_token/access_token/etc. while still keeping the other credentials (e.g. client_id, client_secret, etc.) in auth-sources. My understanding is that the data in the separate plstore are ephemeral, e.g. they can expire and need to be refreshed, so it makes sense to use a separate storage. This also can be helpful in case you want to keep it in sync among multiple machines. [1] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72358 [2] https://debbugs.gnu.org/cgi/bugreport.cgi?bug=72992 -- Regards, Xiyue Deng