Commit graph

65 commits

Author SHA1 Message Date
Lars Magne Ingebrigtsen
3451795ca1 Merge changes made in Gnus trunk.
message.el (message-point-in-header-p): Tweak the function to default to saying that we're not in the headers if there is no separator at all.  This makes it possible to use the Message version of `M-q' in buffers with no headers (bug#7987).
 (message-point-in-header-p): Fix last checkin to work with an empty mail-header-separator, too.
auth-source.el (auth-source-netrc-saver): If the user says "don't ask again, save the choice via customize.
message.el (message-send-mail-function): Add `sendmail-query-once'.
nnimap.el (nnimap-finish-retrieve-group-infos): If the server has ended the connection, bail out before waiting infinitely on a new connection.
2011-06-30 01:02:47 +00:00
Gnus developers
60a0884e78 Merge changes made in Gnus trunk.
gnus.texi (Summary Mail Commands): Document `gnus-summary-reply-to-list-with-original'.
auth-source.el (with-auth-source-epa-overrides): Fix compilation error with `find-file-hooks' on Emacs 22.
 (with-auth-source-epa-overrides): Ugly hack to Wrap the `find-file-hook' things in `symbol-value' to avoid compilation warnings on all architectures.
spam.el (spam-stat): Require in a normal fashion without binding `spam-stat-install-hooks' to avoid compilation warnings.
spam-stat.el (spam-stat-install-hooks): Removed.
 (spam-stat-install-hooks): Don't run automatically.
gnus-msg.el (gnus-summary-reply-to-list-with-original): New command and keystroke.
2011-06-26 12:41:14 +00:00
Katsumi Yamaoka
74e8193b79 auth-source.el (auth-source-netrc-cache): Move forward. 2011-06-23 23:17:26 +00:00
Lars Magne Ingebrigtsen
ddb7ffeeb8 When the .authinfo file has a user name but not a password, prompt
for the password.
2011-06-22 16:48:31 +02:00
Lars Magne Ingebrigtsen
6a6e4d9309 Prefer the ~/.authinfo file over the ~/.authinfo.gpg file, especially when saving. 2011-06-21 22:51:45 +02:00
Teodor Zlatanov
61e6a0aceb auth-source.el (auth-source-netrc-use-gpg-tokens): Replace `auth-source-save-secrets' with a more sensitive alist that can be configured per file. Experimental, so defaults to 'never.
(auth-source-netrc-create): Use it.  Still experimental code.
 (with-auth-source-epa-overrides): Use `find-file-hooks' if `find-file-hook' is unbound (XEmacs fix).  Fix backquoting bug.
2011-06-18 22:23:55 +00:00
Teodor Zlatanov
2b8c5660b7 Merge changes made in Gnus trunk.
auth-source.el (auth-source-save-secrets): New variable to control if secret tokens should be saved encrypted.
 (auth-source-netrc-parse, auth-source-netrc-search): Pass the file name to `auth-source-netrc-normalize'.
 (with-auth-source-epa-overrides): Add convenience macro.  Don't depend on the EPA variables being defined.
 (auth-source-epa-make-gpg-token): Convert text to a "gpg:" token.
 (auth-source-netrc-normalize): Convert "gpg:" tokens back to text in the lexical-let closure.
 (auth-source-netrc-create): Create "gpg:" tokens according to `auth-source-save-secrets'.
2011-06-16 06:18:18 +00:00
Stefan Monnier
0adf561883 Fix misuse of quote in `case'.
* lisp/progmodes/ruby-mode.el (ruby-backward-sexp):
* lisp/progmodes/ebrowse.el (ebrowse-draw-file-member-info):
* lisp/play/gamegrid.el (gamegrid-make-face):
* lisp/play/bubbles.el (bubbles--grid-width, bubbles--grid-height)
(bubbles--colors, bubbles--shift-mode, bubbles--initialize-images):
* lisp/notifications.el (notifications-notify):
* lisp/net/xesam.el (xesam-search-engines):
* lisp/net/quickurl.el (quickurl-list-insert):
* lisp/vc/vc-hg.el (vc-hg-dir-printer): Fix use of case.
* lisp/gnus/auth-source.el (auth-source-netrc-create):
* lisp/gnus/message.el (message-yank-original): Fix use of `case'.
* lisp/org/org-src.el (org-src-switch-to-buffer):
* lisp/org/org-plot.el (org-plot/gnuplot-script, org-plot/gnuplot):
* lisp/org/org-mouse.el (org-mouse-agenda-type):
* lisp/org/org-freemind.el (org-freemind-node-to-org):
* lisp/org/ob-sql.el (org-babel-execute:sql):
* lisp/org/ob-exp.el (org-babel-exp-do-export, org-babel-exp-code):
* lisp/org/ob-ref.el (org-babel-ref-resolve): Fix use of case.
2011-03-15 13:39:56 -04:00
Stefan Monnier
aa2ebce9fc * lisp/gnus/auth-source.el (auth-source-netrc-create): Use usual format for the
default in prompts.
2011-03-14 22:44:17 -04:00
Teodor Zlatanov
67613d3160 auth-source.el (auth-source-netrc-create): Show the default in the prompt when prompting for token creation. 2011-03-13 20:50:07 +00:00
Teodor Zlatanov
4248cca2de Merge changes made in Gnus trunk.
auth.texi (Help for developers): Update docs to explain that the :save-function will only run the first time.
auth-source.el (auth-source-format-prompt): Always convert the value to a string to avoid evaluating non-string arguments.
 (auth-source-netrc-create): Offer default properly, not as initial content in `read-string'.
 (auth-source-netrc-saver): Use a cache keyed by file name and MD5 hash of line to determine if we've been run before.  If so, don't run again, but print a trivial message to indicate the cache was hit instead.
2011-03-13 04:07:38 +00:00
Teodor Zlatanov
f3b54b0e1e auth-source.el (auth-source-read-char-choice): Remove `dropdown-list'.
(auth-source-pick-first-password): New convenience function.
2011-03-10 13:32:49 +00:00
Teodor Zlatanov
733afdf4d9 Merge changes made in Gnus trunk.
auth-source.el (auth-source-read-char-choice): New function to read a character choice using `dropdown-list', `read-char-choice', or `read-char'.  It appends "[a/b/c] " to the prompt if the choices were '(?a ?b ?c).  The `dropdown-list' support is disabled for now.  Use `eval-when-compile' to load `dropdown-list'.
 (auth-source-netrc-saver): Use it.
nnimap.el (nnimap-credentials): Keep the :save-function as the third parameter in the credentials.
 (nnimap-open-connection-1): Use it after a successful login.
 (nnimap-credentials): Add IMAP-specific user and password prompt.
auth-source.el (auth-source-search): Add :require parameter, taking a list.  Document it and the :save-function return token.  Pass :require down.  Change the CREATED message from a warning to a debug statement.
 (auth-source-search-backends): Pass :require down.
 (auth-source-netrc-search): Pass :require down.
 (auth-source-netrc-parse): Use :require, if it's given, as a filter.  Change save prompt to indicate all modifications saved here are deletions.
 (auth-source-netrc-create): Take user login name as default in user prompt.  Move all the save functionality to a lexically bound function under the :save-function token in the returned list.  Set up clearer default prompts for user, host, port, and secret.
 (auth-source-netrc-saver): New function, intended to be wrapped for :save-function.
2011-03-09 13:39:35 +00:00
Teodor Zlatanov
61e9662ef5 Merge changes made in Gnus trunk.
auth-source.el (auth-source-search): Cache empty result sets.
password-cache.el (password-in-cache-p): Convenience function to check if a key is in the cache, even if the value is nil.
2011-02-25 23:52:19 +00:00
Gnus developers
003522ceb6 Merge changes made in Gnus trunk.
auth-source.el (auth-source-save-behavior): New variable to replace `auth-source-never-create'.
 (auth-source-netrc-create): Use it.
 (auth-source-never-save): Remove.
nnimap.el (nnimap-stream): Doc fix.
 (nnimap-open-connection-1): Reverse the order of the ports to that the prompted-for port is first.
gnus-start.el (gnus-get-unread-articles): Don't clobber the async retrieval by the no-group selection.
gnus-demon.el (gnus-demon-init): run-with-timer should be called with numerical parameters.
auth-source.el (auth-source-creation-prompts): New variable to manage creation-time prompts.
 (auth-source-search): Document it.
 (auth-source-format-prompt): Add utility function.
 (auth-source-netrc-create): Don't default the user name to user-login-name.  Use `auth-source-creation-prompts' and some default prompts for user, host, port, and password (the default generic prompt remains ugly).
 (auth-source-never-save): Add customizable option to never save info.
 (auth-source-netrc-create): Use it and improve save prompts.  Fix help mode excursion.
2011-02-25 12:53:00 +00:00
Katsumi Yamaoka
a22e7484fa auth-source.el (auth-source-netrc-create): Use `read-char' with no argument that XEmacs doesn't support. 2011-02-24 06:32:33 +00:00
Gnus developers
fa41748c14 Merge changes made in Gnus trunk.
gnus-art.el (article-make-date-line): Ignore errors if time is invalid and not convertible.
 (article-make-date-line): Only add lapsed time if time is not nil.
auth-source.el (auth-source-netrc-element-or-first): New function to DTRT for parameter extraction.
 (auth-source-netrc-create): Use it and fix multiple parameter print bug.  Use the default passed from above (given-default) or the built-in (user-login-name for :user).
2011-02-23 22:59:34 +00:00
Teodor Zlatanov
d41d18c098 auth-source.el (auth-source-netrc-create): Use read-char' instead of read-char-choice' for backwards compatibility. 2011-02-23 14:34:44 +00:00
Gnus developers
4a3988d518 Merge changes made in Gnus trunk.
auth.texi (Help for users): Mention ~/.netrc is also searched by default now.
gnus-start.el (gnus-dribble-read-file): Set buffer-save-without-query, since we always want to save the dribble file, probably.
nnmail.el (nnmail-article-group): Allow a final "" split to work on nnimap.
gnus-sum.el (gnus-user-date-format-alist): Renamed back again from -summary- since it's a user-visible variable.
nnimap.el (nnimap-retrieve-group-data-early): Don't do QRESYNC the first time you use the new Gnus.
auth-source.el: Don't load netrc.el.
 (auth-sources): Search ~/.netrc as well by default.
 (auth-source-debug): Add 'trivia option for extra output.
 (auth-source-do-trivia): Use it.
 (auth-source-search): Simplify logic to use `auth-source-search-backends'.  Use `auth-source-do-trivia' where appropriate.  Don't keep a running count at this level.  Layer :create and :delete options appropriately on the first and second passes.  Don't track the backend with the search results.
 (auth-source-search-backends): New function to search a list of backends for a processed spec.
 (auth-source-netrc-parse): Cache all netrc files, making auth-source-netrc-cache an alist keyed by the file name and using the file mtime as the caching criterion.  Keep the obfuscated data secret with a lexical bind.
 (auth-source-netrc-search): Don't calculate the length of the results unnecessarily.
 (auth-source-search-backends): Fix bug.
 (auth-source-netrc-create): Rework prompts.
nnir.el (nnir-imap-search-arguments,nnir-imap-default-search-key): Lower case names of search constraints.
 (nnir-run-query): Cache and reuse search constraints for all imap servers.
gnus-msg.el (gnus-setup-message): Define missing variable from last checkin.
2011-02-23 13:35:35 +00:00
Gnus developers
8e22bee040 Merge changes made in Gnus trunk.
gnus.texi (Article Date): Clarify gnus-article-update-date-headers.
gnus-msg.el (gnus-inews-add-send-actions): Restore the winconf name after exit.
gnus-sum.el (gnus-summary-show-article): When called with t as the value, show the raw article.
nnimap.el (nnimap-open-connection-1): Revert last change, since auth-source now accepts numbers.
auth-source.el (auth-source-netrc-parse): Accept a number as the port spec, too.
 (auth-source-ensure-strings): New function.
gnus-art.el (gnus-article-update-date-headers): Doc fix.
 (gnus-article-setup-buffer): Always restart the date timer so that user changes to the frequency is respected.
nnimap.el (nnimap-open-connection-1): auth-source expects strings as port numbers, so make sure it gets that if nnimap-server-port is explicit.
nnimap.el (nnimap-inbox): Doc fix.
2011-02-22 13:31:15 +00:00
Lars Ingebrigtsen
06b840e0d9 Merge changes made in Gnus trunk.
gnus.texi (Window Layout): Document layout names.
nntp.el (nntp-finish-retrieve-group-infos): Add a kludge to use the given method as in the group name if we're using an extended method.
 (nntp-finish-retrieve-group-infos): Wait for the end of the LIST ACTIVE command, if we're using that, instead of waiting for the beginning.
gnus-start.el (gnus-get-unread-articles): Extend the methods so that we're sure to get unique server names, and we don't output two async commands in the same buffer.  This fixes an NNTP hang for some users.
netrc.el (netrc-parse): Comment fix.
gnus-sum.el (gnus-summary-next-article): Add a kludge to reselect the summary buffer before reading going to the next buffer.  This avoids putting the point in the group buffer if you `C-g' the command.
auth-source.el (auth-source-netrc-parse): Add an in-memory netrc cache (for now) to make ~/.authinfo.gpg files usable.
nnfolder.el (copyright-update): Define for the compiler.
auth-source.el (auth-source-search): Fix unbound variable.
2011-02-21 13:29:15 +00:00
Lars Ingebrigtsen
0d873e93b7 auth-source.el (auth-source-search): If we don't find a match, don't bug out on non-bound variables.
(auth-source-search): Only ask a single backend to create the credentials.
2011-02-18 23:15:24 +00:00
Lars Ingebrigtsen
3804652098 auth-source.el (auth-source-search): Don't try to create credentials if the caller doesn't want that. 2011-02-18 01:48:21 +00:00
Lars Ingebrigtsen
1d2c4a492b auth-source.el (auth-source-search): Do a two-phase search, one with no :create to get the responses from all backends. 2011-02-17 23:48:59 +00:00
Gnus developers
7ba93e9439 Merge chagnes made in Gnus trunk.
auth.texi (GnuPG and EasyPG Assistant Configuration): Mention the default now is to have two files in `auth-sources'.
nnimap.el (nnimap-open-connection-1): Delete duplicate server names when getting credentials.
gnus-util.el (gnus-delete-duplicates): New function.
nnimap.el (nnimap-credentials): Instead of picking the first port as a creation default, pass the whole port list down.  It will be completed.
auth-source.el (auth-source-search): Updated docs to talk about multiple creation choices.
 (auth-source-netrc-create): Accept a list as a value (from the search parameters) and do completion on that list.  Keep a separate netrc line with the password obscured for showing the user.
nnimap.el (nnimap-open-connection-1): Make the `nnimap-address' the first choice to `auth-source-search' so it will be used for entry creation instead of the server's Gnus-specific name.
 (nnimap-credentials): Rely on the auth-source library to select which port is actually wanted in the new netrc entry, so don't override `auth-source-creation-defaults'.
2011-02-17 23:46:18 +00:00
Teodor Zlatanov
a202ff49bf auth-source.el (auth-source-debug): Default to off. 2011-02-17 12:50:01 +00:00
Teodor Zlatanov
35123c042e auth.texi (Help for users): Use :port instead of :protocol for all auth-source docs.
auth-source.el (auth-source-netrc-parse): Use :port instead of :protocol and accept a missing user, host, or port as a wildcard match.
 (auth-source-netrc-search, auth-source-netrc-create)
 (auth-source-secrets-search, auth-source-secrets-create)
 (auth-source-user-or-password, auth-source-backend, auth-sources)
 (auth-source-backend-parse-parameters, auth-source-search): Use :port instead of :protocol.
nnimap.el (nnimap-credentials): Pass a port default to `auth-source-search' in case an entry needs to be created.
 (nnimap-open-connection-1): Use :port instead of :protocol.
2011-02-17 12:08:48 +00:00
Katsumi Yamaoka
d638ac9ecc auth-source.el (auth-source-secrets-search): Use mm-delete-duplicates instead of delete-dups that is not available in XEmacs 21.4. 2011-02-17 05:09:02 +00:00
Gnus developers
584c9d3fd0 Merge changes made in Gnus trunk.
gnus-sum.el (gnus-propagate-marks): Change default to t again, since nil means that nnimap doesn't get updated.
auth-source.el (auth-source-netrc-create): Return a synthetic search result when the user doesn't want to write to the file.
 (auth-source-netrc-search): Expect a synthetic result and proceed accordingly.
 (auth-source-cache-expiry): New variable to override `password-cache-expiry'.
 (auth-source-remember): Use it.
nnimap.el (nnimap-credentials): Remove the `inhibit-create' parameter.  Create entry if necessary by using :create t.
 (nnimap-open-connection-1): Don't pass `inhibit-create'.
2011-02-16 23:12:47 +00:00
Teodor Zlatanov
ca6ddb88b5 auth-source.el (auth-source-debug): Enable by default and don't mention the obsolete `auth-source-hide-passwords'.
(auth-source-do-warn): New function to debug unconditionally.
 (auth-source-do-debug): Use it.
 (auth-source-backend-parse): Use it for invalid `auth-sources' entries and for Secrets API entries when the secrets.el library is not available.
2011-02-16 00:00:21 +00:00
Gnus developers
5415d0766d Merge changes made in Gnus trunk.
auth.texi (Help for users): Login collection is "Login" and not "login".
gnus-sum.el (gnus-propagate-marks): Default to nil.
 (gnus-summary-exit): Kill the correct article buffer on exit from a `C-d' group.
gnus-start.el (gnus-use-backend-marks): Removed, since it duplicates gnus-propagate-marks.
gnus-sum.el (gnus-summary-exit-no-update): Restore the group conf before killing the buffers so that a non-full window conf gets handled correctly.
 (gnus-summary-exit): Ditto.
 (gnus-summary-read-group-1): Ditto.
nntp.el (nntp-retrieve-group-data-early): Reinstate the two-part async code again so that we can debug it properly.
message.el (message-reply): Take an optional switch-buffer parameter so that Gnus window confs are respected better.
auth-source.el (auth-source-secrets-search): Use `delete-dups', `append mapcar', and `butlast' instead of `remove-duplicates', `mapcan', and `subseq'.
 (auth-sources, auth-source-backend-parse, auth-source-secrets-search): Login collection is "Login" and not "login".
gnus-art.el (article-update-date-lapsed): Don't bug out when updating multiple headers.
2011-02-15 11:24:37 +00:00
Teodor Zlatanov
e45de620e7 auth-source.el (auth-source-backend-parse-parameters): Don't rely on `plist-get' to accept non-list parameters (XEmacs issue). Fix docstring. 2011-02-14 12:24:43 +00:00
Lars Ingebrigtsen
d5e9a4e9a7 nnimap.el (nnimap-inhibit-logging): New variable.
(nnimap-log-command): Don't log login commands.
auth-source.el (auth-source-netrc-search): The asserts seem to want to have more parameters.
nnimap.el (nnimap-send-command): Mark the command time for each command, so that we don't get NOOPs stepping on our toes.
gnus-art.el (article-date-ut): Get the date from the Date header on `t'.
2011-02-14 04:23:59 +00:00
Katsumi Yamaoka
6ce6c7420c auth-source.el (auth-source-search): Use copy-sequence instead of the cl.el copy-list. 2011-02-14 01:38:00 +00:00
Gnus developers
b8e0f0cd20 Merge changes made in Gnus trunk.
auth.texi (Overview, Help for users, Help for developers): Update docs.
 (Help for users): Talk about spaces.
sieve-manage.el: Autoload `auth-source-search'.
 (sieve-sasl-auth): Use it.
nnimap.el: Autoload `auth-source-forget+'.
 (nnimap-open-connection-1): Use it if the connection fails.
auth-source.el: Require `password-cache'.
 (auth-source-hide-passwords, auth-source-cache): Remove and mark obsolete.
 (auth-source-magic): Marker for `password-cache' keys.
 (auth-source-do-cache): Update docstring.
 (auth-source-search): Use and check cache.
 (auth-source-forget-all-cached, auth-source-remember)
 (auth-source-recall, auth-source-forget, auth-source-forget+)
 (auth-source-specmatchp): Caching support functions.
 (auth-source-forget-user-or-password, auth-source-forget-all-cached): Remove and obsolete.
 (auth-source-user-or-password): Remove caching to further discourage using it.  Always hide passwords.
password-cache.el (password-cache-remove): Accept secrets that are not strings.
mail-source.el: Autoload `auth-source-search'.
 (mail-source-keyword-map): Note order matters.
 (mail-source-set-1): Get all the mail-source source values and defaults and search auth-source on those if needed.  This can all probably be simplified.
nnimap.el: Autoload `auth-source-search'.
 (nnimap-credentials): Use it.
 (nnimap-open-connection-1): Ask for the virtual server and physical address in one shot.
nntp.el: Autoload `auth-source-search'.
 (nntp-send-authinfo): Use it.  Note TODO.
auth-source.el (auth-source-secrets-search, auth-source-user-or-password): Use `append' instead of `nconc'.
 (auth-source-user-or-password): Build return list better and protect against nil :secret.
auth-source.el (top): Require 'eieio unconditionally.  Autoload `secrets-get-attributes' instead of `secrets-get-attribute'.
 (auth-source-secrets-search): Limit search when `max' is greater than number of results.
auth-source.el (auth-source-secrets-search): Add examples.
auth-source.el (auth-sources): Allow for simpler defaults for Secrets API with a string "secrets:collection-name" and with 'default.
 (auth-source-backend-parse): Parse "secrets:collection-name" and 'default.  Recurse on parses instead of repeating code.  Use the Secrets API is the source is not nil and 'ignore otherwise.  Emit a message when ignoring a source.
 (auth-source-search): List ignored search keys at the top level.
 (auth-source-netrc-create): Use `case' instead of `cond'.
 (auth-source-secrets-search): Created with TODOs.
 (auth-source-secrets-create): Created with TODOs.
 (auth-source-retrieve, auth-source-create, auth-source-delete)
 (auth-source-protocol-defaults, auth-source-user-or-password-imap)
 (auth-source-user-or-password-pop3, auth-source-user-or-password-ssh)
 (auth-source-user-or-password-sftp)
 (auth-source-user-or-password-smtp): Removed.
 (auth-source-user-or-password): Deprecated and modified to be a wrapper around `auth-source-search'.  Not tested thoroughly.
auth-source.el: Bring in assoc and eioeio libraries.
 (secrets-enabled): New variable to track the status of the Secrets API.
 (auth-source-backend): New EIOEIO class to represent a backend.
 (auth-source-creation-defaults): New variable to set prompt defaults during token creation (see the `auth-source-search' docstring for details).
 (auth-sources): Simplify to allow a simple string as a netrc backend spec.
 (auth-source-backend-parse): Parse a backend from an `auth-sources' spec.
 (auth-source-backend-parse-parameters): Fill in the backend parameters.
 (auth-source-search): Main auth-source API entry point.
 (auth-source-delete): Wrapper around `auth-source-search' for deletion.
 (auth-source-search-collection): Helper function for searching.
 (auth-source-netrc-parse, auth-source-netrc-normalize)
 (auth-source-netrc-search, auth-source-netrc-create): Netrc backend.  Supports search, create, and delete.
 (auth-source-secrets-search, auth-source-secrets-create): Secrets API backend stubs.
(auth-source-user-or-password): Call `auth-source-search' but it's not ready yet.
2011-02-13 00:25:29 +00:00
Glenn Morris
73b0cd5003 Convert consecutive FSF copyright years to ranges. 2011-01-24 20:08:28 -08:00
Gnus developers
bb7f5cbcda Merge changes made in Gnus trunk.
mm-view.el (mml-smime): Require.
mm-view.el (mm-view-pkcs7-decrypt): If mml-smime-use is set to 'epg, use EPG to decrypt S/MIME messages instead of openssl.
nnimap.el (nnimap-request-group): Avoid double SELECT on `M-g'.
gnus-group.el (gnus-group-kill-group): Don't try to update the group status is the group clearly is unreachable.
auth-source.el (auth-source-create): Add the optional second parameter to `local-variable-p' to be compatible with XEmacs.
nnml.el (nnml-request-article): Allow requesting by Message-ID to work when using a compressed nnml folder.
gnus-sum.el (gnus-select-newsgroup): Don't propagate marks to backends after sanitising on entry, because this never makes sense: If the articles have gone missing, then the data no longer exists on the backend, and if they haven't, then Gnus is wrong, and shouldn't overwrite anything anyway.
shr.el (shr-insert-document): Bind shr-width dynamically to window-width if it's nil.
shr.el (shr-width, shr-insert-document): Allow nil as shr-width value with the meaning of using the full emacs window width for rendering.
2011-01-02 11:23:02 +00:00
Gnus developers
549c9aed8d Merge changes made in Gnus trunk.
nnimap.el (nnimap-wait-for-response): Always look (at least) at the previous line.
nnimap.el (nnimap-quirk): New function.
 (nnimap-retrieve-group-data-early): Use it.
 (nnimap-quirks): New alist.
gnus.texi (Foreign Groups): Added clarification of foreign groups.
gnus-sum.el (gnus-summary-push-marks-to-backend): Fix the logic for copying read-ness to the backends.
gnus-group.el (gnus-group-kill-group): Notify the backend that the group has been killed.
 (gnus-group-yank-group): Ditto.
gnus-start.el (gnus-subscribe-newsgroup): Notify the backend.
nnir.el: Improve customizations.
gnus.texi (Archived Messages): Removed outdated comment and text.
nnfolder.el (nnfolder-save-all-buffers): Refactor out into its own function.
 (nnfolder-request-expire-articles): Save all the buffers after doing expiry.
nnmail.el (nnmail-expiry-target-group): Revert the "all articles are the last article", since that led to serious performance regressions when expiring nnml groups.
gnus-html.el (gnus-html-schedule-image-fetching): Make sure the HTML fetching stops when Gnus exits.
gnus-srvr.el: Avoid passing nil regexp argument to delete-matching-lines.
auth-source.el (auth-source-gpg-encrypt-to): New variable to set the list of recipient keys, or use symmetric encryption if not a list.
 (auth-source-create): Use it to make `epa-file-encrypt-to' local for an EPA override, replacing the call to `netrc-store-data'.
2010-12-16 22:22:28 +00:00
Gnus developers
dab0271f8d Merge changes made in Gnus trunk.
nnimap.el (nnimap-wait-for-response): If the user hits `C-g', kill the process, too.
nnir.el (gnus-summary-nnir-goto-thread): Modify to work with imap.
nnimap.el (nnimap-update-info): If the server doesn't return any useful info, just use the previous info.
nnimap.el (nnimap-update-info): Prefer old info over start-article.
nnimap.el (nnimap-update-qresync-info): Finish implementing QRESYNC.
auth-source.el (auth-source-create): Use (user-login-name) for the user name default.
nnimap.el (nnimap-open-connection): Use gnutls STARTTLS, if available.
nnimap.el (nnimap-update-info): Rely more on the current active than the param active to avoid marking articles as read too much.
gnus-sum.el (gnus-summary-set-local-parameters): Ignore the `active' non-variable, too.
nnimap.el (nnimap-update-qresync-info): \Flagged messages are read for Gnus.
nnimap.el (nnimap-retrieve-group-data-early): utf7-encode the group parameters.
nnimap.el (nnimap-update-qresync-info): Mark \Seen articles as read.
2010-10-10 22:48:40 +00:00
Teodor Zlatanov
cbabe91fdc gnus-int.el, gnus-util.el: Gnus hooks for the mark get/set operations.
gnus-sync.el: Update docs to explain state and plans.
auth-source.el: Update docs with TODO items.
2010-10-07 03:49:38 +00:00
Lars Magne Ingebrigtsen
1821a7b491 auth-source.el (auth-source-create): Query the user for whether to store the credentials.
auth-source.el: Require netrc.
nnml.el (nnml-open-nov): Don't return dead buffers.
gnus-picon.el (gnus-picon-xbm): Removed obsolete face.
gnus-picon.el (gnus-picon-insert-glyph): Make the background white.
gnus-art.el (gnus-treatment-function-alist): Insert picons after doing the header highlightling.
2010-09-26 13:25:35 +00:00
Gnus developers
2d04f304a2 gnus-sum.el (gnus-auto-center-group): Transform into a defcustom.
gnus.el (gnus-group-fast-parameter): Return the last matching parameter instead of the first matching parameter.
auth-source.el (auth-source-user-or-password): Query for password, although there are no existing auth sources.
auth-source.el (auth-source-user-or-password): Use the existing auth sources, if any, for creation.
2010-09-26 12:47:09 +00:00
Katsumi Yamaoka
20a673b2d0 Merge changes made in Gnus trunk.
Reimplement nnimap, and do tweaks to the rest of the code to support that.

* gnus-int.el (gnus-finish-retrieve-group-infos)
(gnus-retrieve-group-data-early): New functions.

* gnus-range.el (gnus-range-nconcat): New function.

* gnus-start.el (gnus-get-unread-articles): Support early retrieval of
data.
(gnus-read-active-for-groups): Support finishing the early retrieval of
data.

* gnus-sum.el (gnus-summary-move-article): Pass the move-to group name
if the move is internal, so that nnimap can do fast internal moves.

* gnus.el (gnus-article-special-mark-lists): Add uid/active tuples, for
nnimap usage.

* nnimap.el: Rewritten.

* nnmail.el (nnmail-inhibit-default-split-group): New internal variable
to allow the mail splitting to not return a default group.  This is
useful for nnimap, which will leave unmatched mail in the inbox.

* utf7.el (utf7-encode): Autoload.


Implement shell connection.

* nnimap.el (nnimap-open-shell-stream): New function.
(nnimap-open-connection): Use it.


Get the number of lines by using BODYSTRUCTURE.

(nnimap-transform-headers): Get the number of lines in each message.
(nnimap-retrieve-headers): Query for BODYSTRUCTURE so that we get the
number of lines.


Not all servers return UIDNEXT.  Work past this problem.


Remove junk from end of file.


Fix typo in "bogus" section.


Make capabilties be case-insensitive.


Require cl when compiling.


Don't bug out if the LIST command doesn't have any parameters.

2010-09-17  Knut Anders Hatlen  <kahatlen@gmail.com>  (tiny change)

	    * nnimap.el (nnimap-get-groups): Don't bug out if the LIST command
	    doesn't have any parameters.


(mm-text-html-renderer): Document gnus-article-html.

2010-09-17  Julien Danjou  <julien@danjou.info>  (tiny fix)

	    * mm-decode.el (mm-text-html-renderer): Document gnus-article-html.


* dgnushack.el: Define netrc-credentials.


If the user doesn't have a /etc/services, supply some sensible port defaults.


Have `unseen-or-unread' select an unread unseen article first.


(nntp-open-server): Return whether the open was successful or not.


Throughout all files, replace (save-excursion (set-buffer ...)) with (with-current-buffer ... ).


Save result so that it doesn't say "failed" all the time.


Add ~/.authinfo to the default, since that's probably most useful for users.


Don't use the "finish" method when we're reading from the agent.


Add some more nnimap-relevant agent stuff to nnagent.el.


* nnimap.el (nnimap-with-process-buffer): Removed.


Revert one line that was changed by mistake in the last checkin.


(nnimap-open-connection): Don't error out when we can't make a connection


nnimap-related changes to avoid bugging out if we can't contact a server.
* gnus-start.el (gnus-get-unread-articles): Don't try to scan groups
 from methods that are denied.
* nnimap.el (nnimap-possibly-change-group): Return nil if we can't log
 in.
(nnimap-finish-retrieve-group-infos): Make sure we're not waiting for
 nothing.
* gnus-sum.el (gnus-select-newsgroup): Indent.
2010-09-18 10:02:19 +00:00
Lars Magne Ingebrigtsen
53080505af Remove arch-tags from all files, since these are no longer needed. 2010-09-02 00:55:51 +00:00
Michael Albinus
85350e06b0 * auth-source.el (auth-source-pick): If choice does not contain a
questioned keyword, set the check to t.
2010-06-15 22:13:34 +02:00
Michael Albinus
0e4966fb65 * auth-source.el (top): Autoload `secrets-list-collections',
`secrets-create-item', `secrets-delete-item'.
(auth-sources): Fix tag string.
(auth-get-source, auth-source-retrieve, auth-source-create)
(auth-source-delete): New defuns.
(auth-source-pick): Rewrite in order to avoid 2 passes.
(auth-source-forget-user-or-password): New parameter USERNAME.
(auth-source-user-or-password): New parameters CREATE-MISSING and
DELETE-EXISTING.  Retrieve password interactively, if needed.
2010-06-08 15:05:11 +02:00
Katsumi Yamaoka
afae6cd428 2010-03-29 Teodor Zlatanov <tzz@lifelogs.com>
* auth-source.el (auth-source-pick): Fix for non-secrets specifier.
2010-03-29 09:28:20 +00:00
Katsumi Yamaoka
fb178e4c72 2010-03-27 Teodor Zlatanov <tzz@lifelogs.com>
* auth-source.el (auth-sources): Change default to be simpler.  Explain
 about Secret Service API sources.  Improve Customize options.
 (auth-source-pick): Change to accept any number of search parameters.
 Implement fallbacks iteratively, not recursively.  Add scoring on the
 second pass and sort by score.  Call Secret Service API when needed.
 (auth-source-user-or-password): Use it.  Call Secret Service API
 directly when needed to get the user name and the password.
2010-03-28 23:52:01 +00:00
Katsumi Yamaoka
ec7995fa61 Synch with Gnus trunk
=====================
2010-03-23  Katsumi Yamaoka  <yamaoka@jpl.org>

 * gnus-art.el (canlock-verify): Autoload it for Emacs 21.

 * message.el (ecomplete-setup): Autoload it for Emacs <23.

 * mml-sec.el (mml-secure-cache-passphrase): Default to t that is
 password-cache's default if it is not bound.
 (mml-secure-passphrase-cache-expiry): Default to 16 that is
 password-cache-expiry's default if it is not bound.

 * pop3.el (pop3-list): Don't use 3rd arg of `split-string' which is not
 available in Emacs 21.

2010-03-23  Teodor Zlatanov  <tzz@lifelogs.com>

 * auth-source.el (auth-sources): Fix up definition so extra parameters
 are always inline.

2010-03-22  Martin Stjernholm  <mast@lysator.liu.se>

 * nnimap.el (nnimap-verify-uidvalidity): Fixed bug where uidvalidity
 wasn't updated after mismatch.  Clear cached mailbox info correctly
 when uidvalidity changes.
 (nnimap-group-prefixed-name): New function to avoid some code
 duplication.
 (nnimap-verify-uidvalidity, nnimap-group-overview-filename)
 (nnimap-request-group): Use it.
 (nnimap-retrieve-groups, nnimap-verify-uidvalidity)
 (nnimap-update-unseen): Significantly improved speed of Gnus startup
 with many imap folders.  This is done by caching the group status from
 the imap server persistently in a group parameter `imap-status'. (This
 was cached before too if `nnimap-retrieve-groups-asynchronous' was set,
 but not persistently, so every Gnus startup was still very slow.)

2010-03-20  Teodor Zlatanov  <tzz@lifelogs.com>

 * auth-source.el: Set up autoloads.  Bump to 23.2 because of the
 secrets.el dependency.
 (auth-sources): Add optional user name.  Add secrets.el configuration
 choice (unused right now).

2010-03-20  Teodor Zlatanov  <tzz@lifelogs.com>

 * gnus-sum.el (gnus-summary-make-menu-bar): Let
 `gnus-registry-install-shortcuts' fill in the functions.

 * gnus-registry.el (gnus-summary-misc-menu): Declare to avoid
 warnings.
 (gnus-registry-misc-menus): Variable to hold registry mark menus.
 (gnus-registry-install-shortcuts): Populate and use it in a
 `gnus-summary-menu-hook' lambda, under "Gnus"->"Registry Marks".

2010-03-20  Martin Stjernholm  <mast@lysator.liu.se>

 * nnimap.el (nnimap-decode-group-name, nnimap-encode-group-name):
 In-place substitutions for the group name encoding/decoding.
 (nnimap-find-minmax-uid, nnimap-possibly-change-group)
 (nnimap-retrieve-headers-progress, nnimap-possibly-change-group)
 (nnimap-retrieve-headers-progress, nnimap-request-article-part)
 (nnimap-update-unseen, nnimap-request-list)
 (nnimap-retrieve-groups, nnimap-request-update-info-internal)
 (nnimap-request-set-mark, nnimap-split-to-groups)
 (nnimap-split-articles, nnimap-request-newgroups)
 (nnimap-request-create-group, nnimap-request-accept-article)
 (nnimap-request-delete-group, nnimap-request-rename-group)
 (nnimap-acl-get, nnimap-acl-edit): Use them.  Replace `mbx' with
 `encoded-mbx' for consistency.
 (nnimap-close-group): Call `imap-current-mailbox' instead of using the
 variable `imap-current-mailbox'.

 * gnus-agent.el (gnus-agent-fetch-articles, gnus-agent-fetch-headers)
 (gnus-agent-regenerate-group): Use `gnus-agent-decoded-group-name'.

2010-03-20  Bojan Petrovic  <bpetrovi@f.bg.ac.rs>

 * pop3.el (pop3-display-message-size-flag): Display message size byte
 counts during POP3 download.
 (pop3-movemail): Use it.
 (pop3-list): Implement listing of available messages.

2010-03-20  Mark Triggs  <mst@dishevelled.net>  (tiny change)

 * nnir.el (nnir-get-article-nov-override-function): New function to
 override the normal NOV retrieval.
 (nnir-retrieve-headers): Use it.
2010-03-23 07:37:09 +00:00
Michael Albinus
7d1a916339 * auth-source.el (netrc-machine-user-or-password): Autoload. 2010-03-19 11:29:02 +01:00