]> code.delx.au - gnu-emacs/commitdiff
Shrink EIEIO object header. Move generics to eieio-generic.el.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 8 Jan 2015 21:03:04 +0000 (16:03 -0500)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 8 Jan 2015 21:03:04 +0000 (16:03 -0500)
13 files changed:
1  2 
etc/NEWS
lisp/ChangeLog
lisp/cedet/ChangeLog
lisp/cedet/ede/project-am.el
lisp/emacs-lisp/chart.el
lisp/emacs-lisp/eieio-custom.el
lisp/emacs-lisp/eieio-speedbar.el
lisp/emacs-lisp/eieio.el
lisp/gnus/ChangeLog
test/ChangeLog
test/automated/eieio-test-methodinvoke.el
test/automated/eieio-test-persist.el
test/automated/eieio-tests.el

diff --cc etc/NEWS
index f22309e2fac0b5894edbab79634c3adc394399ee,0f20be86b9b6bbb6e0ad1effac028bdd7da4a0c9..1f503ceab82868beef54080786168ff62884aae8
+++ b/etc/NEWS
@@@ -185,15 -187,11 +185,20 @@@ Unicode standards
  
  \f
  * Changes in Specialized Modes and Packages in Emacs 25.1
 +** Shell
 +
 +When you invoke `shell' interactively, the *shell* buffer will now
 +display in a new window.  However, you can customize this behavior via
 +the `display-buffer-alist' variable.  For example, to get
 +the old behavior -- *shell* buffer displays in current window -- use
 +(add-to-list 'display-buffer-alist
 +     '("^\\*shell\\*$" . (display-buffer-same-window))).
 +
+ ** EIEIO
+ *** The <class>-list-p and <class>-child-p functions are declared obsolete.
+ *** The <class> variables are declared obsolete.
+ *** The <initarg> variables are declared obsolete.
  ** ido
  *** New command `ido-bury-buffer-at-head' bound to C-S-b
  Bury the buffer at the head of `ido-matches', analogous to how C-k
diff --cc lisp/ChangeLog
index 4077e351ba8f9dbf8dc56dddef2eaf0df81e459d,6d7bfae31ce44e89aaa7d9382d61b86d1c7c89d3..bca8d28b1a5d1294709c3e4d52be916d3287d796
 -2015-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
+ 2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio.el (defclass): Move from eieio-defclass all the code
+       that creates functions, and most of the sanity checks.
+       Mark as obsolete the <class>-child-p function.
+       * emacs-lisp/eieio-core.el (eieio--define-field-accessors): Remove.
+       (eieio--class, eieio--object): Use cl-defstruct.
+       (eieio--object-num-slots): Define manually.
+       (eieio-defclass-autoload): Use eieio--class-make.
+       (eieio-defclass-internal): Rename from eieio-defclass.  Move all the
+       `(lambda...) definitions and most of the sanity checks to `defclass'.
+       Mark as obsolete the <class>-list-p function, the <class> variable and
+       the <initarg> variables.  Use pcase-dolist.
+       (eieio-defclass): New compatibility function.
+       * emacs-lisp/eieio-opt.el (eieio-build-class-alist)
+       (eieio-class-speedbar): Don't use eieio-default-superclass var.
+ 2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio-generic.el: New file.
+       * emacs-lisp/eieio-core.el: Move all generic function code to
+       eieio-generic.el.
+       (eieio--defmethod): Declare.
+       * emacs-lisp/eieio.el: Require eieio-generic.  Move all generic
+       function code to eieio-generic.el.
+       * emacs-lisp/eieio-opt.el (eieio-help-generic): Move to
+       eieio-generic.el.
+       * emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke): Update call
+       to eieio--generic-call.
+       * emacs-lisp/eieio-base.el (eieio-instance-inheritor): Don't use
+       <class>-child type.
 -2015-01-05  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/chart.el (chart-add-sequence, chart-bar-quickie):
+       Don't use <class> as a variable.
+       * emacs-lisp/eieio.el (same-class-p): Accept class object as well.
+       (call-next-method): Simplify.
+       (clone): Obey eieio-backward-compatibility.
+       * emacs-lisp/eieio-opt.el (eieio-read-generic-p): Remove.
+       (eieio-read-generic): Use `generic-p' instead.
+       * emacs-lisp/eieio-core.el (eieio-backward-compatibility): New var.
+       (eieio-defclass-autoload): Obey it.
+       (eieio--class-object): Improve error behavior.
+       (eieio-class-children-fast, same-class-fast-p): Remove.  Inline at
+       every use site.
+       (eieio--defgeneric-form-primary-only): Rename from
+       eieio-defgeneric-form-primary-only; update all callers.
+       (eieio--defgeneric-form-primary-only-one): Rename from
+       eieio-defgeneric-form-primary-only-one; update all callers.
+       (eieio-defgeneric-reset-generic-form)
+       (eieio-defgeneric-reset-generic-form-primary-only)
+       (eieio-defgeneric-reset-generic-form-primary-only-one): Remove.
+       (eieio--method-optimize-primary): New function to replace them.
+       (eieio--defmethod, eieio-defmethod): Use it.
+       (eieio--perform-slot-validation): Rename from
+       eieio-perform-slot-validation; update all callers.
+       (eieio--validate-slot-value): Rename from eieio-validate-slot-value.
+       Change `class' to be a class object.  Update all callers.
+       (eieio--validate-class-slot-value): Rename from
+       eieio-validate-class-slot-value.  Change `class' to be a class object.
+       Update all callers.
+       (eieio-oset-default): Accept class object as well.
+       (eieio--generic-call-primary-only): Rename from
+       eieio-generic-call-primary-only.  Update all callers.
+       * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+       Improve error messages.
+       (eieio-persistent-slot-type-is-class-p): Handle `list-of' types, as
+       well as user-defined types.  Emit errors for legacy types like
+       <class>-child and <class>-list, if not eieio-backward-compatibility.
 -2014-12-29  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio.el (eieio-class-parents): Accept class objects.
+       (eieio--class-slot-initarg): Rename from class-slot-initarg.
+       Change `class' arg to be a class object.  Update all callers.
+       (call-next-method): Adjust to new return value of `eieio-generic-form'.
+       (eieio-default-superclass): Set var to the class object.
+       (eieio-edebug-prin1-to-string): Fix recursive call for lists.
+       Change print behavior to affect class objects rather than
+       class symbols.
+       * emacs-lisp/eieio-core.el (eieio-class-object): New function.
+       (eieio-class-parents-fast): Remove macro.
+       (eieio--class-option-assoc): Rename from class-option-assoc.
+       Update all callers.
+       (eieio--class-option): Rename from class-option.  Change `class' arg to
+       be a class object.  Update all callers.
+       (eieio--class-method-invocation-order): Rename from
+       class-method-invocation-order.  Change `class' arg to be a class
+       object.  Update all callers.
+       (eieio-defclass-autoload, eieio-defclass): Set the `parent' field to
+       a list of class objects rather than names.
+       (eieio-defclass): Remove redundant quotes.  Use `eieio-oref-default'
+       for accessors to class allocated slots.
+       (eieio--perform-slot-validation-for-default): Rename from
+       eieio-perform-slot-validation-for-default.  Update all callers.
+       (eieio--add-new-slot): Rename from eieio-add-new-slot.
+       Update all callers.  Use push.
+       (eieio-copy-parents-into-subclass): Adjust to new content of
+       `parent' field.  Use dolist.
+       (eieio-oref): Remove support for providing a class rather than
+       an object.
+       (eieio-oref-default): Prefer class objects over class names.
+       (eieio--slot-originating-class-p): Rename from
+       eieio-slot-originating-class-p.  Update all callers.  Use `or'.
+       (eieio--slot-name-index): Turn check into assertion.
+       (eieio--class-slot-name-index): Rename from
+       eieio-class-slot-name-index.  Change `class' arg to be a class object.
+       Update all callers.
+       (eieio-attribute-to-initarg): Move to eieio-test-persist.el.
+       (eieio--c3-candidate): Rename from eieio-c3-candidate.
+       Update all callers.
+       (eieio--c3-merge-lists): Rename from eieio-c3-merge-lists.
+       Update all callers.
+       (eieio--class-precedence-c3): Rename from eieio-class-precedence-c3.
+       Update all callers.
+       (eieio--class-precedence-dfs): Rename from eieio-class-precedence-dfs.
+       Update all callers.
+       (eieio--class-precedence-bfs): Rename from eieio-class-precedence-bfs.
+       Update all callers.  Adjust to new `parent' content.
+       (eieio--class-precedence-list): Rename from -class-precedence-list.
+       Update all callers.
+       (eieio-generic-call): Use autoloadp and autoload-do-load.
+       Slight simplification.
+       (eieio-generic-call, eieio-generic-call-primary-only): Adjust to new
+       return value of `eieio-generic-form'.
+       (eieiomt-add): Index the hashtable with class objects rather than
+       class names.
+       (eieio-generic-form): Accept class objects as well.
+       * emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
+       Adjust to new convention for eieio-persistent-validate/fix-slot-value.
+       (eieio-persistent-validate/fix-slot-value):
+       Change `class' arg to be a class object.  Update all callers.
 -2014-12-23  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio.el (child-of-class-p): Make it accept class objects
+       additionally to class names.
+       * emacs-lisp/eieio-core.el (eieio--with-scoped-class): Use let-binding.
+       (object): Remove first (constant) slot; rename second to `class-tag'.
+       (eieio--object-class-object, eieio--object-class-name): New funs
+       to replace eieio--object-class.
+       (eieio--class-object, eieio--class-p): New functions.
+       (same-class-fast-p): Make it a defsubst, change its implementation
+       to check the class objects rather than their names.
+       (eieio-object-p): Rewrite.
+       (eieio-defclass): Adjust the object initialization according to the new
+       object layout.
+       (eieio--scoped-class): Declare it returns a class object (not a class
+       name any more).  Adjust calls accordingly (along with calls to
+       eieio--with-scoped-class).
+       (eieio--slot-name-index): Rename from eieio-slot-name-index and change
+       its class arg to be a class object.  Adjust callers accordingly.
+       (eieio-slot-originating-class-p): Make its start-class arg a class
+       object.  Adjust all callers.
+       (eieio--initarg-to-attribute): Rename from eieio-initarg-to-attribute.
+       Make its `class' arg a class object.  Adjust all callers.
+       * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+       Use eieio--slot-name-index rather than eieio-slot-name-index.
 -2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio.el (make-instance): Simplify by not adding an object
+       name argument.
+       (eieio-object-name): Use eieio-object-name-string.
+       (eieio--object-names): New const.
+       (eieio-object-name-string, eieio-object-set-name-string): Re-implement
+       using a hashtable rather than a built-in slot.
+       (eieio-constructor): Rename from `constructor'.  Remove `newname' arg.
+       (clone): Don't mess with the object's "name".
+       * emacs-lisp/eieio-custom.el (eieio-widget-test): Remove dummy arg.
+       (eieio-object-value-get): Use eieio-object-set-name-string.
+       * emacs-lisp/eieio-core.el (eieio--defalias): Follow aliases.
+       (eieio--object): Remove `name' field.
+       (eieio-defclass): Adjust to new convention where constructors don't
+       take an "object name" any more.
+       (eieio--defgeneric-init-form, eieio--defmethod): Follow aliases.
+       (eieio-validate-slot-value, eieio-oset-default)
+       (eieio-slot-name-index): Don't hardcode eieio--object-num-slots.
+       (eieio-generic-call-primary-only): Simplify.
+       * emacs-lisp/eieio-base.el (clone) <eieio-instance-inheritor>:
+       Use call-next-method.
+       (eieio-constructor): Rename from `constructor'.
+       (eieio-persistent-convert-list-to-object): Drop objname.
+       (eieio-persistent-validate/fix-slot-value): Don't hardcode
+       eieio--object-num-slots.
+       (eieio-named): Use a normal slot.
+       (slot-missing) <eieio-named>: Remove.
+       (eieio-object-name-string, eieio-object-set-name-string, clone)
+       <eieio-named>: New methods.
 -2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio-core.el (eieio--class-v): Rename from class-v.
+       (method-*): Add a "eieio--" prefix to those constants.
+       * emacs-lisp/eieio.el: Move edebug specs to the corresponding macro.
+       * emacs-lisp/eieio-speedbar.el: Use lexical-binding.
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is
+       `eieio-default-superclass'.
+       * emacs-lisp/eieio-datadebug.el: Use lexical-binding.
+       * emacs-lisp/eieio-custom.el: Use lexical-binding.
+       (eieio-object-value-to-abstract): Simplify.
+       * emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan.
+       (eieio-build-class-alist): Use dolist.
+       (eieio-all-generic-functions): Adjust to use of hashtables.
+       * emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to
+       symbol-hashtable.  It contains a hashtable instead of an obarray.
+       (generic-p): Use symbol property `eieio-method-hashtable' instead of
+       `eieio-method-obarray'.
+       (generic-primary-only-p, generic-primary-only-one-p):
+       Slight optimization.
+       (eieio-defclass-autoload-map): Use a hashtable instead of an obarray.
+       (eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly.
+       (eieio-class-un-autoload): Use autoload-do-load.
+       (eieio-defclass): Use dolist, cl-pushnew, cl-callf.
+       Use new cl-deftype-satisfies.  Adjust to use of hashtables.
+       Don't hardcode the value of eieio--object-num-slots.
+       (eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg.
+       Use a closure rather than a backquoted lambda.
+       (eieio--defmethod): Adjust call accordingly.  Set doc-string via the
+       function-documentation property.
+       (eieio-slot-originating-class-p, eieio-slot-name-index)
+       (eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add)
+       (eieio-generic-form): Adjust to use of hashtables.
+       (eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take
+       additional class argument.
+       (eieio-generic-call-methodname): Remove, unused.
+       * emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
+       Prefer \' to $.
 +2015-01-08  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * simple.el (line-move-visual): When converting X pixel coordinate
 +      to temporary-goal-column, adjust the value for right-to-left
 +      screen lines.  This fixes vertical-motion, next/prev-line, etc.
 +
 +2015-01-08  Glenn Morris  <rgm@gnu.org>
 +
 +      * files.el (file-tree-walk): Remove; of unknown authorship.  (Bug#19325)
 +
 +2015-01-07  K. Handa  <handa@gnu.org>
 +
 +      * international/ccl.el (define-ccl-program): Improve the docstring.
 +
 +2015-01-06  Sam Steingold  <sds@gnu.org>
 +
 +      * shell.el (shell-display-buffer-actions): Remove,
 +      use `display-buffer-alist' instead.
 +
 +2015-01-05  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/xref.el (xref--insert-xrefs): Add `help-echo' property
 +      to the references.
 +
 +2015-01-05  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * minibuffer.el (completion-category-defaults): New var.
 +      Set unicode-name to use substring completion.
 +      (completion-category-defaults): Set it to nil.
 +
 +2015-01-04  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      Add mouse interaction to xref.
 +      * progmodes/xref.el (xref--button-map): New variable.
 +      (xref--mouse-2): New command.
 +      (xref--insert-xrefs): Add `mouse-face' and `keymap' properties to
 +      the inserted references.
 +
 +2015-01-04  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Less 'make' chatter for lisp dir
 +      * Makefile.in (THEFILE): Define to be 'no-such-file' by default,
 +      to make it clearer that the caller must specify it.
 +      (compile-onefile): Remove, replacing by ...
 +      ($(THEFILE)c): ... new rule.  This lets us use AM_V_GEN here.
 +      ($(THEFILE)c, .el.elc, $(MH_E_DIR)/mh-loaddefs.el)
 +      ($(TRAMP_DIR)/tramp-loaddefs.el, $(CAL_DIR)/cal-loaddefs.el)
 +      ($(CAL_DIR)/diary-loaddefs.el, $(CAL_DIR)/hol-loaddefs.el):
 +      Use AM_V_GEN to lessen 'make' chatter.
 +      (.el.elc): Omit duplicate comment.
 +
 +      Less 'make' chatter in batch mode
 +      * emacs-lisp/autoload.el (autoload-generate-file-autoloads):
 +      * emacs-lisp/bytecomp.el (byte-compile-file):
 +      * files.el (save-buffer, basic-save-buffer):
 +      * international/quail.el (quail-update-leim-list-file):
 +      Don't output messages like "Generating ..." in batch mode.
 +
 +2015-01-04  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      Unbreak `mouse-action' property in text buttons.
 +      * button.el (push-button): Fix regression from 2012-12-06.
 +
 +2015-01-03  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/xref.el (xref-marker-stack-empty-p): New function.
 +
 +      * menu-bar.el (menu-bar-goto-menu): Use it.
 +
 +2015-01-03  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/xref.el (xref--window-configuration): New variable.
 +      (xref-show-location-at-point): New command.
 +      (xref--restore-window-configuration): New function.
 +      (xref-next-line, xref-prev-line): Delegate to
 +      `xref-show-location-at-point'.
 +      (xref--location-at-point): Don't signal the error.
 +      (xref-goto-xref): Do that here instead.
 +      (xref--xref-buffer-mode): Add `xref--restore-window-configuration'
 +      to `pre-command-hook'.
 +      (xref--xref-buffer-mode-map): Don't remap `next-line' and
 +      `previous-line'.  Additionally bind `xref-next-line' and
 +      `xref-prev-line' to `n' and `p' respectively.  Bind
 +      `xref-show-location-at-point' to `C-o'.
 +
 +2015-01-01  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * tool-bar.el (tool-bar-local-item)
 +      (tool-bar-local-item-from-menu): Call force-mode-line-update to
 +      make sure the tool-bar changes show on display.
 +
 +2015-01-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.2.11.
 +
 +      * net/tramp-compat.el (top): Require cl-macs for Emacs 22.
 +      Make an alias for `default-toplevel-value' if it doesn't exist.
 +
 +      * net/tramp-smb.el (tramp-smb-handle-copy-directory):
 +      Use `tramp-compat-delete-directory'.
 +
 +      * net/trampver.el: Update release number.
 +
 +2015-01-01  Filipp Gunbin  <fgunbin@fastmail.fm>
 +
 +      * autorevert.el (auto-revert-handler): Fix auto-revert-tail-mode
 +      for remote files.  (Bug#19449)
 +
 +2015-01-01  Simen Heggestøyl  <simenheg@gmail.com>  (tiny change)
 +
 +      * textmodes/css-mode.el (scss-mode): Fix typo (bug#19446).
 +
 +2014-12-31  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      Less 'make' chatter in lisp directory
 +      * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
 +      (am__v_GEN_0, am__v_GEN_1): New macros, from ../src/Makefile.in.
 +      (custom-deps, finder-data, autoloads, update-subdirs): Use them.
 +
 +2014-12-31  Filipp Gunbin  <fgunbin@fastmail.fm>
 +
 +      * info.el (info-display-manual): Limit the completion alternatives
 +      to currently visited manuals if prefix argument is non-nil.
 +
 +2014-12-30  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * Makefile.in (semantic): Simplify.
 +
 +2014-12-30  Juri Linkov  <juri@linkov.net>
 +
 +      * net/eww.el (eww-isearch-next-buffer): New function.
 +      (eww-mode): Set multi-isearch-next-buffer-function to it.
 +
 +2014-12-30  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/xref.el (xref-find-definitions): Mention "no
 +      identifier at point" case in the docstring.
 +
 +      * menu-bar.el (menu-bar-goto-uses-etags-p): New function.
 +      (menu-bar-goto-menu): Use it to show or hide the `set-tags-name'
 +      and `separator-tag-file' items.
 +
 +2014-12-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * obsolete/pc-select.el (pc-selection-mode): Use system-type.
 +      This is instead of system-name, which is both wrong here and obsolete.
 +      * desktop.el (desktop-save-frameset):
 +      * dnd.el (dnd-get-local-file-uri):
 +      * nxml/rng-uri.el (rng-uri-file-name-1):
 +      Prefer (system-name) to system-name, and avoid naming
 +      locals 'system-name'.
 +      * startup.el (system-name): Now an obsolete variable.  (Bug#19438)
 +
 +2014-12-29  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * menu-bar.el (menu-bar-next-tag-other-window)
 +      (menu-bar-next-tag): Remove.
 +
 +2014-12-29  K. Handa  <handa@gnu.org>
 +
 +      * international/mule.el (make-translation-table-from-alist):
 +      Accept nil or zero-length vector for FROM and TO.
 +
 +2014-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * net/eww.el (eww-mode): Truncate overlong lines for prettier
 +      display when resizing.
 +
 +      * net/shr.el (shr-width): Default to using the window width when
 +      rendering.
 +
 +2014-12-29  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      Unbreak jumping to an alias's definition.
 +      * emacs-lisp/find-func.el (find-function-library): Return a pair
 +      (ORIG-FUNCTION . LIBRARY) instead of just its second element.
 +      (find-function-noselect): Use it.
 +      * progmodes/elisp-mode.el (elisp--xref-identifier-file): Rename to
 +      `elisp--xref-identifier-location', incorporate logic from
 +      `elisp--xref-find-definitions', use the changed
 +      `find-function-library' return value.
 +
 +2014-12-29  Juri Linkov  <juri@linkov.net>
 +
 +      * comint.el (comint-history-isearch-message): Use field-beginning
 +      instead of comint-line-beginning-position - that's more fixes for
 +      http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
 +      (comint-history-isearch-message): Fix args of isearch-message-prefix.
 +
 +2014-12-29  Juri Linkov  <juri@linkov.net>
 +
 +      * vc/vc-dir.el (vc-dir-display-file): New command (bug#19450).
 +      (vc-dir-mode-map): Bind it to "\C-o".
 +      (vc-dir-menu-map): Add it to menu.
 +
 +2014-12-29  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/etags.el (find-tag-other-window)
 +      (find-tag-other-frame, find-tag-regexp, tags-loop-continue)
 +      (tags-apropos): Declare obsolete.
 +
 +      * menu-bar.el (menu-bar-goto-menu): Replace all but one etags item
 +      with xref ones.
 +
 +2014-12-28  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * international/mule.el (define-coding-system): Fix typos in the
 +      doc string.
 +
 +2014-12-28  Kenichi Handa  <handa@gnu.org>
 +
 +      * international/mule.el (define-coding-system): Improve the doc
 +      string.
 +
 +2014-12-28  Ivan Shmakov  <ivan@siamics.net>
 +
 +      * net/shr.el (shr-tag-table): Fix handling of tbody/header/footer
 +      elements in tables (bug#19444).
 +
 +      * net/eww.el (eww-handle-link): Fix typo in "up" rel handling
 +      (bug#19445).
 +
 +2014-12-28  Juri Linkov  <juri@linkov.net>
 +
 +      * vc/compare-w.el: Require diff-mode for diff faces.
 +      (compare-windows-removed, compare-windows-added): New faces
 +      inheriting from diff faces.
 +      (compare-windows): Define obsolete face alias.
 +      (compare-windows-highlight): Replace face `compare-windows' with
 +      new faces `compare-windows-added' and `compare-windows-removed'
 +      (bug#19451).
 +      (compare-windows-get-recent-window): Signal an error when
 +      no other window is found (bug#19170).
 +
 +2014-12-27  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * progmodes/elisp-mode.el (elisp--xref-identifier-file):
 +      Skip features that have no sources.
 +
 +      * simple.el (execute-extended-command):
 +      When `suggest-key-bindings' is nil, don't.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      python.el: Native readline completion.
 +      * progmodes/python.el (python-shell-completion-native-disabled-interpreters)
 +      (python-shell-completion-native-enable)
 +      (python-shell-completion-native-output-timeout): New defcustoms.
 +      (python-shell-completion-native-interpreter-disabled-p)
 +      (python-shell-completion-native-try)
 +      (python-shell-completion-native-setup)
 +      (python-shell-completion-native-turn-off)
 +      (python-shell-completion-native-turn-on)
 +      (python-shell-completion-native-turn-on-maybe)
 +      (python-shell-completion-native-turn-on-maybe-with-msg)
 +      (python-shell-completion-native-toggle): New functions.
 +      (python-shell-completion-native-get-completions): New function.
 +      (python-shell-completion-at-point): Use it.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      python.el: Enhance shell user interaction and deprecate
 +      python-shell-get-or-create-process.
 +      * progmodes/python.el (python-shell-get-process-or-error):
 +      New function.
 +      (python-shell-with-shell-buffer): Use it.
 +      (python-shell-send-string, python-shell-send-region)
 +      (python-shell-send-buffer, python-shell-send-defun)
 +      (python-shell-send-file, python-shell-switch-to-shell): Use it.
 +      Add argument MSG to display user-friendly message when no process
 +      is running.
 +      (python-shell-switch-to-shell): Call pop-to-buffer with NORECORD.
 +      (python-shell-make-comint): Rename argument SHOW from POP.  Use
 +      display-buffer instead of pop-to-buffer.
 +      (run-python): Doc fix.  Return process.
 +      (python-shell-get-or-create-process): Make obsolete.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * progmodes/python.el (python-shell-buffer-substring): Handle
 +      cornercase when region sent starts at point-min.
 +
 +2014-12-27  Eli Zaretskii  <eliz@gnu.org>
 +
 +      * language/misc-lang.el (composition-function-table): Add Syriac
 +      characters and also ZWJ/ZWNJ.  See
 +      http://lists.gnu.org/archive/html/help-gnu-emacs/2014-12/msg00248.html
 +      for the details.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      python.el: Fix message when sending region.
 +      * progmodes/python.el (python-shell-send-region): Rename argument
 +      send-main from nomain.  Fix message.
 +      (python-shell-send-buffer): Rename argument send-main from arg.
 +
 +      python.el: Cleanup temp files even with eval errors.
 +      * progmodes/python.el (python-shell-send-file): Make file-name
 +      mandatory.  Fix temp file removal in the majority of cases.
 +
 +      python.el: Handle file encoding for shell.
 +      * progmodes/python.el (python-rx-constituents): Add coding-cookie.
 +      (python-shell--save-temp-file): Write file with proper encoding.
 +      (python-shell-buffer-substring): Add coding cookie for detected
 +      encoding to generated content.  Fix blank lines when removing
 +      if-name-main block.
 +      (python-shell-send-file): Handle file encoding.
 +      (python-info-encoding-from-cookie)
 +      (python-info-encoding): New functions.
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
 +      Use `tramp-rsh-end-of-line', it ought to be more robust.
 +
 +2014-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/js.el (js-syntax-propertize): "return" can't be divided
 +      (bug#19397).
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-read-passwd): Ignore errors from `auth-source-*'.
 +
 +      * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n"
 +      as end-of-line delimeter for passwords, when running on MS Windows.
 +
 +2014-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/sh-script.el (sh-set-shell): Don't change the global value
 +      of indent-line-function (bug#19433).
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      Fix line numbers on Python shell.
 +      * progmodes/python.el (python-shell--save-temp-file): Do not
 +      append coding cookie.
 +      (python-shell-send-string): Generalize for
 +      python-shell-send-region.
 +      (python--use-fake-loc): Delete var.
 +      (python-shell-buffer-substring): Cleanup fake-loc logic.
 +      (python-shell-send-region): Remove fake-loc logic, simplify.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * progmodes/python.el (python-indent-post-self-insert-function):
 +      Make colon to re-indent only for dedenters, handling
 +      multiline-statements gracefully.
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-handle-insert-file-contents):
 +      Set `find-file-not-found-functions' in case of errors.  (Bug#18623)
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp-sh.el (tramp-send-command-and-read): New optional
 +      arg MARKER.
 +      (tramp-get-remote-path): Use it.
 +
 +2014-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (redisplay-dont-pause): Mark as obsolete.
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * net/tramp.el (tramp-error-with-buffer): Call `message' properly.
 +      (tramp-accept-process-output): Use nil as argument for
 +      `accept-process-output', when there is a gateway prepended.
 +
 +      * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in
 +      wrong debug buffer.
 +      (tramp-gw-open-connection): Set process coding system 'binary.
 +      (tramp-gw-open-network-stream): Handle HTTP error 403.
 +
 +      * net/tramp-sh.el (tramp-compute-multi-hops): Suppress traces in
 +      wrong debug buffer.
 +      (tramp-maybe-open-connection): Set connection property "gateway".
 +
 +2014-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * subr.el (sit-for): Tweak docstring (bug#19381).
 +
 +2014-12-27  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      * vc/vc-git.el (vc-git-after-dir-status-stage): Move `up-to-date'
 +      stage to after `diff-index' (bug#19386).
 +
 +2014-12-27  João Távora  <joaotavora@gmail.com>
 +
 +      * textmodes/tex-mode.el (tex-insert-quote): Consider and respect
 +      `electric-pair-mode' (bug#19356).
 +
 +2014-12-27  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      elisp-xref-find: Don't create buffers eagerly.
 +
 +      * progmodes/elisp-mode.el (elisp--identifier-location): Fold back
 +      into `elisp--company-location'.
 +      (elisp--identifier-completion-table): Rename to
 +      `elisp--identifier-completion-table', and do not include just any
 +      symbols with a property list.
 +      (elisp-completion-at-point): Revert the 2014-12-25 change.
 +      (elisp--xref-identifier-file): New function.
 +      (elisp--xref-find-definitions): Use it.
 +
 +      * emacs-lisp/find-func.el (find-function-library): New function,
 +      extracted from `find-function-noselect'.
 +
 +      * progmodes/xref.el (xref-elisp-location): New class.
 +      (xref-make-elisp-location): New function.
 +      (xref-location-marker): New implementation.
 +
 +2014-12-27  Juri Linkov  <juri@linkov.net>
 +
 +      * minibuffer.el (minibuffer-completion-help):
 +      Use shrink-window-if-larger-than-buffer in window-height
 +      when temp-buffer-resize-mode is nil.
 +
 +      * window.el (with-displayed-buffer-window): Remove window-height
 +      from the action alist in the temp-buffer-window-show call
 +      when window-height is handled explicitly afterwards (bug#19355).
 +
 +2014-12-27  Juri Linkov  <juri@linkov.net>
 +
 +      Support subdirectories when saving places in dired.
 +      * saveplace.el (toggle-save-place, save-place-to-alist)
 +      (save-places-to-alist, save-place-dired-hook):
 +      Use dired-current-directory instead of dired-directory (bug#19436).
 +      (save-place-dired-hook): Add check for alist to make the new
 +      format future-proof to allow other possible formats.
 +
 +2014-12-26  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      python.el: Generate clearer shell buffer names.
 +      * progmodes/python.el (python-shell-get-process-name)
 +      (python-shell-internal-get-process-name): Use `buffer-name`.
 +      (python-shell-internal-get-or-create-process): Simplify.
 +
 +2014-12-26  Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      Add basic xref apropos implementation to elisp-mode.
 +
 +      * progmodes/elisp-mode.el (elisp--xref-find-definitions):
 +      Filter out nil results.
 +      (elisp--xref-find-apropos): New function.
 +      (elisp-xref-find): Use it.
 +
 +      * progmodes/xref.el (xref--show-xrefs): Use `user-error'.
 +
 +2014-12-25  Filipp Gunbin  <fgunbin@fastmail.fm>
 +
 +      * dired-aux.el (dired-maybe-insert-subdir): Make
 +      dired-maybe-insert-subdir always skip trivial files.
 +
 +2014-12-25  Helmut Eller  <eller.helmut@gmail.com>
 +            Dmitry Gutov  <dgutov@yandex.ru>
 +
 +      Consolidate cross-referencing commands.
 +
 +      Move autoloaded bindings for `M-.', `M-,', `C-x 4 .' and
 +      `C-x 5 .' from etags.el to xref.el.
 +
 +      * progmodes/xref.el: New file.
 +
 +      * progmodes/elisp-mode.el (elisp--identifier-types): New variable.
 +      (elisp--identifier-location): New function, extracted from
 +      `elisp--company-location'.
 +      (elisp--company-location): Use it.
 +      (elisp--identifier-completion-table): New variable.
 +      (elisp-completion-at-point): Use it.
 +      (emacs-lisp-mode): Set the local values of `xref-find-function'
 +      and `xref-identifier-completion-table-function'.
 +      (elisp-xref-find, elisp--xref-find-definitions)
 +      (elisp--xref-identifier-completion-table): New functions.
 +
 +      * progmodes/etags.el (find-tag-marker-ring): Mark obsolete in
 +      favor of `xref--marker-ring'.
 +      (tags-lazy-completion-table): Autoload.
 +      (tags-reset-tags-tables): Use `xref-clear-marker-stack'.
 +      (find-tag-noselect): Use `xref-push-marker-stack'.
 +      (pop-tag-mark): Make an alias for `xref-pop-marker-stack'.
 +      (etags--xref-limit): New constant.
 +      (etags-xref-find, etags--xref-find-definitions): New functions.
 +
 +2014-12-25  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * cus-start.el (resize-mini-windows): Make it customizable.
 +
 +2014-12-24  Stephen Leake  <stephen_leake@stephe-leake.org>
 +
 +      * startup.el (fancy-about-text): Change buttons for etc/CONTRIBUTE
 +      to (info "(emacs)Contributing").  (Bug#19299)
 +
 +2014-12-24  Martin Rudalics  <rudalics@gmx.at>
 +
 +      * window.el (mouse-autoselect-window-position-1): New variable.
 +      (mouse-autoselect-window-cancel)
 +      (mouse-autoselect-window-select, handle-select-window): With
 +      delayed autoselection select window only if mouse moves after
 +      selecting its frame.
 +
 +2014-12-24  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * eshell/esh-ext.el (eshell-find-interpreter): Expand relative
 +      remote file names.  (Bug#18782)
 +
 +2014-12-23  Sam Steingold  <sds@gnu.org>
 +
 +      * shell.el (shell-display-buffer-actions): New user option.
 +      (shell): Pass it to `pop-to-buffer' instead of hard-coding
 +      `pop-to-buffer-same-window'.
 +
 +2014-12-23  Stefan Monnier  <monnier@iro.umontreal.ca>
 +
 +      * progmodes/js.el (js--syntax-propertize-regexp-syntax-table): New var.
 +      (js-syntax-propertize-regexp): Use it to recognize "slash in
 +      a character class" (bug#19397).
 +
  2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
  
        * completion.el: Use post-self-insert-hook (bug#19400).
Simple merge
Simple merge
Simple merge
index dc85b4cc89277681a1d517631534797055bc00b2,fe88c864d521c419849f470f7a12ee735b0d698a..d0eaaf24d2b14140e6adf5c15deaf3548286cce3
@@@ -1,6 -1,6 +1,6 @@@
- ;;; eieio-custom.el -- eieio object customization
+ ;;; eieio-custom.el -- eieio object customization  -*- lexical-binding:t -*-
  
 -;; Copyright (C) 1999-2001, 2005, 2007-2014 Free Software Foundation,
 +;; Copyright (C) 1999-2001, 2005, 2007-2015 Free Software Foundation,
  ;; Inc.
  
  ;; Author: Eric M. Ludlam <zappo@gnu.org>
index cf676256d43e3127238b95752f4d1affe7389991,1d031c3e7cce7284fa3febe456226916c411e86f..b236f0f03e18db36e574d42baef8d988f36564df
@@@ -1,6 -1,6 +1,6 @@@
- ;;; eieio-speedbar.el -- Classes for managing speedbar displays.
+ ;;; eieio-speedbar.el -- Classes for managing speedbar displays.  -*- lexical-binding:t -*-
  
 -;; Copyright (C) 1999-2002, 2005, 2007-2014 Free Software Foundation,
 +;; Copyright (C) 1999-2002, 2005, 2007-2015 Free Software Foundation,
  ;; Inc.
  
  ;; Author: Eric M. Ludlam <zappo@gnu.org>
index 361005414de7c361295a54e0695c549151f6b5d9,205f13108b887e063cc013bc9d7d4f997f4d8ebb..419a78be4696f3e9960e91c1c278322976a8e701
@@@ -895,7 -926,7 +926,7 @@@ variable PRINT-FUNCTION.  Optional argu
  \f
  ;;; Start of automatically extracted autoloads.
  \f
- ;;;### (autoloads nil "eieio-custom" "eieio-custom.el" "62709d76ae43f4fe70ed922391f9c64d")
 -;;;### (autoloads nil "eieio-custom" "eieio-custom.el" "7d3c0bca065713ae74af0c07778dd1f4")
++;;;### (autoloads nil "eieio-custom" "eieio-custom.el" "9a908efef1720439feb6323c1dd01770")
  ;;; Generated autoloads from eieio-custom.el
  
  (autoload 'customize-object "eieio-custom" "\
@@@ -906,7 -937,7 +937,7 @@@ Optional argument GROUP is the sub-grou
  
  ;;;***
  \f
- ;;;### (autoloads nil "eieio-opt" "eieio-opt.el" "76058d02377b677eed3d15c28fc7ab21")
 -;;;### (autoloads nil "eieio-opt" "eieio-opt.el" "7267115a161243e1e6ea75f2d25c8ebc")
++;;;### (autoloads nil "eieio-opt" "eieio-opt.el" "e922bf7ebc7dcb272480c4ba148da1ac")
  ;;; Generated autoloads from eieio-opt.el
  
  (autoload 'eieio-browse "eieio-opt" "\
index 93117d31c99303402ba9ce0858a8a4d9f01b6d2e,91c08c49d48aa54cd5ea81eb3e17e5fa21976272..20de9aea136c6f69efd334da5c452ba6ad3d17b3
@@@ -1,21 -1,7 +1,25 @@@
-       * gnus-group.el (gnus-read-ephemeral-bug-group): Bind
-       coding-system-for-read and coding-system-for-write only around
+ 2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * registry.el: Don't use <class> as a variable.
 +2014-12-29  Paul Eggert  <eggert@cs.ucla.edu>
 +
 +      * message.el (message-make-fqdn):
 +      * nnvirtual.el (nnvirtual-retrieve-headers)
 +      (nnvirtual-update-xref-header): Prefer (system-name) to system-name,
 +      and avoid naming locals 'system-name'.
 +
 +2014-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
 +
 +      * mm-decode.el (mm-shr): Bind `shr-width' to `fill-column' so that
 +      lines don't get overlong when responding.
 +
 +2014-12-19  Andreas Schwab  <schwab@linux-m68k.org>
 +
++      * gnus-group.el (gnus-read-ephemeral-bug-group):
++      Bind coding-system-for-read and coding-system-for-write only around
 +      with-temp-file, and make buffer unibyte.  Don't write temp file twice.
 +
  2014-12-18  Paul Eggert  <eggert@cs.ucla.edu>
  
        * registry.el (registry-db): Set default slot later.
@@@ -73,9 -59,9 +77,9 @@@
  
  2014-12-09  Lars Magne Ingebrigtsen  <larsi@gnus.org>
  
--      * gnus-art.el (gnus-article-mime-handles): Refactored out into own
++      * gnus-art.el (gnus-article-mime-handles): Refactor out into own
        function for reuse.
--      (gnus-mime-buttonize-attachments-in-header): Adjusted.
++      (gnus-mime-buttonize-attachments-in-header): Adjust.
  
  2014-12-07  Lars Magne Ingebrigtsen  <larsi@gnus.org>
  
diff --cc test/ChangeLog
index bb061478b30926ea567be199c151876cb9766e74,ca10ddaca68bdb239103474fabcf70974410c715..83bb8bf00c7e1ed742aaaa5ea530d8605ed4c755
 -2015-01-07  Stefan Monnier  <monnier@iro.umontreal.ca>
+ 2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-tests.el (eieio-test-23-inheritance-check): Don't use
+       <foo>-child-p.
+       * automated/eieio-test-methodinvoke.el (eieio-test-method-store):
+       Update reference to eieio--generic-call-key.
 -2015-01-05  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-tests.el: Use cl-lib.  Don't use <class> as a variable.
+       Don't use <class>-list types and <class>-list-p predicates.
+       * automated/eieio-test-persist.el (persistent-with-objs-list-slot):
+       Don't use <class>-list type.
+       * automated/eieio-test-methodinvoke.el
+       (eieio-test-method-order-list-4):
+       Don't use <class> as a variable.
 -2014-12-29  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-tests.el (eieio-test-04-static-method)
+       (eieio-test-05-static-method-2): Use oref-default to access
+       class slots.
+       (eieio-test-23-inheritance-check): Don't assume that
+       eieio-class-parents returns class names, or that a class can only have
+       a single name.
+       * automated/eieio-test-persist.el (eieio--attribute-to-initarg):
+       Move from eieio-core.el.  Rename from eieio-attribute-to-initarg.
+       Change arg to be a class object.  Update all callers.
 -2014-12-23  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-test-methodinvoke.el (eieio-test-method-store):
+       Adjust to new semantics of eieio--scoped-class.
+       (eieio-test-match): Improve error feedback.
 -2014-12-22  Stefan Monnier  <monnier@iro.umontreal.ca>
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-tests.el: Remove dummy object names.
+       * automated/eieio-test-persist.el (persistent-with-objs-slot-subs):
+       The type FOO-child is the same as FOO.
-       (python-shell-completion-native-interpreter-disabled-p-1): New
-       test.
++2015-01-08  Stefan Monnier  <monnier@iro.umontreal.ca>
+       * automated/eieio-test-methodinvoke.el (eieio-test-method-store):
+       Remove use of eieio-generic-call-methodname.
+       (eieio-test-method-order-list-3, eieio-test-method-order-list-6)
+       (eieio-test-method-order-list-7, eieio-test-method-order-list-8):
+       Adjust the expected result accordingly.
 +2015-01-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * automated/tramp-tests.el (tramp--test-smb-or-windows-nt-p):
 +      New defun.
 +      (tramp-test30-special-characters): Use it.  (Bug#19463)
 +      (tramp--test-check-files): Filter nil file names out.
 +
 +2015-01-01  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      Sync with Tramp 2.2.11.
 +
 +      * automated/tramp-tests.el (tramp-test30-special-characters):
 +      Skip test on MS-Windows.
 +
 +2014-12-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * automated/let-alist.el: Load dependency.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el
++      (python-shell-completion-native-interpreter-disabled-p-1): New test.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-shell-get-or-create-process-1)
 +      (python-shell-get-or-create-process-2)
 +      (python-shell-get-or-create-process-3): Remove tests.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-shell-buffer-substring-9): New test.
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-shell-buffer-substring-1)
 +      (python-shell-buffer-substring-2, python-shell-buffer-substring-3)
 +      (python-shell-buffer-substring-4, python-shell-buffer-substring-5)
 +      (python-shell-buffer-substring-6, python-shell-buffer-substring-7)
 +      (python-shell-buffer-substring-8)
 +      (python-info-encoding-from-cookie-1)
 +      (python-info-encoding-from-cookie-2)
 +      (python-info-encoding-from-cookie-3)
 +      (python-info-encoding-from-cookie-4)
 +      (python-info-encoding-from-cookie-5)
 +      (python-info-encoding-from-cookie-6)
 +      (python-info-encoding-from-cookie-7, python-info-encoding-1)
 +      (python-info-encoding-2): New tests.
 +
 +2014-12-27  Michael Albinus  <michael.albinus@gmx.de>
 +
 +      * automated/tramp-tests.el (tramp-test17-insert-directory): Do not
 +      expect a given order of "." and "..".
 +
 +2014-12-27  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-indent-electric-colon-2)
 +      (python-indent-electric-colon-3): New tests.
 +
 +2014-12-27  João Távora  <joaotavora@gmail.com>
 +
 +      * automated/electric-tests.el (autowrapping-7): Tests for
 +      tex-mode.
 +
 +2014-12-27  Glenn Morris  <rgm@gnu.org>
 +
 +      * automated/flymake/warnpred/test.pl: Tweak format, since the
 +      previous one seems to have stopped giving a warning with perl 5.20.1.
 +
 +2014-12-26  Fabián Ezequiel Gallina  <fgallina@gnu.org>
 +
 +      * automated/python-tests.el (python-shell-get-process-name-1)
 +      (python-shell-internal-get-process-name-1): Cleanup.
 +      (python-shell-get-process-name-2)
 +      (python-shell-internal-get-process-name-2): New tests.
 +      (python-shell-calculate-command-1)
 +      (python-shell-calculate-process-environment-3)
 +      (python-shell-calculate-exec-path-2, python-shell-make-comint-1)
 +      (python-shell-make-comint-2, python-shell-make-comint-4)
 +      (python-shell-get-process-1, python-util-clone-local-variables-1):
 +      Replace obsolete function and variable references with current.
 +
  2014-12-19  Artur Malabarba  <bruce.connor.am@gmail.com>
  
        * automated/let-alist.el: require `cl-lib'
Simple merge
Simple merge