2011-04-06 David Engster * registry.el (initialize-instance): Change :after to :AFTER to be compatible with old EIEIO version in XEmacs. 2011-04-06 Teodor Zlatanov * gnus-registry.el (gnus-registry-post-process-groups) (gnus-registry--split-fancy-with-parent-internal): Fix splitting bugs and provide better messaging. 2011-04-06 David Engster * Makefile.in (fail-on-warning): New rule to compile with warnings as errors. * dgnushack.el (dgnushack-compile-error-on-warn): New function to call dgnushack-compile with error-on-warn enabled, and to signal an error if clean compilation failed. (dgnushack-compile): New argument 'error-on-warn'. If non-nil, compile with `byte-compile-error-on-warn'. Return nil if errors occured. 2011-04-06 Teodor Zlatanov * gnus-registry.el: Don't use ERT if it's not available. Load it unconditionally anyway, discarding errors. (gnus-registry-delete-entries): New convenience function. (gnus-registry-import-eld): Import from old .eld registry. * registry.el: Don't use ERT if it's not available. Load it unconditionally anyway, discarding errors. * proto-stream.el (gnutls-negotiate): Revert inadvertent commit of the version from the Claudio Bley GnuTLS patch (extra optional parameters and host name). 2011-04-05 Teodor Zlatanov * gnus-registry.el (gnus-registry-fixup-registry): New function to fixup the parameters that can be customized by the user between save/read cycles. (gnus-registry-read): Use it. (gnus-registry-make-db): Use it. (gnus-registry-spool-action, gnus-registry-handle-action): Fix messaging. (gnus-registry--split-fancy-with-parent-internal): Fix loop. Map references to actual group names with sender and subject tracking. (gnus-registry-post-process-groups): Use `cond' for better messaging. (gnus-registry-usage-test): Add subject lookup test. * registry.el (registry-db, initialize-instance): Set up constructor instead of :initform arguments for the sake of older Emacsen. (registry-lookup-breaks-before-lexbind): New method to demonstrate pre-lexbind merge bug. (registry-usage-test): Use it. (initialize-instance, registry-db): Move the non-function initforms back to the class definition. 2011-04-03 Teodor Zlatanov * registry.el: New library to manage gnus-registry-style data. * gnus-registry.el: Use it (major rewrite). * nnregistry.el: Use it. * spam.el: Use it. 2011-04-03 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-update-marks): Reinstate the code to not alter marks on non-selected articles. 2011-04-02 Chong Yidong * nnimap.el (nnimap-open-connection-1): Pass explicit :end-of-command parameter to open-protocol-stream. 2011-04-01 Julien Danjou * mm-view.el (mm-display-inline-fontify): Do not fontify with fundamental-mode. 2011-04-01 Lars Magne Ingebrigtsen * gnus-start.el (gnus-get-unread-articles): Don't try to contact denied servers. 2011-03-30 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-update-marks): Revert intersection change, which made marks not propagate, again. 2011-03-30 Chong Yidong * proto-stream.el (open-protocol-stream): Bring back `network' type. Make this the default type. (proto-stream-open-plain): Rename from proto-stream-open-default. (open-protocol-stream, proto-stream-open-starttls) (proto-stream-open-tls, proto-stream-open-shell): Replace `default' with `plain'. * nnimap.el (nnimap-stream, nnimap-open-connection-1): Accept `network' value. * nntp.el (nntp-open-connection-function): Document the fact that some values are not functions but are instead handled specially. Recognize nntp-open-plain-stream value. (nntp-open-connection): Recognize that value. 2011-03-30 Lars Magne Ingebrigtsen * dgnushack.el: Only do the defcustom compilation thing on XEmacs, where it seems to be needed. 2011-03-29 Lars Magne Ingebrigtsen * gssapi.el (open-gssapi-stream): Remove the last mentions of the IMAP stuff. * gnus-score.el (gnus-score-string): Fix calling convention of `gnus-simplify-buffer-fuzzy' after last patches. * gnus-sum.el (gnus-update-marks): Don't send any marks updates to the server for articles we didn't get any headers for. This is a sanity check. 2011-03-29 Michael Welsh Duggan * nnimap.el (nnimap-open-connection-1): Is the login responds with a new CAPABILITY, use it. 2011-03-29 Lars Magne Ingebrigtsen * gnus-agent.el (gnus-agent-fetch-headers): Don't message if we're not downloading anything. * gnus.el (gnus-splash-svg-color-symbols): Removed superfluous `and'. 2011-03-29 Adam Sjøgren * gnus.el (gnus-group-startup-message): Prefer svg file and replace colors. (gnus-splash-svg-color-symbols): New function. 2011-03-29 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-simplify-buffer-fuzzy): Take the regexp explicitly instead of using the global gnus-simplify-subject-fuzzy-regexp. (gnus-simplify-subject-fuzzy): Use the local gnus-simplify-subject-fuzzy-regex instead of the global one. This makes using this variable in group parameters work. 2011-03-29 Teodor Zlatanov * gnus-registry.el (gnus-registry-unfollowed-groups): Add "archive:sent" to the unfollowed group regex (for the recent Gnus archive:sent-YYYY-MM-DD groups). (gnus-registry-split-fancy-with-parent): Bail out early in sender tracking if there are more than `gnus-registry-max-track-groups' matches. 2011-03-29 Stefan Monnier * message.el (message--yank-original-internal): New function to do the insertion cleanly inside eval in `message-yank-original'. (message-yank-original): Use it. 2011-03-29 Julien Danjou * mm-view.el (mm-display-inline-fontify): Use `set-normal-mode' with local variables disabled rather than `normal-mode'. 2011-03-28 Brian T. Sniffen (tiny change) * imap.el (imap-shell-open, imap-process-connection-type): Use imap-process-connection-type for 'shell' streams as well as Kerberos, SSL, other subprocesses. 2011-03-26 Chong Yidong * proto-stream.el: Changes preparatory to merging open-protocol-stream with open-network-stream. (proto-stream-always-use-starttls): Option removed. (open-protocol-stream): Return a process object by default. Provide a new parameter :return-list specifying a list-type return value, which now has the form (PROP . PLIST) instead of a fixed-length list. Change :type `network' to `try-starttls', and `network-only' to `default'. Make `default' the default, for compatibility with open-network-stream. Handle the no-parameter case exactly as open-network-stream, with no additional stream processing. Search plists using plist-get. Explicitly add :end-of-commend parameter if it is missing. (proto-stream-open-default): Renamed from proto-stream-open-network-only. Return 'default as the type. (proto-stream-open-starttls): Rename from proto-stream-open-network. Use plist-get. Don't return `tls' as the type if STARTTLS negotiation failed. Always return a list with a (possibly dead) process as the first element, for compatibility with open-network-stream. (proto-stream-open-tls): Use plist-get. Always return a list. (proto-stream-open-shell): Return `default' as connection type. (proto-stream-capability-open): Use plist-get. (proto-stream-eoc): Function deleted. * nnimap.el (nnimap-stream, nnimap-open-connection) (nnimap-open-connection-1): Handle renaming of :type parameter for open-protocol-stream. (nnimap-open-connection-1): Pass a :return-list parameter open-protocol-stream to obtain a list return value. Parse this list using plist-get. * nntp.el (nntp-open-connection): Handle renaming of :type parameter for open-protocol-stream. Accept open-protocol-stream return value that is a subprocess object instead of a list. Handle the case of a dead returned process. 2011-03-25 Teodor Zlatanov * mm-util.el (mm-handle-filename): Move to mm-decode.el (bug#8330). * mm-decode.el (mm-handle-filename): Move from mm-util.el (bug#8330). 2011-03-21 Julien Danjou * mm-view.el (mm-display-inline-fontify): Make mode optional, and call normal-mode if not set. Set temp buffer unmodified to avoid kill-buffer query. (mm-inline-text): Render normal text with fontification whenever possible. * gnus-sum.el (gnus-summary-save-parts-1): * gnus-art.el (gnus-article-browse-html-save-cid-content) (gnus-article-browse-html-parts, gnus-mime-delete-part) (gnus-mime-copy-part, gnus-mime-inline-part, gnus-insert-mime-button): Use `mm-handle-filename'. * mm-util.el (mm-handle-filename): New function, return the filename of an handle. 2011-03-18 Julien Danjou * gnus-util.el (gnus-buffer-live-p): Simplify gnus-buffer-live-p. (gnus-buffer-live-p): Check that buffer is not nil. 2011-03-17 Lars Magne Ingebrigtsen * gnus.el: No Gnus v0.15 is released. 2011-03-17 Lars Magne Ingebrigtsen * time-date.el (format-seconds): Use assoc instead of assoc-string to avoid warning on XEmacs. * dgnushack.el: Bind help-echo-owns-message to avoid a compiler warning on XEmacs. * gnus-art.el: Require mouse, which the build bot seems to say is needed. * dgnushack.el: Define url-retrieve-synchronously unless not defined. * gravatar.el (gravatar-retrieve-synchronously): Use `url-retrieve' on XEmacs, since it doesn't have url-retrieve-synchronously. * time-date.el (format-seconds): Use assoc instead of assoc-string, since assoc-string doesn't exist in XEmacs. 2011-03-17 Antoine Levitt * gnus-group.el (gnus-group-list-ticked): New function. (gnus-group-make-menu-bar): Provide a menu entry for it. (gnus-group-list-map): Provide a binding for it. 2011-03-17 Lars Magne Ingebrigtsen * shr.el (shr-visit-file): New command. * nnimap.el (nnimap-fetch-inbox): Rewrite slightly last patch. 2011-03-17 Bjørn Mork * nnimap.el (nnimap-fetch-inbox): Don't download bodies on ver4-capable servers. 2011-03-16 Julien Danjou * mm-uu.el (mm-uu-dissect-text-parts): Only dissect handle that are inline. * gnus-art.el (article-hide-list-identifiers): Use gnus-group-get-list-identifiers. * gnus-sum.el (gnus-group-get-list-identifiers): New function. (gnus-summary-remove-list-identifiers): Use gnus-group-get-list-identifiers to get regexp. (gnus-select-newsgroup, gnus-summary-insert-subject) (gnus-summary-insert-articles): Call gnus-summary-remove-list-identifiers unconditionally. 2011-03-15 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-articles-to-read): Revert back to old behaviour if we're selecting a group with unread articles. * nnimap.el (nnimap-open-connection-1): Allow `network-only', too. * gssapi.el: New file separated out from imap.el to provide a general Kerberos 5 connection facility for Emacs. * message.el (message-elide-ellipsis): Document the format spec ellipsis. 2011-03-15 Reiner Steib * message.el (message-elide-region): Allow the ellipsis to say how many lines were removed. 2011-03-15 Lars Magne Ingebrigtsen * gnus-win.el (gnus-configure-frame): Protect against trying to restore window configurations containing buffers that are now dead. * nnimap.el (nnimap-parse-flags): Remove all MODSEQ entries before parsing to avoid integer overflows. (nnimap-parse-flags): Simplify the last change. (nnimap-parse-flags): Store HIGHESTMODSEQ as a string, since it may be too large for 32-bit Emacsen. 2011-03-15 Stefan Monnier * auth-source.el (auth-source-netrc-create): * message.el (message-yank-original): Fix use of `case'. 2011-03-15 Nelson Ferreira (tiny change) * gnus-art.el (gnus-article-treat-body-boundary): Fix boundary width on XEmacs, which was one character too wide. 2011-03-09 Antoine Levitt * gnus-sum.el (gnus-articles-to-read): Use gnus-large-newsgroup as default number of articles to display. (gnus-articles-to-read): Use pretty names for prompt. 2011-03-15 Lars Magne Ingebrigtsen * gnus-int.el (gnus-open-server): Ditto. * gnus-start.el (gnus-activate-group): Give a backtrace if debug-on-quit is set and the user hits `C-g'. (gnus-read-active-file): Ditto. * gnus-group.el (gnus-group-read-ephemeral-group): Ditto. 2011-03-15 Teodor Zlatanov * message.el (message-yank-original): Use cond instead of CL case. 2011-03-15 Stefan Monnier * auth-source.el (auth-source-netrc-create): Use usual format for the default in prompts. 2011-03-14 Katsumi Yamaoka * lpath.el: Fbind read-char-choice for XEmacs. 2011-03-13 Teodor Zlatanov * auth-source.el (auth-source-netrc-create): Show the default in the prompt when prompting for token creation. 2011-03-12 Teodor Zlatanov * 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-11 Teodor Zlatanov * gnus-sync.el (gnus-sync-install-hooks, gnus-sync-unload-hook): Don't install `gnus-sync-read' to any hooks by default. It's buggy. The user will have to run `gnus-sync-read' manually and wait for Cloudy Gnus. 2011-03-11 Julien Danjou * mm-uu.el (mm-uu-type-alist): Add support for diff starting with "=== modified file". 2011-03-09 Teodor Zlatanov * 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'. Remove `dropdown-list'. (auth-source-netrc-saver): Use it. (auth-source-pick-first-password): New convenience function. 2011-03-08 Teodor Zlatanov * 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-07 Lars Magne Ingebrigtsen * shr.el (shr-table-horizontal-line): Change the defaults for the table lines to be spaces instead. 2011-03-07 Julien Danjou * sieve-manage.el (sieve-sasl-auth): Create auth-info if not found. (sieve-sasl-auth): Check that auth-source-search did return something, or just return an empty string. 2011-03-05 Antoine Levitt * gnus.el (gnus-interactive): Use read-directory-name. * gnus-uu.el (gnus-uu-decode-uu-and-save) (gnus-uu-decode-unshar-and-save, gnus-uu-decode-save) (gnus-uu-decode-binhex, gnus-uu-decode-yenc) (gnus-uu-decode-save-view, gnus-uu-decode-postscript-and-save): Likewise. * gnus-group.el (gnus-group-make-directory-group): Likewise. 2011-03-05 Lars Magne Ingebrigtsen * gnus-start.el (gnus-group-change-level): Allow putting foreign groups onto the list of killed groups, too. This makes killed nnimap groups, for instance, more reliably not reappear. * nnimap.el (nnimap-request-thread): Don't bug out when we can't find the parent. * gnus-sum.el (gnus-update-read-articles): Fix typo. * gnus.el (gnus-valid-select-methods): Mark nnimap as a backend that really have server-side marks. * gnus-sum.el (gnus-propagate-marks): Change default back to nil again, since most backends do not usefully have server-side marks. (gnus-update-read-articles): Propagate marks to all backends that really have server-side marks. 2011-03-05 Antoine Levitt * message.el (message-cite-reply-position, message-cite-style): New variables. (message-yank-original): Use the new citation styles. 2011-03-04 Daiki Ueno * message.el (message-options): Revert 22da67af (workaround for XEmacs buffer-local issue); don't mark it buffer-local when running under XEmacs. 2011-03-03 Tassilo Horn * nnimap.el (nnimap-parse-flags): Add a workaround for FETCH lines with numbers too big to be `read'. 2011-03-02 Teodor Zlatanov * password-cache.el (password-in-cache-p): Add autoload. * message.el (message-options): Make buffer-local two ways to attempt to fix a XEmacs bug. 2011-03-02 Julien Danjou * gnus-art.el (gnus-with-article-buffer): Fix buffer live check. 2011-03-01 Julien Danjou * gnus-art.el (list-identifier): Add list-identifier as a parameter group. (article-hide-list-identifiers): Use list-identifier group parameter. 2011-02-28 Julien Danjou * sieve.el (sieve-buffer-script-name): New local variable to store sieve script name. (sieve-edit-script): Store sieve script name. (sieve-upload): Use sieve script name when uploading. (sieve-upload): Use substitute-command-keys. (sieve-edit-script): Use substitute-command-keys. (sieve-refresh-scriptlist): Use substitute-command-keys. (sieve-manage-mode-map): Define keymap properly. (sieve-manage-mode): Do not set mode name manually, change mode-name to (sieve-refresh-scriptlist): Use substitute-command-keys."Sieve-manage". Remove commented code about cvs. (sieve-manage-quit): New function. (sieve-manage-mode-map): Bind 'q' to sieve-manage-quit. 2011-02-27 Lars Magne Ingebrigtsen * gnus-group.el (gnus-import-other-newsrc-file): New function. 2011-02-25 Teodor Zlatanov * 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. * 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. 2011-02-25 Lars Ingebrigtsen * 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. 2011-02-25 Julien Danjou * gnus-gravatar.el: Use gnus-with-article-buffer. * gnus-art.el (gnus-with-article-buffer): Check that the gnus-article-buffer is alive. 2011-02-24 Teodor Zlatanov * 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-24 Katsumi Yamaoka * auth-source.el (auth-source-netrc-create): Use `read-char' with no argument that XEmacs doesn't support. * dgnushack.el (dgnushack-compile): Exclude color.el from being compiled for Emacsen having no `libxml-parse-html-region' support. * gnus-xmas.el (gnus-xmas-define): Remove gnus-x-color-values. * lpath.el: Bind buffer-save-without-query for XEmacs. 2011-02-23 Julien Danjou * 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. 2011-02-23 Teodor Zlatanov * auth-source.el (auth-source-netrc-create): Use `read-char' instead of `read-char-choice' for backwards compatibility. (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 Lars Ingebrigtsen * 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): Rename 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. 2011-02-22 Teodor Zlatanov * 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. 2011-02-22 Andrew Cohen * 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. 2011-02-22 Lars Ingebrigtsen * gnus-msg.el (gnus-inews-add-send-actions): Restore the winconf name after exit. (gnus-setup-message): Define missing variable from last checkin. * gnus-sum.el (gnus-summary-show-article): When called with t as the value, show the raw article. 2011-02-22 Lars Magne Ingebrigtsen * gnus.el: No Gnus v0.13 is released. 2011-02-21 Lars Ingebrigtsen * 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. 2011-02-21 Simon Josefsson * nnimap.el (nnimap-inbox): Doc fix. 2011-02-21 Chong Yidong * color.el (color-name-to-rgb): Rename from color-rgb->normalize. Autoload. Add optional arg FRAME, and pass it to color-values. (color-complement): Caller changed. Doc fix. (color-gradient): Rewrite for better clarity and efficiency. 2011-02-20 Chong Yidong * shr-color.el (shr-color->hexadecimal): Use renamed function names color-rgb-to-hex, color-name-to-rgb, color-srgb-to-lab, and color-lab-to-srgb. 2011-02-20 Drew Adams * color.el: First part of merge from hexrgb.el. (color-rgb-to-hex): Rename from color-rgb->hex. (color-rgb-to-hsv): Rename from color-rgb->hsv. Force hue and saturation to zero if the value is too small. (color-rgb-to-hsl): Rename from color-rgb->hsl. (color-srgb-to-xyz): Rename from color-srgb->xyz. Doc fix. (color-xyz-to-srgb): Rename from color-xyz->srgb. Doc fix. (color-xyz-to-lab): Rename from color-xyz->lab. Doc fix. (color-lab-to-xyz): Rename from color-lab->xyz. Doc fix. (color-lab-to-srgb): Rename from color-lab->srgb. Doc fix. (color-cie-de2000): Doc fix. 2011-02-21 Lars Ingebrigtsen * 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. 2011-02-21 Lars Magne Ingebrigtsen * gnus.el: No Gnus v0.11 is released. 2011-02-21 Lars Ingebrigtsen * 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-19 Glenn Morris * gnus.el (gnus-meta): Doc fix. 2011-02-19 Chong Yidong * nnfolder.el (nnfolder-save-buffer): Don't let-bind copyright-update, in case it's not yet loaded. 2011-02-20 Lars Ingebrigtsen * nnimap.el (nnimap-wait-for-response): Ensure that we get the entire line we're waiting for. 2011-02-19 Darren Hoo (tiny change) * gnus-art.el (gnus-article-next-page-1): Because customized mode-line face with line-width greater than zero will cause RET in gnus summary buffer to scroll down article page-wise because auto vscroll happens, it should be temporalily disabled when doing a scroll-up. 2011-02-19 Lars Ingebrigtsen * nnimap.el (nnimap-parse-copied-articles): Allow for " OK" outputs from the server. 2011-02-18 Antoine Levitt (tiny change) * gnus-art.el (gnus-article-prepare): Run gnus-article-prepare-hook later so that bbdb can hook in easier. 2011-02-18 Lars Ingebrigtsen * auth-source.el (auth-source-search): Don't try to create credentials if the caller doesn't want that. (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. * nnimap.el (nnimap-log-command): Add a newline to the inhibited logging. (nnimap-credentials): Protect against auth-source-search returning nil. (nnimap-request-list): Protect against not being able to open the server. 2011-02-17 Lars Ingebrigtsen * auth-source.el (auth-source-search): Do a two-phase search, one with no :create to get the responses from all backends. * nnimap.el (nnimap-open-connection-1): Delete duplicate server names when getting credentials. * gnus-util.el (gnus-delete-duplicates): New function. 2011-02-17 Teodor Zlatanov * 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'. * 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-debug): Default to off. (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 Katsumi Yamaoka * auth-source.el: Bind load-path when loading EIEIO from "gnus-fallback-lib/eieio"; don't pass more than two args, that XEmacs 21.4 doesn't support, to `require'. (auth-source-secrets-search): Use mm-delete-duplicates instead of delete-dups that is not available in XEmacs 21.4. 2011-02-16 Raphael Kubo da Costa (tiny change) * auth-source.el: Correctly load EIEIO from "gnus-fallback-lib/eieio" as EIEIO must also be loaded when auth-source.el is being byte-compiled. 2011-02-16 Teodor Zlatanov * gnus-fallback-lib/eieio/eieio.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-speedbar.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-opt.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-datadebug.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-custom.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-comp.el: Copy from Emacs. * gnus-fallback-lib/eieio/eieio-base.el: Copy from Emacs. * auth-source.el: Load EIEIO from "gnus-fallback-lib/eieio" if necessary. 2011-02-16 Lars Ingebrigtsen * gnus-sum.el (gnus-propagate-marks): Change default to t again, since nil means that nnimap doesn't get updated. 2011-02-16 Teodor Zlatanov * 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-15 Teodor Zlatanov * 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-14 Lars Ingebrigtsen * 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. 2011-02-14 Teodor Zlatanov * auth-source.el (auth-source-backend-parse-parameters): Don't rely on `plist-get' to accept non-list parameters (XEmacs issue). Fix docstring. (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". 2011-02-14 Lars Ingebrigtsen * gnus-art.el (article-update-date-lapsed): Don't bug out when updating multiple headers. * 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 Katsumi Yamaoka * auth-source.el (auth-source-search): Use copy-sequence instead of the cl.el copy-list. 2011-02-13 Teodor Zlatanov * imap.el: Bring it back (revert 84d800cd31de3064f0ed39617d725709a2f8f42f). 2011-02-13 Adam Sjøgren * gnus-delay.el (gnus-delay-article) Fix number of seconds per day. Improve prompt. 2011-02-13 Lars Ingebrigtsen * gnus-art.el (gnus-article-mode-line-format): Remove the article washing status from the default format. It isn't very informative. 2011-02-13 Tassilo Horn (tiny change) * nnimap.el (nnimap-request-accept-article, nnimap-process-quirk): Fix Gcc processing on imap. 2011-02-13 Teodor Zlatanov * imap.el: Remove file. All the functionality is in nnimap.el. 2011-02-10 Stefan Monnier * message.el (message-bury): Don't pop up a new window when selected window is dedicated. 2011-02-10 Antoine Levitt (tiny change) * gnus-sum.el (gnus-summary-save-parts): Use read-directory-name. 2011-02-10 Teodor Zlatanov * sieve-manage.el: Autoload `auth-source-search'. (sieve-sasl-auth): Use it. 2011-02-09 Teodor Zlatanov * 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. 2011-02-09 Lars Ingebrigtsen * nntp.el (nntp-retrieve-group-data-early-disabled): Disable the async code for now, since it doesn't work for all users. 2011-02-09 Julien Danjou * message.el (message-options): Make message-options really buffer local. 2011-02-08 Teodor Zlatanov * 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. 2011-02-08 Julien Danjou * shr.el (shr-tag-body): Add support for text attribute in body markups. * message.el (message-options): Make message-options a local variable. 2011-02-07 Teodor Zlatanov * 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. 2011-02-07 Lars Ingebrigtsen * nnimap.el (nnimap-update-info): Refactor slightly. (nnimap-update-info): Tell Gnus whether there are any \Recent messages. (nnimap-update-info): Clean up slightly. (nnimap-quirk): Add quirk for Gmail IMAP which bugs out on NUL characters. (nnimap-process-quirk): Rename function to avoid collision. (nnimap-update-info): Fix macrology bug-out. (nnimap-update-info): Simplify split history test. 2011-02-06 Michael Albinus * 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. 2011-02-06 Lars Ingebrigtsen * nntp.el (nntp-finish-retrieve-group-infos): Protect against the first part not returning any data. * proto-stream.el (open-protocol-stream): Document the return value. 2011-02-06 Teodor Zlatanov * auth-source.el (auth-source-secrets-search): Add examples. 2011-02-06 Julien Danjou * message.el (message-setup-1): Handle message-generate-headers-first set to t. 2011-02-06 Teodor Zlatanov * 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): Remove. (auth-source-user-or-password): Deprecated and modified to be a wrapper around `auth-source-search'. Not tested thoroughly. 2011-02-04 Teodor Zlatanov * 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-04 Lars Ingebrigtsen * message.el (message-setup-1): Remove the read-only stuff, since it doesn't work under XEmacs, for some reason. * gnus-sum.el (gnus-user-date): Rename back from gnus-summary-user-date since user code refers to it. * shr.el (shr-render-td): Store the actual background colour used. * message.el (message-setup-1): Don't bind the constant -forbidden-properties. (message-setup-1): Revert previous change, since it needs to bind the props to insert them. (message-resend): Allow removing the read-only separator line. 2011-02-03 Lars Ingebrigtsen * nnimap.el (nnimap-request-accept-article): Give an error message if the APPEND wasn't successful. 2011-02-03 Adam Sjøgren * gnus-start.el (gnus-get-unread-articles): Fix the call to methods that have no groups. 2011-02-03 Julien Danjou * gnus-draft.el: Remove progn around gnus-draft-setup. 2011-02-03 Lars Ingebrigtsen * gnus-start.el (gnus-read-active-for-groups): This function is never called with a nil `infos', so clean that up. (gnus-get-unread-articles): Request active files from primary/secondary methods that have no groups (yet). 2011-02-03 Julien Danjou * message.el (message-setup-1): Always generate References first. (message-mail): Return the return value of message-setup, not always t. (message-setup-1): Insert mail-header-separator with read-only and intangible properties set. * gnus.el (gnus-summary-line-format): Add missing semi-colon for user-date in docstring. * gnus-art.el (gnus-article-jump-to-part): Remove useless sit-for. * gnus.el (gnus-summary-line-format): Mention &user-date format in docstring. * gnus.el (gnus-user-date-format-alist): Change default value. Use defcustom, with type and group. Move from gnus-util.el. Rename to gnus-summary-user-date-format-alist. 2011-02-03 Glenn Morris * nnimap.el (gnus-fetch-headers): Declare. * nnheader.el (gnus-range-add, gnus-remove-from-range): Autoload. 2011-02-03 Lars Ingebrigtsen * message.el (message-forward-make-body-digest-plain) (message-followup, message-reply): Clean up things noted by Stefan. * gnus-art.el (gnus-article-setup-buffer): Stop the date timer if gnus-article-update-date-headers is nil. (gnus-article-date-headers): Rip out the old -treat-date-* stuff, since it didn't really work with defcustom. (article-update-date-lapsed): Make sure the window start doesn't move, either. 2011-02-01 Julien Danjou * mm-uu.el (mm-uu-type-alist): Add support for git format-patch diff format. * mm-decode.el (mm-inline-media-tests): Do not check for diff-mode it's standard in Emacs nowadays. * color.el (color-gradient): Add a color-gradient function. 2011-02-01 Stefan Monnier * message.el (message-expand-name): Don't trust the return value of bbdb-complete-name. (message-check-news-header-syntax): Remove unused var `start'. (message-idna-to-ascii-rhs-1): Remove unused vars `rhs' and `address'. (message-inhibit-body-encoding): Move to before first use. (mail-abbrev-mode-regexp, Expires, User-Agent, Lines, Distribution) (To, References, In-Reply-To, Newsgroups, Subject, Path, From) (Organization, Message-ID, Date, mh-previous-window-config): Defvar the vars using dynamic scoping. 2011-02-01 Lars Ingebrigtsen * shr.el (shr-render-td): Only do colours at the final rendering. Should be slightly faster. (shr-insert-table): Fix up TD background colours when doing the vertical padding. * gnus-art.el (article-date-ut): Protect against articles with no Date header. (article-update-date-lapsed): Don't use current-column to find the horizontal position. It's fragile in the presence of \003 characters. * gnus-start.el (gnus-read-active-file-1): Remove dead parameter infos. 2011-01-31 Lars Ingebrigtsen * gnus-art.el (article-transform-date): Rewrite to still work when there are several rfc2822 parts. (article-transform-date): Fix infinite recursion. (article-date-ut): Replace infinitely many Date headers with a single one when called interactively. * nnimap.el (nnimap-wait-for-response): Wait for results in a more secure manner. * gnus-art.el (article-update-date-lapsed): Try to avoid having point move around by not using save-window-excursion. It seems to work... 2011-01-31 Katsumi Yamaoka * gnus-art.el (article-make-date-line): Work for user-defined format. 2011-01-31 Lars Ingebrigtsen * nntp.el (nntp-retrieve-group-data-early) (nntp-finish-retrieve-group-infos): Implement the asynchronous data fetching functions. * gnus-start.el (gnus-read-active-for-groups): Read the active files thoroughly for all backends that have no known groups. This should allow new nnml methods to retrieve mail. * gnus-group.el (gnus-group-jump-to-group): Allow jumping to groups that Gnus doesn't know exists again. * gnus-art.el (gnus-article-date-lapsed-new-header): Remove. (gnus-treat-date-ut): Ditto. (gnus-article-update-date-header): Rename. (gnus-treat-date-local): Remove. (gnus-treat-date-english): Remove. (gnus-treat-date-lapsed): Remove. (gnus-treat-date-combined-lapsed): Remove. (gnus-treat-date-original): Remove. (gnus-treat-date-iso8601): Remove. (gnus-treat-date-user-defined): Remove. (gnus-article-date-headers): New variable to control all the date header options. (article-date-ut): Rewrite to allow using the new way to format date headers(s). 2011-01-30 Lars Ingebrigtsen * nnmail.el (nnmail-article-group): Check for a direct fancy split method. (nnmail-article-group): A better test for fanciness. * nnimap.el (nnimap-request-head): Protect against not finding the article by Message-ID. 2011-01-29 Lars Ingebrigtsen * gnus-art.el (article-update-date-lapsed): Try a better way to really keep point at the "same place". 2011-01-28 Lars Ingebrigtsen * gnus-sum.el (gnus-select-newsgroup): Don't try to alter the active data if the group is unactivated. 2011-01-28 Julien Danjou * gnus-win.el: Remove dead function gnus-window-configuration-element. (gnus-all-windows-visible-p): Remove old compatibility code. (gnus-window-top-edge): Add docstring. * gnus-group.el (gnus-group-jump-to-group): Set must match to t. 2011-01-28 Lars Ingebrigtsen * gnus-int.el (gnus-request-marks): Call *-request-marks instead of the older request-update-info. * gnus-art.el (article-make-date-line): Limit the length a bit more. 2011-01-28 Daiki Ueno * mml2015.el (mml2015-epg-sign, mml2015-epg-encrypt): Give mml2015-signers higher precedence over mml2015-sign-with-sender. 2011-01-27 Lars Ingebrigtsen * gnus-group.el (gnus-group-refresh-group): Refresh even non-visible groups. This makes the nndraft:queue group pop up if it's not already there. * gnus-sum.el (gnus-summary-read-group-1): Fix the "contains no messages" logic, which was reversed. * gnus-art.el (article-update-date-lapsed): Ensure that point stays at the "same place" even if point is on the line being replaced. (article-update-date-lapsed): Allow updating both the combined lapsed and the lapsed headers. (article-update-date-lapsed): Skip past all the X-Sent/Date headers. (article-make-date-line): Limit the number of segments dynamically to avoid too-long lines. 2011-01-27 Julien Danjou * mml2015.el (mml2015-epg-sign): Add and use mml2015-sign-with-sender. (mml2015-epg-encrypt): Use mml2015-sign-with-sender. 2011-01-27 Katsumi Yamaoka * shr.el (shr-expand-newlines, shr-previous-newline-padding-width): Use plist-get instead of the cl function getf. 2011-01-27 Glenn Morris * gnus-util.el (float-time): Get rid of compiler warning, again. 2011-01-27 Lars Ingebrigtsen * shr.el (shr-put-color): Special-case background colours: Do put them at the blank parts at the front of the lines. * gnus-draft.el (gnus-draft-clear-marks): New function to be run as an exit hook to nix out all data on readedness on group exit. * gnus-util.el (float-time): If float-time is bound, always use it on all Emacsen. It's unclear why the subrp check was there. (time-date): Require to make some autoload issues on XEmacs go away. * shr.el (shr-put-color): Don't do the box padding in tables, since they're already padded. 2011-01-26 Lars Ingebrigtsen * gnus-art.el (gnus-article-next-page): When the last line of the article is displayed, scroll down once more instead of going to the next article at once. (article-lapsed-string): Refactor out and allow specifying how many segments you want. (gnus-article-setup-buffer): Start updating the lapsed header directly. (gnus-article-update-lapsed-header): New variable. * shr.el: Revert change that made headings use different-sized faces. The Emacs display engine isn't advanced enough that, for instance, tables can comfortably use differently-sized faces. 2011-01-25 Lars Ingebrigtsen * nnimap.el (nnimap-open-connection-1): Store the actual stream type used. (nnimap-login): Prefer plain LOGIN if it's enabled (since it requires fewer round trips than CRAM-MD5, and it's less likely to be buggy), and we're using an encrypted connection. * proto-stream.el: Alter the interface functions to also return the actual stream type used: network or tls. 2011-01-25 Julien Danjou * mm-view.el (mm-display-shell-script-inline): Fix typo in docstring. (mm-display-javascript-inline): New function. * mm-decode.el (mm-inline-media-tests): Add application/javascript viewing function. 2011-01-25 Katsumi Yamaoka * shr.el (shr-expand-newlines): Fix variable name. 2011-01-25 Lars Ingebrigtsen * shr.el (shr-expand-newlines): Make nested boxes work. 2011-01-24 Lars Ingebrigtsen * shr.el (shr-expand-newlines): Proof of concept implemantation of boxy backgrounds. (shr-expand-newlines): Switch to using overlays to enable kill'n'yank in a more sensible manner. 2011-01-24 Teodor Zlatanov * mml-smime.el (mml-smime-use): Make it a defcustom and default to 'epg if EPG is loaded. 2011-01-24 Julien Danjou * shr.el: Use defface to create shr-tag-h[1-6] faces to fontify h[1-6] tags. 2011-01-24 Lars Ingebrigtsen * gnus-art.el (gnus-article-read-summary-keys): Don't call disabled commands. * gnus-gravatar.el (gnus-gravatar-insert): Don't move point around in the article buffer. (gnus-gravatar-insert): Use blank space from the current buffer to avoid breaking text properties. This makes X-Sent updating work again. * gravatar.el (gravatar-retrieve): Be silent when retrieving. 2011-01-23 Lars Ingebrigtsen * gnus-html.el (gnus-html-image-fetched): Kill the buffer anyway, and fix the bug in url-http.el instead. * shr.el (shr-image-fetched): Ditto. * shr.el (shr-image-fetched): Avoid having point move in the article buffer. * gnus-html.el (gnus-html-image-fetched): Don't kill the temporary buffer after being called. It's apparently being killed by url.el, and killing it made point move to end-of-buffer in a random buffer. * shr.el (shr-image-fetched): Ditto. 2011-01-23 Julien Danjou * mm-decode.el (mm-inline-media-tests): Change text/org to text/x-org. * mm-uu.el (mm-uu-org-src-code-block-extract): Change text/org to text/x-org. 2011-01-22 Lars Ingebrigtsen * gnus-sum.el (gnus-summary-move-article): Protect against backends (i.e., nnimap) returning nil as the article number. 2011-01-22 Kazuhiro Ito (tiny change) * flow-fill.el (fill-flowed): Make `delete-space' option correspond to "DelSp" parameter in RFC3676. 2011-01-22 Lars Ingebrigtsen * message.el (message-check-recipients): Display the encoded version of the bogus address if they differ. * gnus-draft.el (gnus-group-send-queue): Really refresh the queue group after sending. * gnus-agent.el (gnus-agent-send-mail): Ditto. * gnus-group.el (gnus-group-refresh-group): New convenience function. * gnus-draft.el (gnus-group-send-queue): Update the queue group in the group buffer after sending the queue. * gnus-agent.el (gnus-agent-send-mail): Ditto. 2011-01-22 Julien Danjou * mailcap.el (mailcap-mime-extensions): Rename text/org to text/x-org. 2011-01-22 Lars Ingebrigtsen * mm-decode.el (mm-preferred-alternative-precedence): Don't bug out on nested related parts. * nnfolder.el (nnfolder-request-expire-articles): Return the list of unexpired articles. This fixes the regression that led expiry marks to disappear from nnfolder groups. 2011-01-21 Stefan Monnier * gnus-art.el (gnus-button-alist, gnus-button-handle-info-keystrokes): Don't confuse the "ret" of "retrograde" with RET. 2011-01-21 Julien Danjou * gnus-art.el (gnus-mime-display-single): Use mm-display-inline rather than mm-insert-inline. 2011-01-21 Katsumi Yamaoka * gnus-art.el (gnus-article-remove-images, gnus-article-show-images): Widen article buffer. 2011-01-20 Stefan Monnier * mm-util.el (mm-find-buffer-file-coding-system): Don't forget to kill the temp buffer. * message.el (message-mailer-swallows-blank-line): Use with-temp-buffer. 2011-01-20 Julien Danjou * mm-decode.el (mm-inline-media-tests): Add text/x-sh. * gnus-art.el (gnus-mime-inline-part): Use mm-display-inline rather than mm-insert-inline to insert inline part: this respect mm-inline-media-tests displayers. * mm-view.el (mm-display-shell-script-inline): New function. * mm-decode.el (mm-inline-media-tests): Add x-shellscript and x-sh. * mm-uu.el (mm-uu-type-alist): Add org block. (mm-uu-org-src-code-block-extract): New function. * mm-view.el (mm-display-org-inline): New function. * mm-decode.el (mm-automatic-display): Add text/org. * mailcap.el (mailcap-mime-extensions): Add .org. 2011-01-19 Katsumi Yamaoka * gnus-art.el (gnus-article-highlight): Remove argument passed to gnus-article-add-buttons. 2011-01-19 Tom Rauchenwald (tiny change) * spam.el (spam-spamassassin-register-with-sa-learn): Insert a full From header with a date and "nobody" as the sender. 2011-01-19 Julien Danjou * gnus-art.el (gnus-article-add-buttons): Simplify condition. (gnus-button-push): Remove gnus-button-entry function, it fails heavily if you have the same regexp several times. (gnus-button-push): Fix matching when regexp is symbol. 2011-01-15 Glenn Morris * message.el (message-mail): A compose-mail function should accept headers as strings. 2011-01-13 Chong Yidong * message.el (message-tool-bar-gnome): Tweak tool-bar items. Add :vert-only tags. (message-mail): New arg RETURN-ACTION. (message-return-action): New var. (message-bury): Use it. (message-mode): Make it buffer-local. (message-send-and-exit): Always call message-bury. * gnus-msg.el (gnus-msg-mail): New arg RETURN-ACTION. Pass it to message-mail. 2011-01-11 Lars Magne Ingebrigtsen * nnimap.el (nnimap-convert-partial-article): Protect against zero-length body parts. * mm-decode.el (mm-preferred-alternative-precedence): Discourage showing empty parts. * gnus-int.el (gnus-request-accept-article): Don't try to update marks and stuff if the backend didn't return the article number. This fixes an Exchange-related nnimap bug. * gnus-sum.el (gnus-summary-next-article): Remove hack to reselect group window, because it does the wrong thing when a separate frame displays the group buffer. * proto-stream.el (open-protocol-stream): Protect against the low-level transport functions returning nil. 2011-01-07 Daiki Ueno * mml2015.el (epg-sub-key-fingerprint): Autoload. (mml2015-epg-find-usable-secret-key): New function. (mml2015-epg-sign): Use mml2015-epg-find-usable-secret-key instead of mml2015-epg-find-usable-key (Bug#7797). (mml2015-epg-encrypt): Ditto. 2011-01-05 Katsumi Yamaoka * dgnushack.el (rot13-string): Fix the way to get the argument. 2011-01-03 Lars Magne Ingebrigtsen * flow-fill.el (fill-flowed-encode): Do encoding citation-aware. 2011-01-03 Glenn Morris * sieve-manage.el (sieve-manage-open): Correctly set sieve-manage-port. * sieve.el (sieve-open-server): Give a more explicit error if sieve-manage-open returns nil. (Bug#7720) 2011-01-02 Karl Fogel * gnus-msg.el (gnus-message-replyencrypt): Default to `t'. 2011-01-02 Lars Magne Ingebrigtsen * nnimap.el (nnimap-login): Prefer AUTH=CRAM-MD5, if it's available. This avoids sending passwords in plain text over non-encrypted channels. * shr.el (shr-rescale-image): Display all GIF images as animated images. * nnimap.el (nnimap-login): Refactored out into own function, and implement CRAM-MD5. (nnimap-wait-for-line): Refactored out. * mm-view.el (mml-smime): Require. 2010-12-20 David Engster * 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. 2011-01-02 Lars Magne Ingebrigtsen * 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. 2011-01-02 Wang Diancheng (tiny change) * nnml.el (nnml-request-article): Allow requesting by Message-ID to work when using a compressed nnml folder. 2011-01-02 Lars Magne Ingebrigtsen * 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. 2010-12-30 Tassilo Horn * 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. 2010-12-27 Daiki Ueno * mml2015.el (mml2015-epg-sign, mml2015-epg-encrypt): Take care the case when sender is not given. 2010-12-23 Julien Danjou * gnus-gravatar.el (gnus-gravatar-transform-address): Set `mail-extr-ignore-realname-equals-mailbox-name' to nil when extracting the addresses, otherwise we might misplaced the gravatar. 2010-12-21 Daiki Ueno * mml1991.el (pgg-sign-region, pgg-encrypt-region): * gnus-art.el (pgg-snarf-keys-region): Autoload since PGG is now obsolete in Emacs. 2010-12-20 Julien Danjou * gnus-util.el (gnus-rescale-image): Revert last change. 2010-12-17 Chong Yidong * binhex.el: Improve commentary (Bug#7482). 2010-12-17 Lars Magne Ingebrigtsen * gnus-group.el (gnus-group-delete-articles): New command. 2010-12-17 Andrew Cohen * nnir.el (nnir-mode): Make sure 'gnus-registry-install is bound. 2010-12-17 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-get-newsgroup-headers): Revert the last change here, since it's up to the backends to do CRLF removal if their protocol has it. * nnimap.el (nnimap-retrieve-headers): Remove CRLF from the headers. 2010-12-17 Julien Danjou * gnus-util.el (gnus-rescale-image): Allow to resize images even if they are from file. Can also scale up. 2010-12-17 Andrew Cohen * gnus-sum.el (gnus-summary-refer-thread): Simplify code. Restore gnus-use-agent. (gnus-get-newsgroup-headers): Avoid unwanted spaces at eol. * nnir.el (nnir-get-active): Ignore nnir-ignored-newsgroups if null. 2010-12-17 Julien Danjou * gravatar.el (gravatar-retrieve-synchronously): New function. (gravatar-get-data): Make more robust. 2010-12-16 Katsumi Yamaoka * lpath.el: Bind epa-file-encrypt-to for Emacs 22 and XEmacs. 2010-12-16 Lars Magne Ingebrigtsen * nnimap.el (nnimap-wait-for-response): Fix the end-point calculation to really consider the last line. 2010-12-16 Daiki Ueno * 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 Dan Davison (tiny change) * gnus-srvr.el: Avoid passing nil regexp argument to delete-matching-lines. 2010-12-16 Lars Magne Ingebrigtsen * gnus-html.el (gnus-html-schedule-image-fetching): Make sure the HTML fetching stops when Gnus exits. * 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. 2010-12-16 Andrew Cohen * nnir.el: Improve customizations. 2010-12-16 Lars Magne Ingebrigtsen * gnus-start.el (gnus-subscribe-newsgroup): Notify the backend. * gnus-group.el (gnus-group-kill-group): Notify the backend that the group has been killed. (gnus-group-yank-group): Ditto. * gnus-srvr.el (gnus-browse-unsubscribe-group): Ditto. * nnimap.el (nnimap-request-update-group-status): New function. * gnus-int.el (gnus-request-update-group-status): New interface function. * gnus-sum.el (gnus-summary-push-marks-to-backend): Fix the logic for copying read-ness to the backends. * nnimap.el (nnimap-quirk): New function. (nnimap-retrieve-group-data-early): Use it. (nnimap-quirks): New alist. 2010-12-16 Katsumi Yamaoka * shr.el (shr-insert): Set shr-start after deleting trailing space; don't delete it within indentation. 2010-12-16 Lars Magne Ingebrigtsen * nnimap.el (nnimap-wait-for-response): Always look (at least) at the previous line. 2010-12-15 Lars Magne Ingebrigtsen * nnimap.el (nnimap-retrieve-group-data-early): Fix the syntax of the QRESYNC command by deleting a superfluous space which broke Cyrus servers. This change will break other servers that are buggy the other way around. 2010-12-14 Teodor Zlatanov * spam.el: Reindent and fix long lines. (spam-copy-or-move-routine): Exclude invalid move destinations. 2010-12-14 Andrew Cohen * nnir.el (nnir-mode): Don't install registry hooks if user hasn't installed the registry. 2010-12-14 Katsumi Yamaoka * dgnushack.el (rot13-string): New macro for XEmacs. netrc.el uses it. 2010-12-13 Andrew Cohen * nnir.el (nnir-run-gmane): Better check for gmane groups: error out if groupname doesn't contain "gmane". 2010-12-13 Lars Magne Ingebrigtsen * netrc.el (netrc-point-at-eol): Remove the unused netrc-point-at-old and netrc-bound-and-true-p bindings. (netrc-parse): Cache the netrc contents. * gnus-start.el (gnus-matches-options-n): Fix typo in last change. (gnus-1): Don't create the nndrafts group twice. (gnus-setup-news): There's no need to read the active file here, since that's done again later on a per-backend basis. (gnus-start-draft-setup): Make sure that the new group is started out empty. * gnus-agent.el (gnus-agentize): Don't create the queue group automatically on startup. It'll be created later, if needed. * gnus-start.el (gnus-auto-subscribed-groups): Add nnimap to the list of automatically subscribed groups. (gnus-auto-subscribed-categories): New variable. (gnus-matches-options-n): Use it. (gnus-default-subscribed-newsgroups): Remove unused variable. (gnus-start-draft-setup): Message a bit less. 2010-12-13 Andrew Cohen * nnir.el (nnir-run-imap): Return article list in order of increasing UID. 2010-12-13 Lars Magne Ingebrigtsen * gnus-sum.el (gnus-summary-enter-digest-group): Mention gnus-auto-select-on-ephemeral-exit. * proto-stream.el (proto-stream-open-network-only): Fix the calling convention of the network-only option. 2010-12-10 Lars Magne Ingebrigtsen * proto-stream.el (proto-stream-open-network-only): New function to have a way to specify non-STARTTLS upgrade connections. 2010-12-10 Julien Danjou * gnus-gravatar.el (gnus-gravatar-transform-address): Fix error when email address is nil. * message.el (message-bogus-recipient-p): Set address to "" if nil. 2010-12-10 Andrew Cohen * nnir.el (nnir-request-expire-articles): Ignore expiry except for deletion. (nnir-run-imap): Only need to parse list once. 2010-12-09 Lars Magne Ingebrigtsen * shr.el (shr-tag-script): Ignore