1. 10 Jul, 2018 2 commits
    • Basil L. Contovounesios's avatar
      Add predicate proper-list-p · 2fde6275
      Basil L. Contovounesios authored
      For discussion, see emacs-devel thread starting at
      https://lists.gnu.org/archive/html/emacs-devel/2018-04/msg00460.html.
      
      * lisp/subr.el (proper-list-p): New function.
      Implementation suggested by Paul Eggert <eggert@cs.ucla.edu> in
      https://lists.gnu.org/archive/html/emacs-devel/2018-06/msg00138.html.
      * doc/lispref/lists.texi (List Elements):
      * etc/NEWS: Document proper-list-p.
      * lisp/org/ob-core.el (org-babel-insert-result):
      * lisp/emacs-lisp/byte-opt.el (byte-optimize-if):
      * lisp/emacs-lisp/cl-macs.el (cl--make-usage-args): Use proper-list-p.
      * lisp/emacs-lisp/ert.el (ert--proper-list-p): Remove.
      Replaced by proper-list-p in lisp/subr.el.
      (ert--explain-equal-rec): Use proper-list-length.
      * lisp/format.el (format-proper-list-p): Remove.
      Replaced by proper-list-p in lisp/subr.el.
      (format-annotate-single-property-change): Use proper-list-p.
      * test/lisp/emacs-lisp/ert-tests.el (ert-test-proper-list-p):
      Move from here...
      * test/lisp/subr-tests.el (subr-tests--proper-list-length):
      ...to here, mutatis mutandis.
      2fde6275
    • Noam Postavsky's avatar
      Respect field boundaries in indent-line-to (Bug#32014) · e4ad2d1a
      Noam Postavsky authored
      * lisp/indent.el (indent-line-to): Use the back-to-indentation point
      as the end-point of whitespace removal, rather than
      backward-to-indentation which doesn't respect field boundaries.
      * test/lisp/emacs-lisp/lisp-mode-tests.el
      (lisp-indent-with-read-only-field): Don't expect to fail.
      e4ad2d1a
  2. 09 Jul, 2018 3 commits
    • Noam Postavsky's avatar
      Stop using indent-line-to in lisp-indent-line (Bug#32014) · 8f7d35ca
      Noam Postavsky authored
      This is partial revert of "Remove ignored argument from
      lisp-indent-line", because `indent-line-to' doesn't respect field
      boundaries.
      * lisp/emacs-lisp/lisp-mode.el (lisp-indent-line): Use delete-region
      and indent-to instead of `indent-line-to'.
      * test/lisp/emacs-lisp/lisp-mode-tests.el
      (lisp-indent-with-read-only-field): Expect to pass.
      
      Don't merge to master, we will fix indent-line-to there instead.
      8f7d35ca
    • Noam Postavsky's avatar
      ; Test for Bug#32014 · db3f7797
      Noam Postavsky authored
      * test/lisp/emacs-lisp/lisp-mode-tests.el
      (lisp-indent-with-read-only-field): New test.
      db3f7797
    • Michael Albinus's avatar
      Fix Bug#32090 · 917158f8
      Michael Albinus authored
      * lisp/files-x.el (connection-local-normalize-criteria): Do not
      use PROPERTIES anymore.
      (connection-local-get-profiles): Rewrite, in order to accept any
      property as optional.  (Bug#32090)
      (connection-local-set-profiles):
      Adapt ´connection-local-normalize-criteria' call.
      
      * test/lisp/files-x-tests.el
      (files-x-test-connection-local-set-profiles)
      (files-x-test-hack-connection-local-variables-apply): Extend tests.
      917158f8
  3. 08 Jul, 2018 2 commits
  4. 04 Jul, 2018 1 commit
    • Tom Tromey's avatar
      Fix Tcl indentation in a namespace · 38ea8e14
      Tom Tromey authored
      Fixes bug#32035
      * lisp/progmodes/tcl.el (tcl-proc-list): Add "namespace".
      * test/lisp/progmodes/tcl-tests.el (tcl-mode-namespace-indent): New
      test.
      38ea8e14
  5. 03 Jul, 2018 1 commit
    • João Távora's avatar
      Adjust previous jsonrpc change · 4ee502ca
      João Távora authored
      (nth 2) is probably a better alternative to caddr, and in Emacs 26.1
      we can pass 0 as :service to automatically find an available port.
      
      * lisp/jsonrpc.el (jsonrpc--call-deferred): Use cl-caddr.
      
      * test/lisp/jsonrpc-tests.el
      (jsonrpc--call-with-emacsrpc-fixture): Pass 0 as :service to when
      making the listen server.
      4ee502ca
  6. 02 Jul, 2018 1 commit
    • João Távora's avatar
      Make lisp/jsonrpc.el work with Emacs 25.1 · 332f4656
      João Távora authored
      * jsonrpc.el (Package-Requires): Require Emacs 25.1
      (jsonrpc-lambda): Use cl-gensym.
      (jsonrpc--call-deferred): Caddr doesn't exist in
      emacs 25.1.
      
      * jsonrpc-tests.el
      (jsonrpc--call-with-emacsrpc-fixture): New function.
      (jsonrpc--with-emacsrpc-fixture): Use it.
      (deferred-action-complex-tests): Adjust test for Emacs 25.1
      332f4656
  7. 01 Jul, 2018 1 commit
  8. 30 Jun, 2018 1 commit
    • João Távora's avatar
      Add lisp/jsonrpc.el · 8af26410
      João Távora authored
      * doc/lispref/text.texi (Text): Add JSONRPC.
      (JSONRPC): New node.
      
      * etc/NEWS (New Modes and Packages in Emacs 27.1): Mention jsonrpc.el
      
      * lisp/jsonrpc.el: New file.
      
      * test/lisp/jsonrpc-tests.el: New file.
      8af26410
  9. 29 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.4.0 · 45390596
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.4.0".
      
      * lisp/net/tramp-gvfs.el (tramp-gvfs-handler-mounted-unmounted):
      Ignore unknown GVFS methods.
      
      * test/lisp/net/tramp-tests.el (tramp-test42-asynchronous-requests):
      Tag as :unstable.
      45390596
  10. 27 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Sync with Tramp 2.3.4. Do not merge with master · 1f503792
      Michael Albinus authored
      * doc/misc/trampver.texi:
      * lisp/net/trampver.el: Change version to "2.3.4".
      
      * lisp/net/tramp-smb.el (tramp-smb-handle-delete-directory):
      Check, that the directory has been removed indeed.
      
      * test/lisp/net/tramp-tests.el (tramp-test21-file-links): Adapt test.
      (tramp--test-emacs25-p): New defun.
      (tramp-test34-vc-registered): Use it.
      1f503792
  11. 25 Jun, 2018 1 commit
    • Jean-Christophe Helary's avatar
      Reformat package.el message strings for future l10n · 61f73703
      Jean-Christophe Helary authored
      * lisp/emacs-lisp/package.el (package-buffer-info)
      (package--download-one-archive, package-install-selected-packages)
      (package-autoremove, describe-package-1, package-menu-toggle-hiding)
      (package-menu-hide-package, package-menu--mark-upgrades-1)
      (package-menu--list-to-prompt, package-menu--prompt-transaction-p)
      (package-menu-execute, package-menu--find-and-notify-upgrades):
      Reformat message strings to remove need for plural computation.  Try
      to put full sentences in source string literals.
      * test/lisp/emacs-lisp/package-tests.el
      (package-test-describe-package): Update to match new message format.
      61f73703
  12. 24 Jun, 2018 1 commit
    • Tom Tromey's avatar
      Fix two tcl-mode defun-related bugs · cd5bb4bf
      Tom Tromey authored
      Fixes bug#23565
      * lisp/progmodes/tcl.el (tcl-mode): Set beginning-of-defun-function
      and end-of-defun-function.
      (tcl-beginning-of-defun-function, tcl-end-of-defun-function): New
      defuns.
      * test/lisp/progmodes/tcl-tests.el: New file.
      cd5bb4bf
  13. 22 Jun, 2018 1 commit
    • Michael Albinus's avatar
      Improve backward compatibility of Tramp · e6476c91
      Michael Albinus authored
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path):
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): Use ´file-remote-p'.
      (tramp-get-ls-command-with): Handle busybox specially.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): Check for
      `fboundp'.  Use `file-remote-p'.  Hide compiler warning for older
      Emacsen.
      e6476c91
  14. 20 Jun, 2018 2 commits
    • Michael Albinus's avatar
      Implement command completion in remote shells. (Bug#31704) · 6f649e77
      Michael Albinus authored
      * doc/lispref/files.texi (Locating Files): Describe optional
      argument REMOTE of `executable-find'.
      (Magic File Names): Add `exec-path'.
      
      * doc/lispref/processes.texi (Subprocess Creation): Describe
      function `exec-path'.
      
      * doc/misc/tramp.texi (Remote programs): Explain refresh of search
      paths by `tramp-cleanup-this-connection'.
      
      * etc/NEWS: Mention 'exec-path' and 'executable-find'.
      
      * lisp/files.el (exec-path): New defun.
      (executable-find): Add optional argument REMOTE.
      
      * lisp/shell.el (shell-completion-vars): Set `comint-file-name-prefix'.
      (shell--command-completion-data): Use `(exec-path)'.  (Bug#31704)
      
      * lisp/net/ange-ftp.el (exec-path):
      * lisp/net/tramp.el (tramp-file-name-for-operation):
      * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
      * lisp/net/tramp-archive.el (tramp-archive-file-name-handler-alist):
      * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
      * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
      * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
      <exec-path>: Add handler.
      
      * lisp/net/tramp-adb.el (tramp-adb-handle-exec-path): New defun.
      (tramp-adb-maybe-open-connection): Do not set "remote-path"
      connection property.
      
      * lisp/net/tramp-compat.el (tramp-compat-exec-path): New defun.
      
      * lisp/net/tramp-sh.el (tramp-sh-handle-exec-path): New defun.
      
      * lisp/net/tramp.el (tramp-eshell-directory-change): Use it.
      
      * test/lisp/net/tramp-archive-tests.el
      (tramp-archive-test38-make-nearby-temp-file)
      (tramp-archive-test41-file-system-info)
      (tramp-archive-test43-auto-load)
      (tramp-archive-test43-delay-load): Rename.
      
      * test/lisp/net/tramp-tests.el (tramp-test34-exec-path): New test.
      (tramp-test36-make-auto-save-file-name)
      (tramp-test37-find-backup-file-name)
      (tramp-test38-make-nearby-temp-file)
      (tramp-test39-special-characters)
      (tramp-test39-special-characters-with-stat)
      (tramp-test39-special-characters-with-perl)
      (tramp-test39-special-characters-with-ls, tramp-test40-utf8)
      (tramp-test40-utf8-with-stat, tramp-test40-utf8-with-perl)
      (tramp-test40-utf8-with-ls, tramp-test41-file-system-info)
      (tramp-test42-asynchronous-requests, tramp-test43-auto-load)
      (tramp-test43-delay-load, tramp-test43-recursive-load)
      (tramp-test43-remote-load-path, tramp-test44-unload): Rename.
      6f649e77
    • Noam Postavsky's avatar
      Fix #'fun handling inside `labels' (Bug#31792) · e292c097
      Noam Postavsky authored
      * lisp/emacs-lisp/cl.el (labels): Apply the equivalent of the
      cl-labels change from 2015-01-16 "* lisp/emacs-lisp/cl-macs.el: Fix
      last change".
      * test/lisp/emacs-lisp/cl-tests.el (labels-function-quoting): New
      test.
      * lisp/emacs-lisp/cl-macs.el (cl-flet, cl-labels): Improve docstring,
      link to relevant manual page.
      * doc/misc/cl.texi (Function Bindings): Don't imply that function
      cells of symbols are modified by cl-flet.  Don't claim that cl-flet or
      cl-labels affect references of the form (quote FUNC).
      e292c097
  15. 19 Jun, 2018 1 commit
  16. 17 Jun, 2018 2 commits
  17. 16 Jun, 2018 4 commits
    • Noam Postavsky's avatar
      Don't forget to analyze args of lambda lifted functions (Bug#30872) · 6021e1db
      Noam Postavsky authored
      * lisp/emacs-lisp/cconv.el (cconv--convert-funcbody): New function.
      (cconv--convert-function): Extracted from here.
      (cconv-convert): Also use it here, in the lambda lifted case, so that
      mutated args are properly accounted for.
      * test/lisp/emacs-lisp/cconv-tests.el: New test.
      6021e1db
    • Noam Postavsky's avatar
      Fix off by one error in python-mode assertion (Bug#30964) · 05345bab
      Noam Postavsky authored
      * lisp/progmodes/python.el (python-nav-end-of-statement): Don't assert
      that string-start is strictly greater than last-string-end, because
      the string end is a position outside of the string and may therefore
      be the same as the following string's start.
      * test/lisp/progmodes/python-tests.el (python-nav-end-of-statement-2):
      New test.
      05345bab
    • Paul Eggert's avatar
      Fix byte compilation of (eq foo 'default) · e1284341
      Paul Eggert authored
      Backport from master.
      Do not use the symbol ‘default’ as a special marker.
      Instead, use a value that cannot appear in the program,
      improving on a patch proposed by Robert Cochran (Bug#31718#14).
      * lisp/emacs-lisp/bytecomp.el (byte-compile--default-val):
      New constant.
      (byte-compile-cond-jump-table-info)
      (byte-compile-cond-jump-table): Use it instead of 'default.
      * test/lisp/emacs-lisp/bytecomp-tests.el:
      (byte-opt-testsuite-arith-data): Add a test for the bug.
      e1284341
    • Paul Eggert's avatar
      Fix byte compilation of (eq foo 'default) · 9af399fd
      Paul Eggert authored
      Do not use the symbol ‘default’ as a special marker.
      Instead, use a value that cannot appear in the program,
      improving on a patch proposed by Robert Cochran (Bug#31718#14).
      * lisp/emacs-lisp/bytecomp.el (byte-compile--default-val):
      New constant.
      (byte-compile-cond-jump-table-info)
      (byte-compile-cond-jump-table): Use it instead of 'default.
      * test/lisp/emacs-lisp/bytecomp-tests.el:
      (byte-opt-testsuite-arith-data): Add a test for the bug.
      9af399fd
  18. 14 Jun, 2018 1 commit
    • Damien Cassou's avatar
      Fix pretty-printing empty objects as null · 8cb9beb3
      Damien Cassou authored
      * lisp/json.el (json-pretty-print): Force distinction between empty
        objects and null.
      (json-encode-list): Remove responsibility to print "null" as this
      value is not a list.
      (json-encode): Give higher precedence to lists so that an empty list
      is printed as an empty object, not as "null".
      
      * test/lisp/json-tests.el (test-json-encode): Add many tests to check
        the behavior of pretty-printing.
      8cb9beb3
  19. 10 Jun, 2018 1 commit
  20. 09 Jun, 2018 1 commit
    • Eli Zaretskii's avatar
      Update Unicode data files to version 11.0.0 of Unicode · 36bbdfc0
      Eli Zaretskii authored
      * admin/unidata/UnicodeData.txt:
      * admin/unidata/SpecialCasing.txt:
      * admin/unidata/NormalizationTest.txt:
      * admin/unidata/copyright.html:
      * admin/unidata/BidiMirroring.txt:
      * admin/unidata/BidiBrackets.txt: Import from Unicode 11.0.
      * admin/notes/unicode: Update the URL for OTF script tags.
      
      * lisp/international/mule-cmds.el (ucs-names): Update unused ranges.
      * lisp/international/fontset.el (script-representative-chars): Add
      hanifi-rohingya, old-sogdian, sogdian, dogra, gunjala-gondi,
      makasar, and medefaidrin.
      (otf-script-alist): Add old-hungarian.
      * lisp/international/characters.el (tbl): Add syntax entries for
      Supplemental Mathematical Operators, Miscellaneous Symbols and
      Arrows, and Supplemental Punctuation.
      Update the list of wide characters.
      
      * test/lisp/international/ucs-normalize-tests.el
      (ucs-normalize-tests--failing-lines-part2): Update to match
      admin/unidata/NormalizationTest.txt.
      
      * doc/lispref/nonascii.texi (Character Properties): Update the
      reference to the Unicode Standard.
      * doc/misc/efaq.texi (New in Emacs 26):
      * etc/NEWS: Mention compatibility with Unicode 11.0.
      36bbdfc0
  21. 07 Jun, 2018 1 commit
  22. 05 Jun, 2018 8 commits
  23. 04 Jun, 2018 1 commit
    • Gemini Lasswell's avatar
      Make cl-print respect print-level and print-length (bug#31559) · 5d448ca9
      Gemini Lasswell authored
      * lisp/emacs-lisp/cl-print.el (cl-print--depth): New variable.
      (cl-print-object) <cons>: Print ellipsis if printing depth greater
      than 'print-level' or length of list greater than 'print-length'.
      (cl-print-object) <vector>: Truncate printing with ellipsis if
      vector is longer than 'print-length'.
      (cl-print-object) <cl-structure-object>: Truncate printing with
      ellipsis if structure has more slots than 'print-length'.
      (cl-print-object) <:around>: Bind 'cl-print--depth'.
      * test/lisp/emacs-lisp/cl-print-tests.el
      (cl-print-tests-3, cl-print-tests-4): New tests.
      
      (cherry picked from commit 0f48d18f)
      5d448ca9
  24. 03 Jun, 2018 1 commit
    • Noam Postavsky's avatar
      Fix cl-print for circular sublists (Bug#31146) · 9552485c
      Noam Postavsky authored
      * lisp/emacs-lisp/cl-print.el (cl-print-object) <cons>: Push each
      element of list being printed onto cl-print--currently-printing.
      * test/lisp/emacs-lisp/cl-print-tests.el (cl-print-circle-2): New
      test.
      
      (cherry picked from commit b8aa7ecf)
      9552485c