------------------------------------------------------------ revno: 115917 committer: Daiki Ueno branch nick: trunk timestamp: Wed 2014-01-08 15:25:21 +0900 message: emacs-lisp/package.el (package--check-signature): Fix download error handling * emacs-lisp/package.el (url-recreate-url): Declare. (url-http-target-url): Declare. (package-handle-response): Include requested URL in the error message. (package--check-signature): Don't re-signal errors from package--with-work-buffer. Suggested by Stefan Monnier. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-01-07 23:36:29 +0000 +++ lisp/ChangeLog 2014-01-08 06:25:21 +0000 @@ -1,3 +1,12 @@ +2014-01-08 Daiki Ueno + + * emacs-lisp/package.el (url-recreate-url): Declare. + (url-http-target-url): Declare. + (package-handle-response): Include requested URL in the error + message. + (package--check-signature): Don't re-signal errors from + package--with-work-buffer. Suggested by Stefan Monnier. + 2014-01-07 Bastien Guerry * minibuffer.el (completion--try-word-completion): When both a === modified file 'lisp/emacs-lisp/package.el' --- lisp/emacs-lisp/package.el 2014-01-07 10:58:03 +0000 +++ lisp/emacs-lisp/package.el 2014-01-08 06:25:21 +0000 @@ -210,6 +210,8 @@ (declare-function lm-header "lisp-mnt" (header)) (declare-function lm-commentary "lisp-mnt" (&optional file)) (defvar url-http-end-of-headers) +(declare-function url-recreate-url "url" (urlobj)) +(defvar url-http-target-url) (defcustom package-archives '(("gnu" . "http://elpa.gnu.org/packages/")) "An alist of archives from which to fetch. @@ -789,7 +791,8 @@ (require 'url-http) (let ((response (url-http-parse-response))) (when (or (< response 200) (>= response 300)) - (error "Error during download request:%s" + (error "Error downloading %s:%s" + (url-recreate-url url-http-target-url) (buffer-substring-no-properties (point) (line-end-position)))))) (defun package--archive-file-exists-p (location file) @@ -820,10 +823,8 @@ (sig-file (concat file ".sig")) sig-content good-signatures) - (condition-case-unless-debug error - (setq sig-content (package--with-work-buffer location sig-file - (buffer-string))) - (error "Failed to download %s: %S" sig-file (cdr error))) + (setq sig-content (package--with-work-buffer location sig-file + (buffer-string))) (epg-context-set-home-directory context homedir) (epg-verify-string context sig-content (buffer-string)) ;; The .sig file may contain multiple signatures. Success if one ------------------------------------------------------------ revno: 115916 committer: Bastien Guerry branch nick: trunk timestamp: Wed 2014-01-08 00:36:29 +0100 message: Fix bug 15980 * minibuffer.el (completion--try-word-completion): When both a hyphen and a space are possible candidates for the character following a word, display both candidates. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-01-07 17:16:24 +0000 +++ lisp/ChangeLog 2014-01-07 23:36:29 +0000 @@ -1,3 +1,9 @@ +2014-01-07 Bastien Guerry + + * minibuffer.el (completion--try-word-completion): When both a + hyphen and a space are possible candidates for the character + following a word, display both candidates. (Bug#15980) + 2014-01-07 Martin Rudalics * window.el (balance-windows-2): While rounding don't give a === modified file 'lisp/minibuffer.el' --- lisp/minibuffer.el 2014-01-01 07:43:34 +0000 +++ lisp/minibuffer.el 2014-01-07 23:36:29 +0000 @@ -1334,16 +1334,19 @@ ;; instead, but it was too blunt, leading to situations where SPC ;; was the only insertable char at point but minibuffer-complete-word ;; refused inserting it. - (let ((exts (mapcar (lambda (str) (propertize str 'completion-try-word t)) - '(" " "-"))) - (before (substring string 0 point)) - (after (substring string point)) - tem) - (while (and exts (not (consp tem))) - (setq tem (completion-try-completion - (concat before (pop exts) after) - table predicate (1+ point) md))) - (if (consp tem) (setq comp tem)))) + (let* ((exts (mapcar (lambda (str) (propertize str 'completion-try-word t)) + '(" " "-"))) + (before (substring string 0 point)) + (after (substring string point)) + (comps + (delete nil + (mapcar (lambda (ext) + (completion-try-completion + (concat before ext after) + table predicate (1+ point) md)) + exts)))) + (when (and (= 1 (length comps) (consp (car comps)))) + (setq comp (car comps))))) ;; Completing a single word is actually more difficult than completing ;; as much as possible, because we first have to find the "current