]> code.delx.au - gnu-emacs/commitdiff
Merge emacs-25 into master (using imerge)
authorJohn Wiegley <johnw@newartisans.com>
Wed, 30 Dec 2015 05:40:28 +0000 (21:40 -0800)
committerJohn Wiegley <johnw@newartisans.com>
Wed, 30 Dec 2015 05:40:28 +0000 (21:40 -0800)
55 files changed:
1  2 
.gitignore
CONTRIBUTE
ChangeLog.2
admin/release-process
configure.ac
doc/lispref/os.texi
etc/NEWS
lisp/emacs-lisp/eieio-compat.el
lisp/emacs-lisp/let-alist.el
lisp/emacs-lisp/package.el
lisp/erc/erc-backend.el
lisp/erc/erc.el
lisp/gnus/gnus-util.el
lisp/htmlfontify.el
lisp/ibuffer.el
lisp/loadup.el
lisp/mail/rmail.el
lisp/menu-bar.el
lisp/net/eww.el
lisp/net/shr.el
lisp/progmodes/cc-defs.el
lisp/progmodes/verilog-mode.el
lisp/ps-print.el
lisp/textmodes/reftex-auc.el
lisp/url/url-handlers.el
lisp/url/url-http.el
lisp/url/url-util.el
src/Makefile.in
src/emacs.c
src/keyboard.c
src/lisp.h
test/lisp/abbrev-tests.el
test/lisp/autorevert-tests.el
test/lisp/calendar/icalendar-tests.el
test/lisp/character-fold-tests.el
test/lisp/emacs-lisp/package-tests.el
test/lisp/faces-tests.el
test/lisp/gnus/auth-source-tests.el
test/lisp/gnus/message-tests.el
test/lisp/help-fns-tests.el
test/lisp/json-tests.el
test/lisp/net/tramp-tests.el
test/lisp/progmodes/elisp-mode-tests.el
test/lisp/simple-tests.el
test/lisp/subr-tests.el
test/manual/etags/CTAGS.good
test/manual/etags/ETAGS.good_1
test/manual/etags/ETAGS.good_2
test/manual/etags/ETAGS.good_3
test/manual/etags/ETAGS.good_4
test/manual/etags/ETAGS.good_5
test/manual/etags/ETAGS.good_6
test/manual/etags/Makefile
test/manual/indent/js.js
test/src/keymap-tests.el

diff --cc .gitignore
index 682179150a330e796f02396c10c2582e1ef70afb,34b0c02fec47a1dd1e120d2e850bd0ca3ed687d5..e544b10808b295d7f7b6e44cdf9a555b20b81ce2
@@@ -42,10 -42,11 +42,11 @@@ InfoPlist.string
  Makefile
  makefile
  !etc/refcards/Makefile
 -!test/automated/data/flymake/Makefile
 -!test/indent/Makefile
 -!test/etags/Makefile
 -!test/etags/make-src/Makefile
+ !modules/mod-test/Makefile
 +!test/lisp/progmodes/flymake-resources/Makefile
 +!test/manual/indent/Makefile
 +!test/manual/etags/Makefile
 +!test/manual/etags/make-src/Makefile
  /*.cache
  /confdefs.h
  /config.status
diff --cc CONTRIBUTE
Simple merge
diff --cc ChangeLog.2
Simple merge
Simple merge
diff --cc configure.ac
index 0b7b4032482abcfd8e082696291c8e417373e7ba,a5b9bd3d377de6d9275c2815f78f1c29abcae778..94007a495379bbc0a1ea855c96f855835df06e50
@@@ -353,9 -353,10 +353,10 @@@ OPTION_DEFAULT_ON([gsettings],[don't co
  OPTION_DEFAULT_ON([selinux],[don't compile with SELinux support])
  OPTION_DEFAULT_ON([gnutls],[don't use -lgnutls for SSL/TLS support])
  OPTION_DEFAULT_ON([zlib],[don't compile with zlib decompression support])
+ OPTION_DEFAULT_OFF([modules],[compile with dynamic modules support])
  
  AC_ARG_WITH([file-notification],[AS_HELP_STRING([--with-file-notification=LIB],
 - [use a file notification library (LIB one of: yes, gfile, inotify, w32, no)])],
 + [use a file notification library (LIB one of: yes, inotify, kqueue, gfile, w32, no)])],
   [ case "${withval}" in
      y | ye | yes )    val=yes ;;
      n | no )          val=no  ;;
Simple merge
diff --cc etc/NEWS
index e4db4256380bc26f67fb4f2e4a9db13e0c7080db,10d516bc23f0a286a401e01945621ba654d9cc01..05db9980ee9207faf828ef42609b962e466abbcf
+++ b/etc/NEWS
@@@ -166,19 -161,18 +174,26 @@@ the variable `dir-locals-file' for mor
  added via the new Network Security Manager (NSM) and controlled via
  the `network-security-level' variable.
  
 +---
 +** International domain names (IDNA) are now encoded via the new
 +puny.el library, so that one can visit web sites like
 +"http://méxico.icom.museum".
 +
+ ** If Emacs isn't built with TLS support, an external TLS-capable
+ program is used instead.  This program used to be run in --insecure
+ mode by default, but has now changed to be secure instead, and will
+ fail if you try to connect to non-verifiable hosts.  This is
+ controlled by the `tls-program' variable.
+ +++
  ** C-h l now also lists the commands that were run.
  
 -+++
 -** x-select-enable-clipboard is renamed select-enable-clipboard
 -and x-select-enable-primary is renamed select-enable-primary.
 +** The new M-s M-w key binding uses eww to search the web for the
 +text in the region.
 +
 +** M-x suggests shorthands and ignores obsolete commands for completion.
 +** x-select-enable-clipboard is renamed select-enable-clipboard.
 +x-select-enable-primary and renamed select-enable-primary.
  Additionally they both now apply to all systems (OSX, GNUstep, Windows, you
  name it), with the proviso that on some systems (e.g. Windows)
  select-enable-primary is ineffective since the system doesn't
@@@ -375,28 -382,19 +403,22 @@@ additionally need to add `getSelection
  
  ** ERC
  
- *** Hide message types by network or channel.  `erc-hide-list' will
- hide all messages of the specified type, where `erc-network-hide-list'
- and `erc-channel-hide-list' will only hide the specified message types
- for the respective specified targets.
+ +++
+ *** ERC can now hide message types by network or channel.
+ `erc-hide-list' will hide all messages of the specified type, while
+ `erc-network-hide-list' and `erc-channel-hide-list' will only hide the
+ specified message types for the respective specified targets.
  
 +*** New variable `erc-default-port-tls' used to connect to TLS IRC
 +servers.
 +
  ** Midnight-mode
- *** `midnight-mode' is a proper minor mode.
- *** clean-buffer-*-regexps can now specify buffers via predicate functions.
  
- ** In xterms, killing text now also sets the CLIPBOARD/PRIMARY selection
- in the surrounding GUI (using the OSC-52 escape sequence).  This only works
- if your xterm supports it and enables the `allowWindowOps' options (disabled
- by default at least in Debian, for security reasons).
- Similarly, you can yank the CLIPBOARD/PRIMARY selection (using the OSC-52
- escape sequence) if your xterm has the feature enabled but for that you
- additionally need to add `getSelection' to `xterm-extra-capabilities'.
+ ---
+ *** `midnight-mode' is now a proper minor mode.
  
- ** xterm-mouse-mode now supports mouse-tracking (if your xterm supports it).
+ ---
+ *** clean-buffer-*-regexps can now specify buffers via predicate functions.
  
  ** package.el
  
@@@ -907,10 -1027,18 +1056,22 @@@ compress many marked files into a singl
  compression command is determined from the new
  `dired-compress-files-alist' variable.
  
 ++++
 +*** `W' is now bound to `browse-url-of-dired-file', and is useful for
 +viewing HTML files and the like.
 +
+ ** Tabulated List Mode
+ +++
+ *** It is now safe for a mode that derives `tabulated-list-mode' to not
+ call `tabulated-list-init-header', in which case it will have no
+ header.
+ +++
+ *** `tabulated-list-print' takes a second optional argument, update,
+ which specifies an alternative printing method which is faster when
+ few or no entries have changed.
  ** Obsolete packages
  
  ---
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc lisp/erc/erc.el
Simple merge
Simple merge
Simple merge
diff --cc lisp/ibuffer.el
Simple merge
diff --cc lisp/loadup.el
Simple merge
Simple merge
Simple merge
diff --cc lisp/net/eww.el
Simple merge
diff --cc lisp/net/shr.el
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc src/Makefile.in
index d7ad3954579a635b9dba0b969572198ef7165c27,8357655af3bd82fb9375ae98ae71b54ca7bd192d..f96ebb2aeeb370806f7ec2619db213c8f0a4941a
@@@ -469,7 -473,7 +474,7 @@@ LIBES = $(LIBS) $(W32_LIBS) $(LIBS_GNUS
     $(LIBS_TERMCAP) $(GETLOADAVG_LIBS) $(SETTINGS_LIBS) $(LIBSELINUX_LIBS) \
     $(FREETYPE_LIBS) $(FONTCONFIG_LIBS) $(LIBOTF_LIBS) $(M17N_FLT_LIBS) \
     $(LIBGNUTLS_LIBS) $(LIB_PTHREAD) \
-    $(NOTIFY_LIBS) $(LIB_MATH) $(LIBZ)
 -   $(GFILENOTIFY_LIBS) $(LIB_MATH) $(LIBZ) $(LIBMODULES)
++   $(NOTIFY_LIBS) $(LIB_MATH) $(LIBZ) $(LIBMODULES)
  
  $(leimdir)/leim-list.el: bootstrap-emacs$(EXEEXT)
        $(MAKE) -C ../leim leim-list.el EMACS="$(bootstrap_exe)"
diff --cc src/emacs.c
Simple merge
diff --cc src/keyboard.c
Simple merge
diff --cc src/lisp.h
Simple merge
index 17aea5d0f823ce0350f49edfca7be3fafab4fc00,6163e0b2c397dd26d354e1f6bf72ed18bd032fe2..37917ec53536911ed07a36f42c727d8c6527f6bc
  
  (require 'ert)
  (require 'abbrev)
+ (require 'seq)
+ ;; set up test abbrev table and abbrev entry
+ (defun setup-test-abbrev-table ()
+   (defvar ert-test-abbrevs nil)
+   (define-abbrev-table 'ert-test-abbrevs '(("a-e-t" "abbrev-ert-test")))
+   (abbrev-table-put ert-test-abbrevs :ert-test "ert-test-value")
+   ert-test-abbrevs)
  
 +(ert-deftest abbrev-table-p-test ()
 +  (should-not (abbrev-table-p 42))
 +  (should-not (abbrev-table-p "aoeu"))
 +  (should-not (abbrev-table-p '()))
 +  (should-not (abbrev-table-p []))
 +  ;; Missing :abbrev-table-modiff counter:
 +  (should-not (abbrev-table-p (obarray-make)))
 +  (let* ((table (obarray-make)))
 +    (abbrev-table-put table :abbrev-table-modiff 42)
 +    (should (abbrev-table-p table))))
 +
 +(ert-deftest abbrev-make-abbrev-table-test ()
 +  ;; Table without properties:
 +  (let ((table (make-abbrev-table)))
 +    (should (abbrev-table-p table))
 +    (should (= (length table) obarray-default-size)))
 +  ;; Table with one property 'foo with value 'bar:
 +  (let ((table (make-abbrev-table '(foo bar))))
 +    (should (abbrev-table-p table))
 +    (should (= (length table) obarray-default-size))
 +    (should (eq (abbrev-table-get table 'foo) 'bar))))
 +
 +(ert-deftest abbrev-table-get-put-test ()
 +  (let ((table (make-abbrev-table)))
 +    (should-not (abbrev-table-get table 'foo))
 +    (should (= (abbrev-table-put table 'foo 42) 42))
 +    (should (= (abbrev-table-get table 'foo) 42))
 +    (should (eq (abbrev-table-put table 'foo 'bar) 'bar))
 +    (should (eq (abbrev-table-get table 'foo) 'bar))))
 +
  (ert-deftest copy-abbrev-table-test ()
    (defvar foo-abbrev-table nil)         ; Avoid compiler warning
    (define-abbrev-table 'foo-abbrev-table
      (should (abbrev-table-p new-foo-abbrev-table)))
    (should-not (string-equal (buffer-name) "*Backtrace*")))
  
+ (ert-deftest kill-all-abbrevs-test ()
+   "Test undefining all defined abbrevs"
+   (unless noninteractive
+     (ert-skip "Cannot test kill-all-abbrevs in interactive mode"))
+   (let ((num-tables 0))
+     ;; ensure at least one abbrev exists
+     (should (abbrev-table-p (setup-test-abbrev-table)))
+     (setf num-tables (length abbrev-table-name-list))
+     (kill-all-abbrevs)
+     ;; no tables should have been removed/added
+     (should (= num-tables (length abbrev-table-name-list)))
+     ;; number of empty tables should be the same as number of tables
+     (should (= num-tables (length (seq-filter
+                                    (lambda (table)
+                                        (abbrev-table-empty-p (symbol-value table)))
+                                    abbrev-table-name-list))))))
+ (ert-deftest abbrev-table-name-test ()
+   "Test returning name of abbrev-table"
+   (let ((ert-test-abbrevs (setup-test-abbrev-table))
+         (no-such-table nil))
+     (should (equal 'ert-test-abbrevs (abbrev-table-name ert-test-abbrevs)))
+     (should (equal nil (abbrev-table-name no-such-table)))))
+ (ert-deftest clear-abbrev-table-test ()
+   "Test clearing single abbrev table"
+   (let ((ert-test-abbrevs (setup-test-abbrev-table)))
+     (should (equal "a-e-t" (symbol-name
+                             (abbrev-symbol "a-e-t" ert-test-abbrevs))))
+     (should (equal "abbrev-ert-test" (symbol-value
+                                       (abbrev-symbol "a-e-t" ert-test-abbrevs))))
+     (clear-abbrev-table ert-test-abbrevs)
+     (should (equal "nil" (symbol-name
+                           (abbrev-symbol "a-e-t" ert-test-abbrevs))))
+     (should (equal nil (symbol-value
+                         (abbrev-symbol "a-e-t" ert-test-abbrevs))))
+     (should (equal t (abbrev-table-empty-p ert-test-abbrevs)))))
  (provide 'abbrev-tests)
 -
  ;;; abbrev-tests.el ends here
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index f5cf2aeb3b5f33ea8964e46341fe15aec7635ef5,00d5b9f52b215be1a30bf268c0e0dd9359e30db1..4d9f358c8ed8c748f8c9fc122f832a37bb81d074
@@@ -28,11 -29,11 +29,11 @@@ YSRC=$(addprefix ./y-src/,parse.y parse
  SRCS=${ADASRC} ${ASRC} ${CSRC} ${CPSRC} ${ELSRC} ${ERLSRC} ${FSRC}\
       ${FORTHSRC} ${HTMLSRC} ${JAVASRC} ${LUASRC} ${MAKESRC} ${OBJCSRC}\
       ${OBJCPPSRC} ${PASSRC} ${PHPSRC} ${PERLSRC} ${PSSRC} ${PROLSRC} ${PYTSRC}\
-      ${TEXSRC} ${YSRC}
+      ${RBSRC} ${TEXSRC} ${YSRC}
  NONSRCS=./f-src/entry.strange ./erl-src/lists.erl ./cp-src/clheir.hpp.gz
  
 -ETAGS_PROG=../../lib-src/etags
 -CTAGS_PROG=../../lib-src/ctags
 +ETAGS_PROG=../../../lib-src/etags
 +CTAGS_PROG=../../../lib-src/ctags
  
  REGEX=/[ \t]*DEFVAR_[A-Z_ \t\n(]+"\([^"]+\)"/
  xx="this line is here because of a fontlock bug
Simple merge
Simple merge