commit fddff05e889b3290222cdfd339af78c074ea1b3e (HEAD, refs/remotes/origin/master) Author: Dmitry Gutov Date: Sat Apr 25 19:23:41 2015 +0300 Pass `id' to `completing-read' as def instead of initial input * xref.el (xref--read-identifier): Pass `id' to `completing-read' as the default value instead of initial input (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html). diff --git a/lisp/progmodes/xref.el b/lisp/progmodes/xref.el index afcbbf5..0257210 100644 --- a/lisp/progmodes/xref.el +++ b/lisp/progmodes/xref.el @@ -562,8 +562,8 @@ Return an alist of the form ((FILENAME . (XREF ...)) ...)." (cond ((or current-prefix-arg (not id)) (completing-read prompt (funcall xref-identifier-completion-table-function) - nil t id - 'xref--read-identifier-history)) + nil t nil + 'xref--read-identifier-history id)) (t id)))) commit a0f634a5cd5181af2ba8c03662375b0d2e7bf1bc Author: Paul Eggert Date: Sat Apr 25 16:38:15 2015 -0700 ; Fix ChangeLog typo (Bug#20400) diff --git a/ChangeLog.2 b/ChangeLog.2 index 449917e..188e3ff 100644 --- a/ChangeLog.2 +++ b/ChangeLog.2 @@ -404,7 +404,6 @@ where either will do. 2015-04-19 Steve Purcell - Steve Purcell Assume package archive-contents are UTF8-encoded * lisp/emacs-lisp/package.el (package--read-archive-file): commit 75e039b67e36ccad939e0655a97cd837af007c4f Author: Paul Eggert Date: Sat Apr 25 16:36:59 2015 -0700 ; make change-history-commit diff --git a/ChangeLog.2 b/ChangeLog.2 index a0bfa97..449917e 100644 --- a/ChangeLog.2 +++ b/ChangeLog.2 @@ -1,3 +1,444 @@ +2015-04-25 Paul Eggert + + Don't freeze with unreadable processes + Don't freeze if an exiting process can't be read from. (Bug#19860). + This fixes a bug I introduced in + 2014-07-08T07:24:07Z@eggert@cs.ucla.edu + "* process.c: Add sanity checks for file descriptors." + Dmitry Gutov did most of the legwork in finding the problem. + * src/process.c (wait_reading_process_output): + Treat non-running processes that can't be read from + the same as other non-running processes. + +2015-04-25 Alan Mackenzie + + Fix change from 2015-04-22 "On C-y, stop some text property entries ..." + * lisp/subr.el (remove-yank-excluded-properties): put + `with-silent-modifications' around only the last three lines of code. + +2015-04-25 Artur Malabarba + + * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache + (package--all-keywords): Deleted variable. + + * etc/NEWS: Document package-hiding functionality + +2015-04-25 Eli Zaretskii + + lisp/window.el (recenter-last-op): Doc fix. (Bug#20419) + + Clarify the doc string of 'replace-regexp-in-string' + * lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395) + + Improve doc string of 'insert-buffer-substring' + * src/editfns.c (Finsert_buffer_substring): Doc fix. (Bug#20421) + + MS-Windows followup for the recent gnulib update + * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with + acl-internal.c. + +2015-04-24 Paul Eggert + + Spelling fixes + + Merge from gnulib + This incorporates: + 2015-04-24 file-has-acl: new module, split from acl + 2015-04-24 manywarnings: add GCC 5.1 warnings + 2015-04-21 lstat: fix cross-compilation 'ln -s' problem + 2015-04-15 qacl: Simplify HP-UX acl_nontrivial check + 2015-04-15 acl: On Linux, check for acls without libacl + 2015-04-14 tempname: avoid unused parameter warnings (trivial) + * lib/acl-internal.c: New file, from gnulib. + * lib/file-has-acl.c: Remove; no longer imported from gnulib. + * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c: + * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4: + Update from gnulib. + + Port --enable-gcc-warnings to GCC 5.1 x86-64 + * lib-src/ebrowse.c (dump_sym): + * lib-src/hexl.c (main): + * src/ccl.c (ccl_driver): + * src/character.c (string_escape_byte8): + * src/dbusbind.c (xd_retrieve_arg, xd_add_watch): + * src/gnutls.c (Fgnutls_boot): + * src/gtkutil.c (xg_check_special_colors): + * src/image.c (x_build_heuristic_mask): + * src/print.c (safe_debug_print, print_object): + * src/term.c (produce_glyphless_glyph): + * src/xdisp.c (get_next_display_element) + (produce_glyphless_glyph): + * src/xterm.c (x_draw_glyphless_glyph_string_foreground): + Don't use a signed format to print an unsigned integer, or vice + versa. GCC 5.1's new -Wformat-signedness option warns about this. + * src/image.c (png_load_body, jpeg_load_body): + Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561). + +2015-04-24 Tassilo Horn + + Add new faces to tsdh-light-theme + * etc/themes/tsdh-light-theme.el (tsdh-light): New face + definitions for Info-quoted, ace-jump-face-foreground, + hl-paren-face, show-paren-match, and show-paren-mismatch. + +2015-04-24 Nicolas Petton + + * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro. + +2015-04-24 Glenn Morris + + * build-aux/gitlog-to-emacslog: + Use raw log format rather than wrapped one. + +2015-04-24 Stefan Monnier + + * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code + (seq-doseq): Fix out-of-scope binding. + Don't call `seq-length at every iteration. + Reduce `if's from 3 to 2 per iteration. + (emacs-lisp-mode-hook): Don't tweak in Emacs≥25. + +2015-04-24 Glenn Morris + + * lisp/textmodes/text-mode.el (text-mode-hook): + Move text-mode-hook-identify to default. + + * lisp/mouse.el (minor-mode-menu-from-indicator): + Handle non-function members of minor-mode-map-alist. (Bug#20201) + + * lisp/help-fns.el (describe-function): More type checking. + (describe-function-1): Handle changed symbol-function. (Bug#20201) + + * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)". + (Bug#20325) + +2015-04-24 Andreas Schwab + + shr: strip leading whitespace when expanding URLs + * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL. + +2015-04-24 Eli Zaretskii + + Clarify "co-authored" some more + + * CONTRIBUTE: Clarify "co-authored-by". (Bug#20400) + + Clarify doc strings of functions that search for properties + * src/textprop.c (Fnext_char_property_change) + (Fprevious_char_property_change) + (Fnext_single_char_property_change) + (Fprevious_single_char_property_change, Fnext_property_change) + (Fnext_single_property_change, Fprevious_property_change) + (Fprevious_single_property_change): Clarify doc strings wrt return + value and the optional LIMIT argument. (Bug#20411) + +2015-04-24 Glenn Morris + + * test/automated/message-mode-tests.el (message-mode-propertize): + Handle non-writable HOME; eg on hydra.nixos.org. + +2015-04-23 Eli Zaretskii + + Avoid starting threads by w32-shell-execute + * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into + local file names, before invoking ShellExecute. (Bug#20220) + +2015-04-23 Martin Rudalics + + Fix following doc-links in `widget-documentation-link-action' + * lisp/wid-edit.el (widget-documentation-link-action): Make + following doc-links less simplistic (Bug#20398). + +2015-04-22 Thomas Fitzsimmons + + Improve EUDC manual + * eudc.texi (Troubleshooting): New LDAP troubleshooting subsection. + +2015-04-22 Paul Eggert + + Omit needless "\ " after multibyte then newline + * src/print.c: Include , for c_isxdigit. + (print_object): When print-escape-multibyte is non-nil and a + multibyte character is followed by a newline or formfeed, followed + by a hex digit, don't output a needless "\ " before the hex digit. + * test/automated/print-tests.el (print-hex-backslash): New test. + +2015-04-22 Oleh Krehel + + Add a new `inhibit-message' variable + * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'. + (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when + `inhibit_message' is non-zero. + * etc/NEWS: Add an entry. + * doc/lispref/display.texi: Add an entry for `inhibit-message', + mention it in `message'. + +2015-04-22 Martin Rudalics + + Fix last fix in `display-buffer-record-window'. + * lisp/window.el (display-buffer-record-window): Fix last fix. + +2015-04-22 Eli Zaretskii + + Minor edits in CONTRIBUTE + * CONTRIBUTE: Rearrange instructions about log messages. + Use "Git" capitalized all over. + Use 2 spaces between sentences. + +2015-04-22 Artur Malabarba + + * lisp/files.el (basic-save-buffer): Fix argument + + * lisp/cus-edit.el (custom-file): Consider init-file-had-error + In case `(and (null custom-file) init-file-had-error)' do the same + thing we'd do if `(null user-init-file)', which is to either error out + or return nil. This is in line with `custom-save-all' which would + throw an error in that situation. (bug#20355) + + * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu + (package-menu-hide-low-priority): New variable, see its doc. + (package-archive-priorities): Update doc. + (package-desc-priority): New function. + (package-desc-priority-version): Use it. + (package--remove-hidden): New function. + (package-menu--refresh): Use it. + + * lisp/emacs-lisp/package.el: Implement displaying obsolete packages + (package-menu--hide-obsolete): New variable. + (package--remove-hidden): Use it. + (package-menu-hide-obsolete): New interactive function to toggle + the variable. + (package--quick-help-keys): Document it. + (package-menu-async): Add :version tag. + (package-menu-mode-map): Bind package-menu-hide-obsolete. + (package-desc-status): Indicate non-installed obsolete packages as + avail-obso. + (package-menu-mark-install): Allow installation of avail-obso. + (package-menu--status-predicate): Sort avail-obso with available. + +2015-04-22 Alan Mackenzie + + On C-y, stop some text property entries being written into buffer-undo-list + lisp/subr.el (remove-yank-excluded-properties): enclose the code in + `with-silent-modifications'. + +2015-04-22 Martin Rudalics + + In display-buffer-record-window record selected window if necessary. + * lisp/window.el (display-buffer-record-window): Store selected window + if it differs from 3rd element of 'quit-restore' parameter (Bug#20353). + +2015-04-22 Tassilo Horn + + Fix reftex-citation bug + * reftex-cite.el (reftex-extract-bib-entries): Fix + `wrong-type-argument stringp nil' error that occurs when AUCTeX + integration is enabled and there are no citations in the document + so far. + +2015-04-21 Dmitry Gutov + + Add or reset based on the presence of MERGE_HEAD + * lisp/vc/vc-git.el (vc-git-find-file-hook): Add + `vc-git-resolve-when-done' to `after-save-hook' in either case. + (vc-git-conflicted-files): Add a TODO. + (vc-git-resolve-when-done): Depending on the presence of + MERGE_HEAD, either update the resolved file in the index, or + remove it from there. (Bug#20292) + +2015-04-21 Glenn Morris + + * lisp/custom.el (custom-declare-group): No need to purecopy + custom-current-group-alist members following recent change to set + it to nil before dumping. + + * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2. + (Bug#20399) + +2015-04-21 Daniel Colascione + + Unbreak no-op buffer save message + * lisp/files.el (save-buffer): Pass interactive flag to `basic-save-buffer` + (basic-save-buffer): Accept called-interactively as an argument instead of + directly invoking called-interactively-p, which will always yield nil + in that context. + +2015-04-21 Alan Mackenzie + + CC Mode: Do nothing in before/after-change-functions for text property changes + Fixes bug#20266. + lisp/progmodes/cc-mode.el (c-basic-common-init): Make + yank-handled-properties buffer local, and remove 'category from it. + (c-called-from-text-property-change-p): New function. + (c-before-change): Don't do anything if a call of the new function + returns non-nil. + (c-after-change): Don't do much if a call of the new function returns + non-nil. + (c-extend-after-change-region): Put changes to text property 'fontified + inside c-save-buffer-state. + +2015-04-20 Stefan Monnier + + Fix byte-compiler warnings about looking-back. + * lisp/vc/log-view.el (log-view-end-of-defun-1): + * lisp/textmodes/tex-mode.el (latex-forward-sexp-1): + * lisp/textmodes/reftex-ref.el (reftex-goto-label): + * lisp/textmodes/bibtex.el (bibtex-insert-kill): + * lisp/progmodes/sh-script.el (sh--maybe-here-document): + * lisp/progmodes/ruby-mode.el (ruby-end-of-defun): + * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p): + * lisp/org/org.el (org-insert-heading, org-sort-entries): + * lisp/org/org-mouse.el (org-mouse-end-headline) + (org-mouse-context-menu): + * lisp/org/org-clock.el (org-clock-cancel): + * lisp/man.el (Man-default-man-entry): + * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text) + (rmail-ensure-blank-line): + * lisp/mail/footnote.el (Footnote-delete-footnote): + * lisp/mail/emacsbug.el (report-emacs-bug): + * lisp/info.el (Info-follow-reference, Info-fontify-node): + * lisp/info-look.el (info-lookup-guess-custom-symbol): + * lisp/help-fns.el (help-fns--key-bindings): + * lisp/files.el (hack-local-variables): + * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete) + (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file) + (viper-complete-filename-or-exit): + * lisp/emulation/viper-cmd.el (viper-backward-indent): + * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent): + * lisp/emacs-lisp/elint.el (elint-get-top-forms): + * lisp/cus-edit.el (custom-face-edit-value-create): + * lisp/calendar/todo-mode.el (todo-set-item-priority) + (todo-filter-items-1, todo-convert-legacy-files) + (todo-prefix-overlays): Add explicit second arg to looking-back. + +2015-04-20 Glenn Morris + + Avoid non-nil current-load-list at startup + * src/process.c (init_process_emacs): Move Fprovide statement... + (syms_of_process): ... to here. + + * lisp/loadup.el (custom-current-group-alist): Reset before dumping. + + * lisp/startup.el (command-line) : Avoid rogue value in emacs -Q. + +2015-04-20 Ludovic Courtès + + * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary. + (Bug#20330) + +2015-04-20 Glenn Morris + + * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue. + + Tweak exec-path in uninstalled case + * src/callproc.c (init_callproc): If running uninstalled, do not + include eventual installation libexec directory in exec-path. + +2015-04-20 Artur Malabarba + + * lisp/emacs-lisp/package.el: Filter by multiple keywords and cache keywords + (package-menu-filter): Accept a list of keywords. + (package--all-keywords): New variable to cache known keywords. + (package-all-keywords): Populate it if necessary. + (package-refresh-contents): Reset it. + + * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords + (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx" + as special keywords which match agains package archive and status + respectively. + * etc/NEWS: Document it. + +2015-04-20 Eli Zaretskii + + Describe and index "empty overlays". + * doc/lispref/display.texi (Overlays): Improve indexing. + (Managing Overlays): Describe "empty" overlays. + (Overlay Properties, Finding Overlays): Add cross-reference to + where empty overlays are described. + +2015-04-19 Paul Eggert + + Spelling fixes + + Quote 'like this' in top-level files + * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist: + Prefer to single-quote 'like this' (instead of the older style + `like this'). + * configure.ac: Fix some space-before-tab problems that 'git commit' + complained about. + + Use bool for boolean in textprop.c, undo.c + * src/textprop.c (soft, hard): Now constants instead of macros. + (validate_plist): Rewrite to avoid need for boolean local. + (interval_has_all_properties, interval_has_some_properties) + (interval_has_some_properties_list, add_properties) + (remove_properties, get_char_property_and_overlay) + (Fnext_single_char_property_change) + (Fprevious_single_char_property_change, add_text_properties_1) + (Fremove_text_properties, Fremove_list_of_text_properties) + (copy_text_properties): + * src/tparam.c (tparam1): + * src/undo.c (record_change, record_property_change) + (syms_of_undo): + Use 'true' and 'false' for booleans. + +2015-04-19 Dmitry Gutov + + Call `smerge-start-session' even when dealing with a stash conflict + * lisp/vc/vc-git.el (vc-git-find-file-hook): + Call `smerge-start-session' even when dealing with a stash + conflict (bug#20292). + +2015-04-19 Vibhav Pant + + Add option to eshell/clear to clear scrollback. + * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function. + (eshell/clear): Add an optional SCROLLBACK argument. If non-nil, + scrollback contents are cleared. + * etc/NEWS: Describe change. + * doc/misc/eshell.texi: Add entry for `clear'. + +2015-04-19 Paul Eggert + + * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned' + where either will do. + +2015-04-19 Steve Purcell + Steve Purcell + + Assume package archive-contents are UTF8-encoded + * lisp/emacs-lisp/package.el (package--read-archive-file): + Set `coding-system-for-read' explicitly to 'utf-8 when reading the + downloaded and cached archive-contents files, so that non-ASCII + characters in package descriptions are displayed correctly in the + `list-packages' menu. (Bug#20231) + +2015-04-19 Dmitry Gutov + + Abort when looking at stashed changes + * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at + stashed changes (bug#20292). + +2015-04-19 Paul Eggert + + Refactor low-level printing for simplicity + * src/print.c (PRINTDECLARE): Remove. Move its contents into + PRINTPREPARE; doable now that we assume C99. All callers changed. + (PRINTCHAR): Remove, as it adds more mystery than clarity. + All callers changed. + (strout): Assume that caller computes length. All callers changed. + (print_c_string): New function. + (write_string, write_string_1): Compute length instead of asking + the caller to compute it. All callers changed. + (write_string): Simplify by using write_string_1. + (write_string_1): Simplify by using print_c_string. + (Fterpri): Compute default val more clearly. + (Fprin1_to_string, print_object): + Assume C99 to avoid unnecessary nesting. + (print_object): Prefer print_c_string to multiple printchar, or + to calling strout with -1 length. Coalesce into sprintf when + this is easy. + 2015-04-18 Paul Eggert Prefer "Bug#1234" in commit messages (Bug#20325) diff --git a/Makefile.in b/Makefile.in index ff8dbf3..f88a9c5 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1092,7 +1092,7 @@ bootstrap: bootstrap-clean .PHONY: master-branch-is-current no-ChangeLog unchanged-history-files # The newest revision that should not appear in the generated ChangeLog. -gen_origin = 870287327b1fba7105599eeabac5a2aa5ebadf19 +gen_origin = 2c1b8604946efbcd8ec5dd6c6dda7541ce4fc3c0 # Convert git commit log to ChangeLog file. make-dist uses this. ChangeLog: commit 2c1b8604946efbcd8ec5dd6c6dda7541ce4fc3c0 Author: Paul Eggert Date: Sat Apr 25 16:16:58 2015 -0700 Don't freeze with unreadable processes Don't freeze if an exiting process can't be read from. (Bug#19860). This fixes a bug I introduced in 2014-07-08T07:24:07Z@eggert@cs.ucla.edu "* process.c: Add sanity checks for file descriptors." Dmitry Gutov did most of the legwork in finding the problem. * src/process.c (wait_reading_process_output): Treat non-running processes that can't be read from the same as other non-running processes. diff --git a/src/process.c b/src/process.c index c745507..3e04cb7 100644 --- a/src/process.c +++ b/src/process.c @@ -4785,37 +4785,41 @@ wait_reading_process_output (intmax_t time_limit, int nsecs, int read_kbd, if (wait_proc && wait_proc->raw_status_new) update_status (wait_proc); if (wait_proc - && wait_proc->infd >= 0 && ! EQ (wait_proc->status, Qrun) && ! EQ (wait_proc->status, Qconnect)) { bool read_some_bytes = false; clear_waiting_for_input (); - XSETPROCESS (proc, wait_proc); - /* Read data from the process, until we exhaust it. */ - while (true) + /* If data can be read from the process, do so until exhausted. */ + if (wait_proc->infd >= 0) { - int nread = read_process_output (proc, wait_proc->infd); - if (nread < 0) + XSETPROCESS (proc, wait_proc); + + while (true) { - if (errno == EIO || errno == EAGAIN) - break; + int nread = read_process_output (proc, wait_proc->infd); + if (nread < 0) + { + if (errno == EIO || errno == EAGAIN) + break; #ifdef EWOULDBLOCK - if (errno == EWOULDBLOCK) - break; + if (errno == EWOULDBLOCK) + break; #endif - } - else - { - if (got_some_input < nread) - got_some_input = nread; - if (nread == 0) - break; - read_some_bytes = true; + } + else + { + if (got_some_input < nread) + got_some_input = nread; + if (nread == 0) + break; + read_some_bytes = true; + } } } + if (read_some_bytes && do_display) redisplay_preserve_echo_area (10); commit 45e571035bffc0db059b1d686830da89df3d2d48 Author: Alan Mackenzie Date: Sat Apr 25 20:49:44 2015 +0000 Fix change from 2015-04-22 "On C-y, stop some text property entries ..." * lisp/subr.el (remove-yank-excluded-properties): put `with-silent-modifications' around only the last three lines of code. diff --git a/lisp/subr.el b/lisp/subr.el index 91176e9..0343edb 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -2811,21 +2811,21 @@ if it's an autoloaded macro." "Process text properties between START and END, inserted for a `yank'. Perform the handling specified by `yank-handled-properties', then remove properties specified by `yank-excluded-properties'." - (with-silent-modifications - (let ((inhibit-read-only t)) - (dolist (handler yank-handled-properties) - (let ((prop (car handler)) - (fun (cdr handler)) - (run-start start)) - (while (< run-start end) - (let ((value (get-text-property run-start prop)) - (run-end (next-single-property-change - run-start prop nil end))) - (funcall fun value run-start run-end) - (setq run-start run-end))))) + (let ((inhibit-read-only t)) + (dolist (handler yank-handled-properties) + (let ((prop (car handler)) + (fun (cdr handler)) + (run-start start)) + (while (< run-start end) + (let ((value (get-text-property run-start prop)) + (run-end (next-single-property-change + run-start prop nil end))) + (funcall fun value run-start run-end) + (setq run-start run-end))))) + (with-silent-modifications (if (eq yank-excluded-properties t) - (set-text-properties start end nil) - (remove-list-of-text-properties start end yank-excluded-properties))))) + (set-text-properties start end nil) + (remove-list-of-text-properties start end yank-excluded-properties))))) (defvar yank-undo-function) commit 864573cafeabec9ce9d79a7bb4eb60a94f303847 Author: Artur Malabarba Date: Sat Apr 25 17:03:32 2015 +0100 * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache (package--all-keywords): Deleted variable. diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index e45d79a..f770acd 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -1373,11 +1373,6 @@ it to the file." (defvar package--downloads-in-progress nil "List of in-progress asynchronous downloads.") -(defvar package--all-keywords nil - "List of known keywords. -Generated by `package-all-keywords'. Reset to nil whenever the -package archives are retrieved.") - (declare-function epg-check-configuration "epg-config" (config &optional minimum-version)) (declare-function epg-configuration "epg-config" ()) @@ -1495,7 +1490,6 @@ downloads in the background." (interactive) (unless (file-exists-p package-user-dir) (make-directory package-user-dir t)) - (setq package--all-keywords nil) (let ((default-keyring (expand-file-name "package-keyring.gpg" data-directory)) (package--silence async)) @@ -2570,11 +2564,11 @@ KEYWORDS should be nil or a list of keywords." (defun package-all-keywords () "Collect all package keywords" - (unless package--all-keywords + (let ((key-list)) (package--mapc (lambda (desc) - (let* ((desc-keywords (and desc (package-desc--keywords desc)))) - (setq package--all-keywords (append desc-keywords package--all-keywords)))))) - package--all-keywords) + (setq key-list (append (package-desc--keywords desc) + key-list)))) + key-list)) (defun package--mapc (function &optional packages) "Call FUNCTION for all known PACKAGES. commit f8d660280d04728b2733e512772c5100eb44bdb4 Author: Artur Malabarba Date: Sat Apr 25 16:12:43 2015 +0100 * etc/NEWS: Document package-hiding functionality diff --git a/etc/NEWS b/etc/NEWS index e2b6b11..b408b51 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -246,6 +246,17 @@ by default at least in Debian, for security reasons). ** package.el +*** If a package is available on multiple archives and one has higher +priority (as per `package-archive-priorities') only that one is +listed. This can be configured with `package-menu-hide-low-priority'. + +*** `package-menu-hide-obsolete' now toggles the hiding of packages. +This includes the above-mentioned low-priority packages, as well as +available packages whose version is lower than the currently installed +version (which were previously impossible to display). +This allows users to downgrade a package if a lower version is +available. + *** When filtering the package menu, keywords starting with "arc:" or "status:" represent package archive or status, respectively, instead of actual keywords. commit 3b40a95bf4936eec50feabb14c993c0fa3d6881d Author: Eli Zaretskii Date: Sat Apr 25 17:51:21 2015 +0300 lisp/window.el (recenter-last-op): Doc fix. (Bug#20419) diff --git a/lisp/window.el b/lisp/window.el index 32467c3..a6c60e9 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -7625,7 +7625,8 @@ Return non-nil if the window was shrunk, nil otherwise." (defvar recenter-last-op nil "Indicates the last recenter operation performed. -Possible values: `top', `middle', `bottom', integer or float numbers.") +Possible values: `top', `middle', `bottom', integer or float numbers. +It can also be nil, which means the first value in `recenter-positions'.") (defcustom recenter-positions '(middle top bottom) "Cycling order for `recenter-top-bottom'. commit 365f9ab8653769dbe35983242746d4e46cbbf015 Author: Eli Zaretskii Date: Sat Apr 25 12:38:07 2015 +0300 Clarify the doc string of 'replace-regexp-in-string' * lisp/subr.el (replace-regexp-in-string): Doc fix. (Bug#20395) diff --git a/lisp/subr.el b/lisp/subr.el index 062c9f9..91176e9 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -3731,7 +3731,8 @@ REP is either a string used as the NEWTEXT arg of `replace-match' or a function. If it is a function, it is called with the actual text of each match, and its value is used as the replacement text. When REP is called, the match data are the result of matching REGEXP against a substring -of STRING. +of STRING, the same substring that is the actual text of the match which +is passed to REP as its argument. To replace only the first match (if any), make REGEXP match up to \\' and replace a sub-expression, e.g.