auth.texi (Help for developers): Update docs to explain that the :save-function will only run the first time.
auth-source.el (auth-source-format-prompt): Always convert the value to a string to avoid evaluating non-string arguments.
(auth-source-netrc-create): Offer default properly, not as initial content in `read-string'.
(auth-source-netrc-saver): Use a cache keyed by file name and MD5 hash of line to determine if we've been run before. If so, don't run again, but print a trivial message to indicate the cache was hit instead.
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.
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.
and calc-logunits-nplevel to calc-dblevel and calc-nplevel,
respectively.
* calc/calc-ext.el (calc-init-extensions): Rename calc-logunits-dblevel
and calc-logunits-nplevel to calc-dblevel and calc-nplevel,
respectively.
* calc/calc-units.el (calc-dblevel): Rename from calc-logunits-dblevel.
(calc-nplevel): Rename from calc-logunits-nplevel.
As far as I can tell, it was never used outside of dired-smart-shell-command.
It doesn't seem worth keeping around as a separate function.
* lisp/dired-x.el (dired-default-directory-alist, dired-default-directory):
Mark as obsolete.
(dired-smart-shell-command): Just call dired-current-directory.
* doc/misc/dired-x.texi (Multiple Dired Directories): Remove mentions
of dired-default-directory-alist and dired-default-directory.
Move dired-smart-shell-command here...
(Miscellaneous Commands): ... from here.
* lisp/dired-x.el (dired-omit-here-always): Make it obsolete.
* doc/misc/dired-x.texi (Omitting Variables): Refer to add-dir-local-variable
instead of the obsoleted dired-omit-here-always.
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.
* lisp/dired.el (dired-mode): Call hack-dir-local-variables-non-file-buffer.
* lisp/dired-x.el (dired-omit-mode): Safe if boolean.
(dired-enable-local-variables): Fix doc and custom type. Mark risky.
(dired-enable-local-variables, dired-local-variables-file)
(dired-hack-local-variables): Make obsolete.
(dired-omit-here-always): Use dir-locals.el instead.
* doc/misc/dired-x.texi (Features): Don't advertise obsolete local variables.
Simplify layout.
(Omitting Variables): Update local variables example.
(Local Variables): Say this is obsolete. Fix description of
dired-enable-local-variables possible values.
* etc/NEWS: Relocate the existing entry about directory local
variables in file-les buffers, and make it clearer.
Mention above dired changes.
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.
gnus.texi (Window Layout): Document layout names.
nntp.el (nntp-finish-retrieve-group-infos): Add a kludge to use the given method as in the group name if we're using an extended method.
(nntp-finish-retrieve-group-infos): Wait for the end of the LIST ACTIVE command, if we're using that, instead of waiting for the beginning.
gnus-start.el (gnus-get-unread-articles): Extend the methods so that we're sure to get unique server names, and we don't output two async commands in the same buffer. This fixes an NNTP hang for some users.
netrc.el (netrc-parse): Comment fix.
gnus-sum.el (gnus-summary-next-article): Add a kludge to reselect the summary buffer before reading going to the next buffer. This avoids putting the point in the group buffer if you `C-g' the command.
auth-source.el (auth-source-netrc-parse): Add an in-memory netrc cache (for now) to make ~/.authinfo.gpg files usable.
nnfolder.el (copyright-update): Define for the compiler.
auth-source.el (auth-source-search): Fix unbound variable.
doc/lispref/elisp.texi: Sync @dircategory with ../../info/dir.
doc/lispintro/emacs-lisp-intro.texi: Sync @dircategory with ../../info/dir.
doc/misc/ede.texi: Sync letter-case with ../../info/dir.
ada-mode.texi: Sync @dircategory with ../../info/dir.
auth.texi: Sync @dircategory with ../../info/dir.
autotype.texi: Sync @dircategory with ../../info/dir.
calc.texi: Sync @dircategory with ../../info/dir.
cc-mode.texi: Sync @dircategory with ../../info/dir.
cl.texi: Sync @dircategory with ../../info/dir.
dbus.texi: Sync @dircategory with ../../info/dir.
dired-x.texi: Sync @dircategory with ../../info/dir.
ebrowse.texi: Sync @dircategory with ../../info/dir.
ede.texi: Sync @dircategory with ../../info/dir.
ediff.texi: Sync @dircategory with ../../info/dir.
edt.texi: Sync @dircategory with ../../info/dir.
eieio.texi: Sync @dircategory with ../../info/dir.
emacs-mime.texi: Sync @dircategory with ../../info/dir.
epa.texi: Sync @dircategory with ../../info/dir.
erc.texi: Sync @dircategory with ../../info/dir.
eshell.texi: Sync @dircategory with ../../info/dir.
eudc.texi: Sync @dircategory with ../../info/dir.
flymake.texi: Sync @dircategory with ../../info/dir.
forms.texi: Sync @dircategory with ../../info/dir.
gnus.texi: Sync @dircategory with ../../info/dir.
idlwave.texi: Sync @dircategory with ../../info/dir.
mairix-el.texi: Sync @dircategory with ../../info/dir.
message.texi: Sync @dircategory with ../../info/dir.
mh-e.texi: Sync @dircategory with ../../info/dir.
newsticker.texi: Sync @dircategory with ../../info/dir.
nxml-mode.texi: Sync @dircategory with ../../info/dir.
org.texi: Sync @dircategory with ../../info/dir.
pcl-cvs.texi: Sync @dircategory with ../../info/dir.
pgg.texi: Sync @dircategory with ../../info/dir.
rcirc.texi: Sync @dircategory with ../../info/dir.
reftex.texi: Sync @dircategory with ../../info/dir.
remember.texi: Sync @dircategory with ../../info/dir.
sasl.texi: Sync @dircategory with ../../info/dir.
sc.texi: Sync @dircategory with ../../info/dir.
semantic.texi: Sync @dircategory with ../../info/dir.
ses.texi: Sync @dircategory with ../../info/dir.
sieve.texi: Sync @dircategory with ../../info/dir.
smtpmail.texi: Sync @dircategory with ../../info/dir.
speedbar.texi: Sync @dircategory with ../../info/dir.
trampver.texi [emacs]: Set emacsname to "Emacs".
tramp.texi: Sync @dircategory with ../../info/dir.
url.texi: Sync @dircategory with ../../info/dir.
vip.texi: Sync @dircategory with ../../info/dir.
viper.texi: Sync @dircategory with ../../info/dir.
widget.texi: Sync @dircategory with ../../info/dir.
woman.texi: Sync @dircategory with ../../info/dir.
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'.
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.
* doc/misc/dired-x.texi: Use emacsver.texi to get Emacs version.
* doc/misc/Makefile.in ($(infodir)/dired-x, dired-x.dvi, dired-x.pdf):
Depend on emacsver.texi.
* lisp/dired-x.el (dired-bind-jump, dired-bind-man, dired-bind-info):
Doc fixes. Add :set property, replacing top-level calls.
(dired-vm-read-only-folders, dired-vm): Doc fix (drop v. old VM 4).
(dired-guess-shell-gnutar): Test tar version rather than system-type.
(dired-extra-startup, dired-man, dired-info): Doc fixes.
(dired-clean-up-after-deletion): Use when and dolist.
(dired-jump): Use unless and when.
(dired-virtual): Use line-end-position.
(dired-default-directory-alist): Rename from default-directory-alist.
(dired-default-directory): Update for above name change.
(dired-vm): Drop VM < 5 and simplify.
(dired-buffer-more-recently-used-p): Rewrite.
(dired-filename-at-point): Use when and or.
(dired-x-read-filename-at-point): Rename from read-filename-at-point.
Update callers.
* doc/misc/dired-x.texi (Multiple Dired Directories): Update for rename of
default-directory-alist.
(Miscellaneous Commands): No longer mention very old VM version 4.
auth.texi (Help for users): Login collection is "Login" and not "login".
gnus-sum.el (gnus-propagate-marks): Default to nil.
(gnus-summary-exit): Kill the correct article buffer on exit from a `C-d' group.
gnus-start.el (gnus-use-backend-marks): Removed, since it duplicates gnus-propagate-marks.
gnus-sum.el (gnus-summary-exit-no-update): Restore the group conf before killing the buffers so that a non-full window conf gets handled correctly.
(gnus-summary-exit): Ditto.
(gnus-summary-read-group-1): Ditto.
nntp.el (nntp-retrieve-group-data-early): Reinstate the two-part async code again so that we can debug it properly.
message.el (message-reply): Take an optional switch-buffer parameter so that Gnus window confs are respected better.
auth-source.el (auth-source-secrets-search): Use `delete-dups', `append mapcar', and `butlast' instead of `remove-duplicates', `mapcan', and `subseq'.
(auth-sources, auth-source-backend-parse, auth-source-secrets-search): Login collection is "Login" and not "login".
gnus-art.el (article-update-date-lapsed): Don't bug out when updating multiple headers.
* doc/misc/dired-x.texi: Drop meaningless version number.
(Introduction): Remove old info.
(Optional Installation Dired Jump): Autoload from dired-x.
Remove incorrect info about loaddefs.el.
(Bugs): Just refer to M-x report-emacs-bug.