[elpa] master updated (65c7fcf -> bbfbd6e)
albinus pushed a change to branch master. from 65c7fcf New function el-search--macroexpand-1 for debugging new 9fa627b Decode xsd:base64Binary values in debbugs.el new bbfbd6e Release debbugs 0.9.1. Summary of changes: packages/debbugs/debbugs-gnu.el |1 + packages/debbugs/debbugs.el | 29 - 2 files changed, 29 insertions(+), 1 deletions(-)
[elpa] master 9fa627b 1/2: Decode xsd:base64Binary values in debbugs.el
branch: master commit 9fa627bbb3b20d842c72f1d7735deb1b839c6a2d Author: Thomas Fitzsimmons Commit: Michael Albinus Decode xsd:base64Binary values in debbugs.el * packages/debbugs/debbugs.el (debbugs-convert-soap-value-to-string): New defun. (debbugs-get-status): Use it to decode xsd:base64Binary values. --- packages/debbugs/debbugs.el | 26 ++ 1 files changed, 26 insertions(+), 0 deletions(-) diff --git a/packages/debbugs/debbugs.el b/packages/debbugs/debbugs.el index f145280..e4c9667 100644 --- a/packages/debbugs/debbugs.el +++ b/packages/debbugs/debbugs.el @@ -264,6 +264,27 @@ patch: "Return the list of bug numbers, according to AMOUNT (a number) latest bugs." (sort (car (soap-invoke debbugs-wsdl debbugs-port "newest_bugs" amount)) '<)) +(defun debbugs-convert-soap-value-to-string (string-value) + "If STRING-VALUE is unibyte, decode its contents as a UTF-8 string. +If STRING-VALUE is a multibyte string, then `soap-client' +received an xsd:string for this value, and will have decoded it +already. + +If STRING-VALUE is a unibyte string, then `soap-client' received +an xsd:base64Binary, and ran `base64-decode-string' on it to +produce a unibyte string of bytes. + +For some reason, the Debbugs server code base64-encodes strings +that contain UTF-8 characters, and returns them as +xsd:base64Binary, instead of just returning them as xsd:string. +Therefore, when STRING-VALUE is a unibyte string, we assume its +bytes represent a UTF-8 string and decode them accordingly." + (if (stringp string-value) + (if (not (multibyte-string-p string-value)) + (decode-coding-string string-value 'utf-8) + string-value) +(error "Invalid string value"))) + (defun debbugs-get-status (&rest bug-numbers) "Return a list of status entries for the bugs identified by BUG-NUMBERS. @@ -421,6 +442,11 @@ Example: (when (stringp (cdr y)) (setcdr y (mapcar 'string-to-number (split-string (cdr y) " " t) + ;; "originator" may be an xsd:base64Binary value containing + ;; a UTF-8-encoded string. + (dolist (attribute '(originator)) + (setq y (assoc attribute (cdr (assoc 'value x + (setcdr y (debbugs-convert-soap-value-to-string (cdr y ;; "package" is a string, containing comma separated ;; package names. "keywords" and "tags" are strings, ;; containing blank separated package names.
[elpa] master bbfbd6e 2/2: Release debbugs 0.9.1.
branch: master commit bbfbd6ed553be806932e9f58d6de2f866c626bff Author: Michael Albinus Commit: Michael Albinus Release debbugs 0.9.1. * packages/debbugs/debbugs-gnu.el (gnus-fetch-field): Autoload it. * packages/debbugs/debbugs.el: Increase Version to 0.9.1. (debbugs-get-status): Decode also "subject"", "owner" and "summary". --- packages/debbugs/debbugs-gnu.el |1 + packages/debbugs/debbugs.el | 11 ++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/packages/debbugs/debbugs-gnu.el b/packages/debbugs/debbugs-gnu.el index 08c8425..378937b 100644 --- a/packages/debbugs/debbugs-gnu.el +++ b/packages/debbugs/debbugs-gnu.el @@ -148,6 +148,7 @@ (autoload 'diff-goto-source "diff-mode") (autoload 'diff-hunk-file-names "diff-mode") (autoload 'gnus-article-mime-handles "gnus-art") +(autoload 'gnus-fetch-field "gnus-util") (autoload 'gnus-read-ephemeral-emacs-bug-group "gnus-group") (autoload 'gnus-summary-article-header "gnus-sum") (autoload 'gnus-summary-select-article "gnus-sum") diff --git a/packages/debbugs/debbugs.el b/packages/debbugs/debbugs.el index e4c9667..f026ec6 100644 --- a/packages/debbugs/debbugs.el +++ b/packages/debbugs/debbugs.el @@ -5,7 +5,7 @@ ;; Author: Michael Albinus ;; Keywords: comm, hypermedia ;; Package: debbugs -;; Version: 0.9 +;; Version: 0.9.1 ;; Package-Requires: ((async "1.6")) ;; This file is not part of GNU Emacs. @@ -442,11 +442,12 @@ Example: (when (stringp (cdr y)) (setcdr y (mapcar 'string-to-number (split-string (cdr y) " " t) - ;; "originator" may be an xsd:base64Binary value containing - ;; a UTF-8-encoded string. - (dolist (attribute '(originator)) + ;; "subject", "originator", "owner" and "summary" may be an + ;; xsd:base64Binary value containing a UTF-8-encoded string. + (dolist (attribute '(subject originator owner summary)) (setq y (assoc attribute (cdr (assoc 'value x - (setcdr y (debbugs-convert-soap-value-to-string (cdr y + (when (stringp (cdr y)) + (setcdr y (debbugs-convert-soap-value-to-string (cdr y) ;; "package" is a string, containing comma separated ;; package names. "keywords" and "tags" are strings, ;; containing blank separated package names.
[elpa] externals/exwm 3cef44a: Exclude unmanaged floating X windows when refreshing
branch: externals/exwm commit 3cef44a6ca2093500b092f99dc588fb8bf9c184d Author: Chris Feng Commit: Chris Feng Exclude unmanaged floating X windows when refreshing * exwm-layout.el (exwm-layout--refresh): Do not show unmanaged floating X windows. --- exwm-layout.el |6 -- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/exwm-layout.el b/exwm-layout.el index 309bfb6..6825cb5 100644 --- a/exwm-layout.el +++ b/exwm-layout.el @@ -258,8 +258,10 @@ (when (eq major-mode 'exwm-mode) (let ((window (frame-first-window frame))) (with-current-buffer (window-buffer window) - (exwm--log "Refresh floating window #x%x" exwm--id) - (exwm-layout--show exwm--id window + ;; It may be a buffer waiting to be killed. + (when (exwm--id->buffer exwm--id) +(exwm--log "Refresh floating window #x%x" exwm--id) +(exwm-layout--show exwm--id window) ;; Other frames (e.g. terminal/graphical frame of emacsclient) ;; We shall bury all `exwm-mode' buffers in this case (setq windows (window-list frame 0)) ;exclude minibuffer