Commit graph

197 commits

Author SHA1 Message Date
Lars Magne Ingebrigtsen
943399bce8 nnimap.el (nnimap-insert-partial-structure): The charset parameter isn't case-sensitive. 2011-09-26 22:52:31 +00:00
Lars Magne Ingebrigtsen
2146e25680 Merge changes made in Gnus trunk.
nnimap.el (nnimap-wait-for-response): Message less (bug#9540).
nnheader.el (nnheader-message-maybe): New function.
shr.el (shr-tag-table): Render totally broken tables better.
mml.el (mml-generate-mime-1): Don't alter the contents if we're computing the boundary.
pop3.el (pop3-number-of-responses): Removed.
 (pop3-wait-for-messages): Rewrite to take linear time instead of exponential time.
2011-09-26 21:59:47 +00:00
Lars Magne Ingebrigtsen
a5166359b9 Merge changes made in Gnus trunk.
gnus.texi (Archived Messages): Note the default (bug#9552).
message.el (message-indent-citation): Really make sure there's a newline at the end.
nnimap.el (nnimap-parse-flags): Make regexp less prone to overflows.  Fix suggested by John Wiegley.
pop3.el (pop3-open-server): Fix +OK end-of-command regexp.
gnus-art.el (gnus-treat-hide-citation): Add doc.
message.el (message-default-send-rename-function): Break out into its own function.
ecomplete.el (ecomplete-display-matches): Revert patch since it doesn't work under XEmacs.
nnimap.el (nnimap-map-port): New function to connect to 993 instead of "imaps" to word around Windows problems.
 (nnimap-open-connection-1): Use it.
message.el (message-indent-citation): Revert last change which made `F' not work.
2011-09-21 22:34:54 +00:00
Gnus developers
e21bac426b Merge changes made in Gnus trunk.
gnus.texi: Remove mentions of `recent', which are now obsolete.
 (Interactive): Document `quiet'.
nnimap.el: Redo the charset handling.  Let Gnus encode the names, as it does with all other backends, but decode the names immediately after getting them.
gnus-group.el (gnus-group-name-charset): Always return `utf-7' when decoding nnimap groups.
gnus.el (gnus-variable-list): Don't save `gnus-format-specs' in the newsrc file.  It doesn't seem like an important optimisation any more.
nnimap.el (nnimap-transform-headers): Fix regexp to be less prone to overflows.
gnus.el (gnus-article-mark-lists): Remove `recent'.
 (gnus-interactive-exit): Extend to `quiet'.
gnus-sum.el (gnus-offer-save-summaries): Use it.
gnus-art.el (gnus-treat-hide-citation-maybe): Add more doc to the string.
plstore.el (plstore--get-buffer): Silence compiler warnings by renaming function arguments from `this'.
gnus-sum.el (gnus-newsgroup-recent): Removed.
gnus-spec.el (gnus-lrm-string-p): `bidi-string-mark-left-to-right' has been renamed.
 (gnus-lrm-string-p): Include RLM and PDF, too.
gnus-int.el (gnus-open-server): Make the "denied" message clearer (bug#9225).
2011-09-10 23:30:53 +00:00
Lars Magne Ingebrigtsen
bc32008719 nnimap.el (nnimap-open-connection-1): Use the correct port number in the error message. 2011-09-03 22:51:26 +00:00
Gnus developers
4d9db491a0 Merge changes made in Gnus trunk.
nnimap.el (nnimap-transform-headers): Protect against (NIL ...) bodystructures (bug#9314).
starttls.el (starttls-any-program-available): Define as obsolete function.
gnus-util.el (gnus-y-or-n-p): Reinstate the message-clearing y-or-n-p versions which Gnus use when appropriate.
gnus-group.el (gnus-group-clear-data): Add a y-or-n query, since it's a pretty destructive command.
nnmail.el (nnmail-extra-headers): Clarify slightly (bug#9302).
message.el (message-fix-before-sending): Make a different warning about NUL characters (bug#9270).
gnus-sum.el (gnus-auto-select-subject): Allow specifying a function from custom (bug#9260).
2011-08-20 00:20:39 +00:00
Andrew Cohen
fb568e6327 nnimap.el (nnimap-transform-headers): BODYSTRUCTURE for messages of type MESSAGE and subtype RFC822 is slightly different from those of type TEXT. 2011-08-11 22:36:54 +00:00
Gnus developers
bca46f6bc6 Merge changes made in Gnus trunk.
nnir.el (nnir-search-thread): Position point on referring article line.
 (nnir-warp-to-article): Clean up summary buffers.
nnimap.el (nnimap-request-thread): Whitespace fix.
nnimap.el (nnimap-get-groups): Decode "&" correctly.
2011-08-02 22:16:33 +00:00
Andrew Cohen
43a0a4fab7 nnimap.el (nnimap-make-thread-query): Quote message-ids for gmail. 2011-07-24 22:15:15 +00:00
Andrew Cohen
47f0b35ef3 Merge changes made in Gnus trunk.
nnir.el (nnir-search-thread): New function to make an nnir group based on a thread query.
gnus-sum.el (gnus-refer-thread-use-nnir): New variable to control use of nnir in thread referral.
 (gnus-summary-refer-thread): Use it.
nnimap.el (nnimap-request-thread): Use it.
2011-07-24 00:19:29 +00:00
Andrew Cohen
af92e24772 Merge changes made in Gnus trunk.
nnimap.el (nnimap-make-thread-query): New utility function to format an imap thread search query.
 (nnimap-request-thread): Use it.
gnus-sum.el (gnus-handle-ephemeral-exit): Ensure we are setting the right select-method if we are not going back to the group buffer.
2011-07-20 14:19:52 +00:00
Andrew Cohen
0c1362863d Merge changes made in Gnus trunk.
nnimap.el (nnimap-request-thread): Ensure search is performed in correct group.
gnus-int.el (gnus-request-thread): Add group argument.
gnus-sum.el (gnus-request-thread): Use it.
2011-07-14 14:19:53 +00:00
Lars Magne Ingebrigtsen
4d19331f6b nnimap.el (nnimap-request-scan): Say that splitting has finished. 2011-07-04 13:11:52 +00:00
Lars Magne Ingebrigtsen
656e1aab13 nnimap.el (nnimap-split-incoming-mail): If nnimap-split-fancy' is non-nil, and nnimap-split-methods' is nil, use the former. 2011-06-30 10:04:56 +00:00
Lars Magne Ingebrigtsen
d0b36cbeb1 nnimap.el (nnimap-process-expiry-targets): Say what target we're expiring articles to. 2011-06-30 04:07:50 +00:00
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
Lars Magne Ingebrigtsen
b534ed407e nnimap.el (nnimap-open-connection-1): Fix indentation. 2011-06-23 00:00:38 +00:00
Andrew Cohen
183a6951a6 nnimap.el (nnimap-find-article-by-message-id): return nil when no article found. 2011-06-21 22:13:24 +00:00
Lars Magne Ingebrigtsen
b5244046e1 Merge changes made in Gnus trunk.
gnus-group.el (gnus-group-mark-article-read): It's possible that we want to have `gnus-newsgroup-unselected' kept sorted.  If this isn't done, then unselected articles may be marked as read.
pop3.el (pop3-open-server): Erase the buffer after the greeting, since not doing this seems to lead to a race condition in pop3-logon.
nnvirtual.el (nnvirtual-request-article): Bind `gnus-command-method' so that the call chain it correct when we call "upwards".
gnus-sum.el (gnus-select-newsgroup): Auto-expiry doesn't make sense in read-only groups.
gnus-group.el (gnus-group-mark-article-read): Ditto.
message.el (message-cite-reply-position): Doc string fix.
nnimap.el (nnimap-transform-headers): Simplify regexp to hopefully avoid regexp overflow.
 (nnimap-transform-split-mail): Ditto.
pop3.el (pop3-retr): Error out if the server closes the connection.
2011-05-30 22:11:52 +00:00
Lars Magne Ingebrigtsen
9f5e78f7d5 nnheader.el (nnheader-insert-buffer-substring): Renamed from nntp- and moved from that file for reuse. 2011-05-02 03:37:06 +00:00
Gnus developers
b87f32fc00 Merge changes made in Gnus trunk.
pop3.el (pop3-open-server): Upgrade opportunistically to STARTTLS.
 (open-tls-stream): Remove superfluous tls/starttls autoloads.
gnus-sum.el (gnus-summary-next-article): Don't bug out if the summary buffer has moved to a different frame.
nnimap.el (nnimap-request-article): Use nntp-insert-buffer-substring to get the conversion from unibyte to multibyte buffers to work on Emacs 22.
nntp.el (nntp-request-article): Slight clean-up.
2011-05-01 23:30:18 +00:00
Teodor Zlatanov
5e68f8614f nnimap.el (nnimap-user): New backend variable.
(nnimap-open-connection-1): Use it.
 (nnimap-credentials): Accept user parameter so it's explicit what user name is desired.
2011-04-22 01:01:32 +00:00
Chong Yidong
da91b5f294 Merge open-protocol-stream into open-network-stream.
* lisp/subr.el (open-network-stream): Move to net/network-stream.el.

* lisp/gnus/proto-stream.el: Move to net/network-stream.el.

* lisp/net/network-stream.el: Move from gnus/proto-stream.el.
Change prefix to network-stream throughout.
(open-protocol-stream): Merge into open-network-stream, leaving
open-protocol-stream as an alias.  Handle nil BUFFER args.

* lisp/gnus/nnimap.el (nnimap-open-connection-1): Pass explicit :end-of-command
parameter to open-protocol-stream.

* lisp/emacs-lisp/package.el (package--with-work-buffer): Recognize
https URLs.

* lisp/url/url-gw.el (url-open-stream): Use new open-network-stream
functionality to perform encryption.
2011-04-02 19:41:03 -04:00
Gnus developers
a5954fa5c8 Merge Gnus' changes.
gnus.texi (Listing Groups): Document gnus-group-list-ticked.
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.
nnimap.el (nnimap-open-connection-1): Is the login responds with a new CAPABILITY, use it.
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'.
gnus.el (gnus-group-startup-message): Prefer svg file and replace colors.
 (gnus-splash-svg-color-symbols): New function.
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.
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.
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-30 14:59:42 +00:00
Chong Yidong
e742e11707 Change default type of open-protocol-stream.
* 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.

* 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'.
2011-03-29 22:21:28 -04:00
Chong Yidong
f2eefd2477 Changes to open-protocol-stream, preparing for merging it with open-network-stream.
* lisp/gnus/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.

* lisp/gnus/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.

* lisp/gnus/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-26 19:18:42 -04:00
Gnus developers
1518e4f02d Merge changes made in Gnus trunk.
message.texi (Various Commands): Document format specs in the ellipsis.
time-date.el (format-seconds): Use assoc instead of assoc-string to avoid warning on XEmacs.
gnus-art.el: Require mouse, which the build bot seems to say is needed.
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.
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.
shr.el (shr-visit-file): New command.
nnimap.el (nnimap-fetch-inbox): Rewrite slightly last patch.
nnimap.el (nnimap-fetch-inbox): Don't download bodies on ver4-capable servers.
2011-03-18 13:45:04 +00:00
Gnus developers
a123622dc4 Merge changes made in Gnus trunk.
message.texi (Insertion Variables): Document message-cite-style.
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.
message.el (message-elide-region): Allow the ellipsis to say how many lines were removed.
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.
gnus-art.el (gnus-article-treat-body-boundary): Fix boundary width on XEmacs, which was one character too wide.
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.
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 22:38:41 +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
Gnus developers
a505754642 Merge changes made in Gnus trunk.
message.texi (Message Buffers): Update default value of message-generate-new-buffers.
shr.el (shr-table-horizontal-line): Change the defaults for the table lines to be spaces instead.
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.
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.
2011-03-08 14:26:05 +00:00
Gnus developers
71f8b7edc1 Merge changes made in Gnus trunk.
nnimap.el (nnimap-parse-flags): Add a workaround for FETCH lines with numbers too big to be `read'.
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-03 13:21:50 +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
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
Gnus developers
01baa1e6f2 nnimap.el (nnimap-wait-for-response): Ensure that we get the entire line we're waiting for.
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-20 04:08:04 +00:00
Gnus developers
56e96bed34 nnimap.el (nnimap-parse-copied-articles): Allow for "<foo> OK" outputs from the server.
gnus-art.el (gnus-article-prepare): Run gnus-article-prepare-hook later so that bbdb can hook in easier.
2011-02-19 09:45:07 +00:00
Lars Ingebrigtsen
c13bc26baa 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-18 00:41:50 +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
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
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
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
Gnus developers
114fe5465b net/imap.el: Remove file. All the functionality is in nnimap.el.
nnimap.el (nnimap-request-accept-article, nnimap-process-quirk): Fix Gcc processing on imap.
2011-02-13 13:44:06 +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
Lars Ingebrigtsen
b52daf3d93 nnimap.el (nnimap-update-info): Simplify split history test. 2011-02-07 22:49:38 +00:00
Lars Ingebrigtsen
41d579ce4a 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): Renamed function to avoid collision.
 (nnimap-update-info): Fix macrology bug-out.
2011-02-07 13:03:22 +00:00
Gnus developers
0d1c2cc8c8 Merge changes made in Gnus trunk.
gnus-util.el: change default value of gnus-user-date-format-alist.
gnus-art.el (gnus-article-jump-to-part): Remove useless sit-for.
gnus-art.el: remove old FIXME.
gnus.el (gnus-summary-line-format): Add missing semi-colon for user-date in docstring.
message.el (message-setup-1): Always generate References first.
 (message-mail): Return the return value of message-setup, not always t.
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).
 (message-setup-1): Insert mail-header-separator with read-only and intangible properties set.
gnus-draft.el: Remove progn around gnus-draft-setup.
gnus-start.el (gnus-get-unread-articles): Fix the call to methods that have no groups.
nnimap.el (nnimap-request-accept-article): Give an error message if the APPEND wasn't successful.
2011-02-03 23:43:22 +00:00
Glenn Morris
5a6a61f77f Silence some compiler warnings.
* lisp/gnus/nnheader.el (gnus-range-add, gnus-remove-from-range): Autoload.

* lisp/gnus/nnimap.el (gnus-fetch-headers): Declare.
2011-02-02 23:25:14 -08:00
Lars Ingebrigtsen
0832490d44 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 04:41:38 +00:00
Lars Ingebrigtsen
228724bc63 nnimap.el (nnimap-request-head): Protect against not finding the article by Message-ID. 2011-01-30 01:46:32 +00:00
Gnus developers
008cad902f Merge changes made in Gnus trunk.
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.
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 23:51:40 +00:00