]> code.delx.au - gnu-emacs/commitdiff
Merge from emacs-24
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 2 Oct 2014 15:13:05 +0000 (11:13 -0400)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 2 Oct 2014 15:13:05 +0000 (11:13 -0400)
1  2 
doc/emacs/ChangeLog
lisp/ChangeLog
lisp/emacs-lisp/package.el
lisp/gnus/ChangeLog
lisp/progmodes/python.el
src/ChangeLog
src/xfaces.c
test/ChangeLog
test/automated/package-test.el

index 44e8e5871fae860440baba812acc06f100e5a325,b4d13d243254ba52a9a327b4c8547cbc305cb158..c384eeb842542f994401a016b53fc56c8eb0888f
@@@ -1,29 -1,7 +1,33 @@@
 -2014-10-01  Glenn Morris  <rgm@gnu.org>
++2014-10-02  Glenn Morris  <rgm@gnu.org>
+       * package.texi (Package Installation): Mention etc/package-keyring.gpg.
 +2014-09-29  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * emacsver.texi (EMACSVER): Bump to 20.0.50.
 +
 +2014-09-15  Daniel Colascione  <dancol@dancol.org>
 +
 +      * regs.texi (Text Registers): Update end-user documentation
 +      to reflect `insert-register' interface change.
 +
 +2014-08-07  Reuben Thomas  <rrt@sc3d.org>
 +
 +      * programs.texi (Program Modes): Don't advertise VMS DCL support
 +      any more.
 +
 +2014-08-07  Reuben Thomas  <rrt@sc3d.org>
 +
 +      Refer to MS-DOS using the same name everywhere.
 +
 +      * Makefile.in (EMACSSOURCES): ``MS-DOG'', ``MSDOG'' and ``msdog''
 +      become ``MS-DOS''; ``msdog'' in filenames becomes ``msdos''.
 +      * emacs-xtra.texi: ditto.
 +      * emacs.texi: ditto.
 +      * makefile.w32-in: ditto.
 +      * msdog-xtra.texi: ditto, and rename file.
 +      * msdog.texi: ditto, and rename file.
 +
  2014-07-21  Glenn Morris  <rgm@gnu.org>
  
        * emacs.texi (Intro): Workaround makeinfo 4 @acronym bug.  (Bug#18040)
diff --cc lisp/ChangeLog
index 0d1ec7033b0d55f843504b4daa9767db705da7ec,db08b101dc50e5355ff02e362da6696a0b02150f..aa8ce36325d793fca981c5ed17c52bb7b84b9754
 -2014-10-01  Glenn Morris  <rgm@gnu.org>
++2014-10-02  Glenn Morris  <rgm@gnu.org>
+       * emacs-lisp/package.el (package-import-keyring):
+       Create gnupg directory private.  (Bug#17625#155)
 -2014-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
++2014-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * progmodes/python.el (python-shell-completion-get-completions):
+       Use python-shell--prompt-calculated-input-regexp from the
+       process buffer (bug#18582).
+       Don't assume that `line' comes from the process buffer.
 +2014-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * frame.el: Use lexical-binding (bug#18598).
 +      (make-frame): Use t rather than nil for tty's window-system.
 +      * startup.el (command-line): Use gui-method.
 +
 +      Consolidate management/ownership of selections.
 +      * select.el (gui-get-selection-alist): New method.
 +      (gui-get-selection): Use it.  Rename from x-get-selection.
 +      (x-get-selection): Define as obsolete alias.
 +      (x-get-clipboard): Mark obsolete.
 +      (gui-get-primary-selection): New function.
 +      (x-get-selection-value): Mark obsolete.
 +      (gui-own-selection-alist, gui-disown-selection-alist)
 +      (gui-selection-owner-p-alist): New methods.
 +      (gui-set-selection): Use them.  Rename from x-set-selection.
 +      (x-set-selection): Define as obsolete alias.
 +      (gui--valid-simple-selection-p): Rename from
 +      x-valid-simple-selection-p.
 +      * w32-common-fns.el (gui-own-selection, gui-disown-selection)
 +      (gui-selection-owner-p, gui-get-selection): Define for w32.
 +      (w32-get-selection-value): Rename from x-get-selection-value.
 +      Use the new gui-last-selected-text.
 +      * term/x-win.el (x-get-selection-value): Remove.
 +      (x-clipboard-yank): Declare obsolete.
 +      (gui-own-selection, gui-disown-selection, gui-get-selection)
 +      (gui-selection-owner-p): Define for x.
 +      * term/w32-win.el (w32-win-suspend-error): Rename from
 +      x-win-suspend-error.
 +      * term/pc-win.el (w16-get-selection-value): Rename from
 +      x-get-selection-value.
 +      (w16-selection-owner-p): Rename from x-selection-owner-p.
 +      (gui-own-selection, gui-disown-selection, gui-get-selection)
 +      (gui-selection-owner-p): Define for pc.
 +      (w16--select-text): New function.
 +      * term/ns-win.el (gui-own-selection, gui-disown-selection)
 +      (gui-get-selection, gui-selection-owner-p): Define for ns.
 +      * term.el (term-mouse-paste):
 +      * mouse.el (mouse-yank-primary): Use gui-get-primary-selection.
 +
 +2014-10-02  H. Dieter Wilhelm <dieter@duenenhof-wilhelm.de>  (tiny change)
 +
 +      * calc/calc-help.el (calc-describe-thing): Quote strings
 +      which could look like regexps.
 +
 +2014-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      Consolidate x-select-text.
 +      * frame.el (gui-method, gui-method-define, gui-method-declare)
 +      (gui-call): New macros.
 +      (gui-method--name): New function.
 +      (frame-creation-function-alist): Use gui-method-declare.
 +      (make-frame): Use gui-method.
 +      * select.el (gui-select-enable-clipboard): Rename from
 +      x-select-enable-clipboard and move here.
 +      (x-select-enable-clipboard): Define as obsolete alias.
 +      (gui-last-selected-text): New var, to replace x-last-selected-text.
 +      (gui-select-text): New GUI method.
 +      (gui-select-text): New function.
 +      (x-select-text): Define as obsolete alias.
 +      * term/common-win.el (x-select-enable-clipboard, x-select-text):
 +      Move to select.el.
 +      * simple.el (interprogram-cut-function): Change default to
 +      x-select-text.
 +      (interprogram-paste-function): Change default to `ignore'.
 +      * w32-common-fns.el (interprogram-cut-function): Don't modify.
 +      * term/x-win.el (interprogram-cut-function): Don't modify.
 +      (gui-select-text): Add method for x.
 +      * term/w32-win.el (gui-select-text): Add method for w32.
 +      * term/pc-win.el (x-last-selected-text): Remove, use
 +      gui-last-selected-text instead.
 +      (msdos-initialize-window-system): Don't set interprogram-cut-function.
 +      (gui-select-text): Add method for pc.
 +      * term/ns-win.el (ns-last-selected-text): Remove, use
 +      gui-last-selected-text instead.
 +      (gui-select-text): Add method for ns.
 +      (x-setup-function-keys): Don't change interprogram-cut-function.
 +      * loadup.el ("startup"): Load after "frame".
 +      * subr.el (package--builtin-versions, package--description-file):
 +      Move from startup.el.
 +      * startup.el (package--builtin-versions, package--description-file):
 +      Move to subr.el.
 +      (handle-args-function-alist, window-system-initialization-alist):
 +      Use gui-method-declare.
 +      (command-line): Use gui-method.
 +
 +2014-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (alist-get): New accessor.
 +      * emacs-lisp/gv.el (alist-get): Provide expander.
 +      * winner.el (winner-remember):
 +      * tempo.el (tempo-use-tag-list):
 +      * progmodes/gud.el (minor-mode-map-alist):
 +      * international/mule-cmds.el (define-char-code-property):
 +      * frameset.el (frameset-filter-params):
 +      * files.el (dir-locals-set-class-variables):
 +      * register.el (get-register, set-register):
 +      * calc/calc-yank.el (calc-set-register): Use it.
 +      * ps-print.el (ps-get, ps-put, ps-del): Mark as obsolete.
 +      * tooltip.el (tooltip-set-param): Mark as obsolete.
 +      (tooltip-show): Use alist-get instead.
 +      * ses.el (ses--alist-get): Remove.  Use alist-get instead.
 +
 +2014-10-01  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * net/newst-backend.el: Remove Time-stamp.  Rename variable
 +      `newsticker--download-logos' to `newsticker-download-logos' and
 +      make it customizable.
 +      (newsticker--sentinel-work): Move xml-workarounds to function
 +      `newsticker--do-xml-workarounds', call unless libxml-parser is
 +      used.  Allow single quote in regexp for encoding.
 +      Use libxml-parser if available, else fall back to `xml-parse-region'.
 +      Take care of possibly missing namespace prefixes (like "RDF"
 +      instead of "rdf:RDF") when checking xml nodes and attributes (as
 +      libxml correctly removes the prefixes).  Always use Atom 1.0 as
 +      fallback feed type.  Rename `newsticker--download-logos' to
 +      `newsticker-download-logos'
 +      (newsticker--unxml, newsticker--unxml-node)
 +      (newsticker--unxml-attribute): New.
 +      (newsticker--parse-atom-1.0): Call `unxml' in case that embedded
 +      HTML code has become part of the xml parse tree.
 +      (newsticker--parse-rss-1.0, newsticker--parse-rss-2.0): Take care
 +      of possibly missing namespace prefixes.
 +      (newsticker--parse-generic-items): Code formatting. Typo.
 +      (newsticker--images-dir): Add trailing slash.
 +      (newsticker--image-get): Fix error message.
 +
 +      * net/newst-plainview.el: Remove Time-stamp.
 +
 +      * net/newst-reader.el: Remove Time-stamp.
 +      (newsticker-download-logos): Rename variable
 +      `newsticker--download-logos' to `newsticker-download-logos' and
 +      make it customizable.
 +      (newsticker--print-extra-elements): Add optional parameter
 +      'htmlish for using html markup.  Amend list of ignored elements.
 +      (newsticker--do-print-extra-element): Add parameter 'htmlish for
 +      using html markup.
 +
 +      * net/newst-ticker.el: Remove Time-stamp.
 +
 +      * net/newst-treeview.el (newsticker--treeview-item-show): Use html
 +      for formatting extra elements.
 +
 +      * net/newsticker.el:  Remove Time-stamp, Version.
 +      (newsticker-version): Make obsolete.
 +
  2014-09-30  Leonardo Nobrega  <leonobr@gmail.com>  (tiny change)
  
        * progmodes/python.el (python-fill-paren): Don't inf-loop at EOB
index 4832673b95cd8fa19d070685b06c8bd663eb82a5,823ba365e62e0124edbe9f1a7badc3ca2cffd1da..10944f8153480f18610470221a1c98aae0bb660e
@@@ -289,6 -289,6 +289,8 @@@ contrast, `package-user-dir' contains p
    :group 'package
    :version "24.1")
  
++(defvar epg-gpg-program)
++
  (defcustom package-check-signature
    (if (progn (require 'epg-config) (executable-find epg-gpg-program))
        'allow-unsigned)
@@@ -1299,7 -1298,13 +1301,8 @@@ similar to an entry in `package-alist'
    (setq file (expand-file-name file))
    (let ((context (epg-make-context 'OpenPGP))
        (homedir (expand-file-name "gnupg" package-user-dir)))
-     (make-directory homedir t)
 -    ;; FIXME Use `with-file-modes' when merged to trunk.
 -    (let ((umask (default-file-modes)))
 -      (unwind-protect
 -          (progn
 -            (set-default-file-modes 448)
 -            (make-directory homedir t))
 -        (set-default-file-modes umask)))
++    (with-file-modes 448
++      (make-directory homedir t))
      (epg-context-set-home-directory context homedir)
      (message "Importing %s..." (file-name-nondirectory file))
      (epg-import-keys-from-file context file)
index 7e6137226b5de1e73616f78a4e11496d0f083afc,228cd104783878c4326d982fc6df5e26b7bfcba7..be60d7777c4bc1484a43419913cff82dfbfa3492
@@@ -1,3 -1,3 +1,8 @@@
++2014-10-02  Daiki Ueno  <ueno@gnu.org>
++
++      * mml.el (mml-parse-1): Error out if unknown mode is specified in
++      <#secure> tag (bug#18513).
++
  2014-09-29  Daiki Ueno  <ueno@gnu.org>
  
        * mml.el (mml-parse-1): Error out if unknown mode is specified in
index 6c11a4789424f2549f56563cbfe0dddcb982449b,aa9d9b10dbc88aee4d30b0b07345d9818711420e..f6e1021c86a83eef5faeba1a3fcb70b9ae8cdfc0
@@@ -2878,41 -2678,47 +2878,40 @@@ the full statement in the case of impor
    "24.4"
    "Completion string code must also autocomplete modules.")
  
 -(defcustom python-shell-completion-pdb-string-code
 -  "';'.join(globals().keys() + locals().keys())"
 -  "Python code used to get completions separated by semicolons for [i]pdb."
 -  :type 'string
 -  :group 'python)
 +(define-obsolete-variable-alias
 +  'python-shell-completion-pdb-string-code
 +  'python-shell-completion-string-code
 +  "25.1"
 +  "Completion string code must work for (i)pdb.")
  
 -(defun python-shell-completion-get-completions (process line input)
 -  "Do completion at point for PROCESS.
 -LINE is used to detect the context on how to complete given INPUT."
 +(defun python-shell-completion-get-completions (process import input)
 +  "Do completion at point using PROCESS for IMPORT or INPUT.
 +When IMPORT is non-nil takes precedence over INPUT for
 +completion."
-   (let* ((prompt
-           (with-current-buffer (process-buffer process)
+   (with-current-buffer (process-buffer process)
+     (let* ((prompt
 -            ;; Get last prompt of the inferior process buffer (this
 -            ;; intentionally avoids using `comint-last-prompt' because
 -            ;; of incompatibilities with Emacs 24.x).
 -            (save-excursion
 +            (let ((prompt-boundaries (python-util-comint-last-prompt)))
                (buffer-substring-no-properties
-                (car prompt-boundaries) (cdr prompt-boundaries)))))
-          (completion-code
-           ;; Check whether a prompt matches a pdb string, an import
-           ;; statement or just the standard prompt and use the
-           ;; correct python-shell-completion-*-code string
-           (cond ((and (string-match
-                        (concat "^" python-shell-prompt-pdb-regexp) prompt))
-                  ;; Since there are no guarantees the user will remain
-                  ;; in the same context where completion code was sent
-                  ;; (e.g. user steps into a function), safeguard
-                  ;; resending completion setup continuously.
-                  (concat python-shell-completion-setup-code
-                          "\nprint (" python-shell-completion-string-code ")"))
-                 ((string-match
-                   python-shell--prompt-calculated-input-regexp prompt)
-                  python-shell-completion-string-code)
-                 (t nil)))
-          (subject (or import input)))
-     (and completion-code
-          (> (length input) 0)
-          (with-current-buffer (process-buffer process)
 -               (line-beginning-position) ;End of prompt.
 -               (progn
 -                 (re-search-backward "^")
 -                 (python-util-forward-comment) ;FIXME: Why?
 -                 (point)))))
++               (car prompt-boundaries) (cdr prompt-boundaries))))
+            (completion-code
+             ;; Check whether a prompt matches a pdb string, an import
+             ;; statement or just the standard prompt and use the
+             ;; correct python-shell-completion-*-code string
 -            (cond ((and (> (length python-shell-completion-pdb-string-code) 0)
 -                        (string-match
++            (cond ((and (string-match
+                          (concat "^" python-shell-prompt-pdb-regexp) prompt))
 -                   python-shell-completion-pdb-string-code)
++                   ;; Since there are no guarantees the user will remain
++                   ;; in the same context where completion code was sent
++                   ;; (e.g. user steps into a function), safeguard
++                   ;; resending completion setup continuously.
++                   (concat python-shell-completion-setup-code
++                           "\nprint (" python-shell-completion-string-code ")"))
+                   ((string-match
+                     python-shell--prompt-calculated-input-regexp prompt)
+                    python-shell-completion-string-code)
+                   (t nil)))
 -           (input
 -            (if (string-match
 -                 (python-rx (+ space) (or "from" "import") space)
 -                 line)
 -                line
 -              input)))
++           (subject (or import input)))
+       (and completion-code
+            (> (length input) 0)
             (let ((completions
                    (python-util-strip-string
                     (python-shell-send-string-no-output
diff --cc src/ChangeLog
index 2a4ce099021454303129531d01fa16b02bf21cff,808a8f94c7408f325e9c7282eb716d76688f5887..eb578278bea071d888824dc120b46d5248537719
@@@ -1,50 -1,8 +1,56 @@@
 -2014-10-01  Jan Djärv  <jan.h.d@swipnet.se>
++2014-10-02  Jan Djärv  <jan.h.d@swipnet.se>
+       * xfaces.c (Finternal_set_lisp_face_attribute): Don't try to
+       make a font_object from a tty frame (Bug#18573).
 -      (Finternal_set_lisp_face_attribute): Added FIXME comment.
++      (Finternal_set_lisp_face_attribute): Add FIXME comment.
++
 +2014-10-02  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * alloc.c (mark_overlay): Assume that overlay boundaries are
 +      always markers.  Add comment.
 +      * lread.c (read_internal_start): Use convenient validate_subarray.
 +      Adjust docstring.
 +      (Fread_from_string): Adjust docstring.
 +
 +2014-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * lisp.h: Fix up compilation for USE_STACK_LISP_OBJECTS=false.
 +
 +      * nsselect.m (ns-own-selection-internal, ns-disown-selection-internal):
 +      Rename from the "x-" prefix.
 +
 +2014-10-01  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * xselect.c (selection-converter-alist): Fix docstring.
 +
 +2014-10-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * w32proc.c (sys_spawnve): Avoid modification of the CMDNAME
 +      argument passed by the caller, when we mirror all slashes into
 +      backslashes.
 +
 +2014-10-01  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * gtkutil.c (xg_set_toolkit_horizontal_scroll_bar_thumb):
 +      Resurrect old code and fix compilation with GTK < 2.13.6.
 +
 +2014-10-01  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Use AUTO_CONS instead of SCOPED_CONS, etc.
 +      * frame.h (AUTO_FRAME_ARG): Rename from FRAME_PARAMETER.
 +      * lisp.h (AUTO_CONS): Rename from scoped_cons.
 +      (AUTO_LIST1): Rename from scoped_list1.
 +      (AUTO_LIST2): Rename from scoped_list2.
 +      (AUTO_LIST3): Rename from scoped_list3.
 +      (AUTO_LIST4): Rename from scoped_list4.
 +      (AUTO_STRING): Rename from SCOPED_STRING.
 +      * frame.h (AUTO_FRAME_ARG):
 +      * lisp.h (AUTO_CONS, AUTO_LIST1, AUTO_LIST2, AUTO_LIST3)
 +      (AUTO_LIST4, AUTO_STRING):
 +      Prepend a new argument 'name'.
 +      Declare a variable instead of yielding a value.
 +      All uses changed.
 +      * lisp.h (STACK_CONS, AUTO_CONS_EXPR): New internal macros.
  
  2014-09-30  Eli Zaretskii  <eliz@gnu.org>
  
        * macfont.m (macfont_close): Release and free font-specific data
        only if it wasn't previously freed.
  
- 2014-09-22  David Caldwell <david@porkrind.org> (tiny change)
 -2014-09-21  David Caldwell <david@porkrind.org>  (tiny change)
++2014-09-22  David Caldwell <david@porkrind.org>  (tiny change)
  
        * unexmacosx.c (dump_it): Improve error message.
  
diff --cc src/xfaces.c
index 73704bbba8eb1f0b2aa4606842b48204e2e0a97e,9579bcce5727ad6f82e49f409a860300716c639a..6afa0a2953d9bc39790c922965b700fe2f71c59b
@@@ -3112,17 -3119,27 +3112,26 @@@ FRAME 0 means change the face on all fr
                f = XFRAME (selected_frame);
              else
                f = XFRAME (frame);
-             if (! FONT_OBJECT_P (value))
-               {
-                 Lisp_Object *attrs = XVECTOR (lface)->contents;
-                 Lisp_Object font_object;
  
-                 font_object = font_load_for_lface (f, attrs, value);
-                 if (NILP (font_object))
-                   signal_error ("Font not available", value);
-                 value = font_object;
-               }
-             set_lface_from_font (f, lface, value, 1);
+               /* FIXME:
+                  If frame is t, and selected frame is a tty frame, the font
 -                 can't be realized.  An improvement wuld be to loop over frames
++                 can't be realized.  An improvement would be to loop over frames
+                  for a non-tty frame and use that.  See discussion in
 -                 bug#18573.
 -              */
++                 bug#18573.  */
+               if (f->terminal->type != output_termcap)
+                 {
+                   if (! FONT_OBJECT_P (value))
+                     {
+                       Lisp_Object *attrs = XVECTOR (lface)->contents;
+                       Lisp_Object font_object;
+                       font_object = font_load_for_lface (f, attrs, value);
+                       if (NILP (font_object))
+                         signal_error ("Font not available", value);
+                       value = font_object;
+                     }
+                   set_lface_from_font (f, lface, value, 1);
+                 }
            }
          else
            ASET (lface, LFACE_FONT_INDEX, value);
diff --cc test/ChangeLog
index 041ed7c175451681cb6196d0f86a8426266a5772,264173fa557d62fffe8c765c7c2d8f271f8eb651..fb3bd746a73d0d0509eaddb4dd04f19bb38bcf8c
@@@ -1,41 -1,16 +1,48 @@@
 -2014-10-01  Glenn Morris  <rgm@gnu.org>
++2014-10-02  Glenn Morris  <rgm@gnu.org>
+       * automated/package-test.el (with-package-test, package-test-signed):
+       Also set HOME to a temp value, in case the real one is absent (e.g.
+       hydra) or read-only.  (Bug#18575)
+       (package-test-signed): Use skip-unless rather than expected-result.
 -2014-09-01  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +2014-09-26  Leo Liu  <sdl.web@gmail.com>
  
 -      * automated/python-tests.el:
 -      (python-indent-electric-colon-1): New test.  (Bug#18228)
 +      * automated/cl-lib.el (cl-digit-char-p, cl-parse-integer): New
 +      tests.  (Bug#18557)
 +
 +2014-09-24  Ulf Jasper  <ulf.jasper@web.de>
 +
 +      * automated/newsticker-tests.el
 +      (newsticker--group-find-parent-group),
 +      (newsticker--group-do-rename-group): New tests.
 +
 +2014-09-09  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * automated/fns-tests.el (fns-tests-collate-sort): Bind
 +      w32-collate-ignore-punctuation to t when sorting according to
 +      UTS#10 rules.
 +
 +2014-09-07  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * automated/fns-tests.el (fns-tests--collate-enabled-p): New function.
 +      (fns-tests-collate-strings, fns-tests-collate-sort): Use it.
 +
 +2014-09-05  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * automated/fns-tests.el (fns-tests-compare-strings): In case
 +      `compare-strings' shall return t, check for this.
 +      (fns-tests-collate-strings, fns-tests-collate-sort): New tests.
  
 -2014-08-18  Glenn Morris  <rgm@gnu.org>
 +2014-09-03  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-indent-electric-colon-1):
 +      New test.  (Bug#18228)
 +
 +2014-08-29  Dmitry Antipov  <dmantipov@yandex.ru>
 +
 +      * automated/fns-tests.el (fns-tests-sort): New test.
 +
 +2014-08-28  Glenn Morris  <rgm@gnu.org>
  
        * automated/python-tests.el (python-shell-calculate-exec-path-2):
        Update test for today's python.el changes.
Simple merge