1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-25 19:11:56 +00:00
Commit Graph

2288 Commits

Author SHA1 Message Date
Michael Albinus
84d066a73f Fix Bug#30293
* lisp/net/tramp-archive.el (tramp-archive-file-name-for-operation):
New defsubst.
(tramp-archive-file-name-archive, tramp-archive-file-name-localname):
New defuns.
(tramp-archive-file-name-handler, tramp-archive-dissect-file-name)
(tramp-archive-handle-not-implemented): Use them.  (Bug#30293)

* test/lisp/net/tramp-archive-tests.el (tramp-archive-test-directory):
New defconst.
(tramp-archive-test01-file-name-syntax): Extend test.
(tramp-archive-test05-expand-file-name-non-archive-directory):
New test.  (Bug#30293)

* test/lisp/net/tramp-archive-resources/foo.iso/foo: New file.
2018-01-31 15:02:46 +01:00
Stefan Monnier
2b0bcbbaa6 * test/lisp/mouse-tests.el: Fix tests broken by mouse.el change
* test/lisp/mouse-tests.el (bug23288-use-return-value)
(bug23288-translate-to-mouse-2): Don't rely as much on details of the
implementation, so it also works with the new code.
2018-01-30 17:37:20 -05:00
Michael Albinus
386c2ebb58 Simplify last change in tramp-archive 2018-01-30 20:09:20 +01:00
Michael Albinus
fd6972ac07 Fix Bug#30262
* lisp/net/tramp-archive.el (tramp-archive-hash): Document (changed)
layout.
(tramp-archive-dissect-file-name): Merge with
`tramp-archive-local-copy', which has been removed by this.
(tramp-archive-cleanup-hash): Adapt to changed
`tramp-archive-hash'.  (Bug#30262)

* lisp/net/tramp-gvfs.el (tramp-gvfs-unmount): Flush
connection properties.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test01-file-name-syntax)
(tramp-archive-test02-file-name-dissect)
(tramp-archive-test16-directory-files)
(tramp-archive-test26-file-name-completion): Adapt to changed
test file.
(tramp-archive-test08-file-local-copy): Be more robust in cleanup.

* test/lisp/net/tramp-archive-resources/foo.tar.gz: Adapt to
extended test.
2018-01-30 17:34:02 +01:00
tino calancha
ea8c0e1b9e * test/lisp/simple-tests.el (simple-tests-async-shell-command-30280): Add test 2018-01-29 22:31:50 +09:00
Glenn Morris
17bf85938c ; * test/lisp/emacs-lisp/cl-preloaded-tests.el: Fix copyright notice. 2018-01-28 18:07:03 -08:00
Philipp Stephani
614e9b322e Add missing module types to cl--typeof-types.
* lisp/emacs-lisp/cl-preloaded.el (cl--typeof-types): Add module
types.

* test/src/emacs-module-tests.el (emacs-module-tests--generic): New
helper function.
(module-function-object, mod-test-userptr-fun-test): Test that type
dispatching works with module types.
2018-01-28 20:39:58 +01:00
Philipp Stephani
d0733704b3 Test that module functions are functions.
* test/src/emacs-module-tests.el (module-function-object): Verify that
a module function is treated as a function.
2018-01-28 20:20:07 +01:00
Philipp Stephani
9a747b3554 Prevent name clashes between CL structures and builtin types
* lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Don't allow
structures with the same names as builtin types.
(cl--typeof-types, cl--all-builtin-types): Move from cl-generic.el and
rename.
(cl--struct-name-p): New helper function.

* lisp/emacs-lisp/cl-macs.el (cl-defstruct): Don't allow structures
with the same names as builtin types.

* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-generalizer)
(cl-generic-generalizers): Adapt to name change.

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-defstruct/builtin-type):
* test/lisp/emacs-lisp/cl-preloaded-tests.el
(cl-struct-define/builtin-type): New unit tests.

* etc/NEWS: Document changed behavior.
2018-01-28 19:21:47 +01:00
Noam Postavsky
36c8128e74 Fix round tripping of read->print for symbols with strange quotes
Since 2017-07-22 "Signal error for symbol names with strange
quotes (Bug#2967)", symbol names beginning with certain quote
characters require an escaping backslash.  However, the corresponding
change for printing missed, so that (eq (read (prin1-to-string SYM))
SYM) does not give `t' for such symbols.
* src/character.c (confusable_symbol_character_p): New function,
extracted from test `read1'.
* src/lread.c (read1): Use it.
* src/print.c (print_object): Use it to print a backslash for symbols
starting with characters that `read1' requires to be escaped.
* test/src/print-tests.el (print-read-roundtrip): New test.
* etc/NEWS.26:
* etc/NEWS: Clarify the announcement for the earlier reader
change (Bug#30217).
2018-01-28 10:43:01 -05:00
Simen Heggestøyl
69a30e8b87 Shorten CSS hex colors when possible
* lisp/textmodes/css-mode.el (css--format-hex): New function for
shortening CSS hex colors when possible.
(css--named-color-to-hex, css--rgb-to-named-color-or-hex): Use it.

* test/lisp/textmodes/css-mode-tests.el (css-test-format-hex): New
tests for 'css--format-hex'.
(css-test-named-color-to-hex, css-test-cycle-color-format): Adjust for
the changes to 'css--named-color-to-hex' and
'css--rgb-to-named-color-or-hex'.
2018-01-28 15:38:27 +01:00
Simen Heggestøyl
97defdfc36 Fix off-by-one error in 'css--hex-to-rgb'
* lisp/textmodes/css-mode.el (css--hex-to-rgb): Fix off-by-one error.

* test/lisp/textmodes/css-mode-tests.el (css-test-hex-to-rgb): Add
regression tests for the above fix.
2018-01-28 13:28:28 +01:00
tino calancha
9824885fab Code refactoring assoc-delete-all assq-delete-all
* lisp/subr.el (assoc-delete-all): Add optional arg TEST.
(assq-delete-all): Use assoc-delete-all.

* test/lisp/subr-tests.el (subr-tests--assoc-delete-all)
(subr-tests--assq-delete-all): New tests.

* doc/lispref/lists.texi (Association Lists): Document
assoc-delete-all in the manual.

; * etc/NEWS: Announce assoc-delete-all.
2018-01-28 13:05:54 +09:00
Simen Heggestøyl
26ee371d6d Fix indentation bug with multi-line CSS values
* lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
multi-line CSS values that are separated by spaces.

* test/manual/indent/css-mode.css: Add a test case for the fix.
2018-01-27 18:18:19 +01:00
Glenn Morris
e3b46f0b9e ; * test/lisp/textmodes/fill-tests.el: Fix copyright years. 2018-01-26 19:18:23 -08:00
Noam Postavsky
559f160616 Raise limit of regexp repetition (Bug#24914)
* src/regex.h (RE_DUP_MAX): Raise limit to 2^16-1.
* etc/NEWS: Announce it.
* doc/lispref/searching.texi (Regexp Backslash): Document it.
* test/src/regex-tests.el (regex-repeat-limit): Test it.

* src/regex.h (reg_errcode_t): Add REG_ESIZEBR code.
* src/regex.c (re_error_msgid): Add corresponding entry.
(GET_INTERVAL_COUNT): Return it instead of the more generic REG_EBADBR
when encountering a repetition greater than RE_DUP_MAX.

* lisp/isearch.el (isearch-search): Don't convert errors starting with
"Invalid" into "incomplete".  Such errors are not incomplete, in the
sense that they cannot be corrected by appending more characters to
the end of the regexp.  The affected error messages are:

- REG_BADPAT "Invalid regular expression"
  - \\(?X:\\) where X is not a legal group number
  - \\_X where X is not < or >

- REG_ECOLLATE "Invalid collation character"
  - There is no code to throw this.

- REG_ECTYPE "Invalid character class name"
  - [[:foo:] where foo is not a valid class name

- REG_ESUBREG "Invalid back reference"
  - \N where N is referenced before matching group N

- REG_BADBR "Invalid content of \\{\\}"
  - \\{N,M\\} where N < 0, M < N, M or N larger than max
  - \\{NX where X is not a digit or backslash
  - \\{N\\X where X is not a }

- REG_ERANGE "Invalid range end"
  - There is no code to throw this.

- REG_BADRPT "Invalid preceding regular expression"
  - We never throw this.  It would usually indicate a "*" with no
    preceding regexp text, but Emacs allows that to match a literal
    "*".
2018-01-26 20:49:44 -05:00
Noam Postavsky
f5357b1ca4 Merge from emacs-26
463f96b481 * doc/lispref/searching.texi: Document regexp repetition l...
08a6195571 ; test/README: Document TEST_LOAD_EL parameter.
7bbea90b1a * src/syntax.c (char-syntax): Warn about ignoring text pro...
50fcbb5f61 ; * src/process.c (Fprocess_contact): Fix docstring typo.
81ae9c8c05 Load mm-util as needed for url-file and url-data (Bug#30258)
5a1ee67ae1 Another minor copyedit in the manual's "Scroll Bars"
226a651e9e Minor fix in documentation of 'equal'
b26786c8d9 * lisp/dired-x.el (dired-guess-shell-alist-user): Doc fix....
5699a824f0 Minor rewording in Emacs manual's "Help Mode" node
f35ff0156e Fixes for Emacs manual in frames.texi
6cd4e8dcc5 * doc/misc/cl.texi (Efficiency Concerns): Fix 2012-10-27 t...
1412cf3edd Fix a few issues with latest GTK scaling changes
59db8dca03 Use scaled coordinates when calling into GTK
2892f05792 Scale monitor dimensions obtained from GTK
2018-01-26 20:45:38 -05:00
Noam Postavsky
08a6195571 ; test/README: Document TEST_LOAD_EL parameter. 2018-01-26 19:53:09 -05:00
Noam Postavsky
81ae9c8c05 Load mm-util as needed for url-file and url-data (Bug#30258)
* lisp/url/url-file.el (url-file):
* lisp/url/url-misc.el (url-data): Require `mm-util' before calling
`mm-disable-multibyte'.
* test/lisp/url/url-file-resources/file.txt:
* test/lisp/url/url-file-tests.el:
* test/lisp/url/url-misc-tests.el: New tests.
2018-01-26 19:50:57 -05:00
Andy Moreton
e08f241658 Fix emacs-module-tests to work out of build tree
* test/Makefile.in (test_module_dir): Build the test module library in
a subdirectory of the build directory (not the source tree).
(MODULE_CFLAGS): Fix location of emacs-module.h header file.
(test_module): Move built library out of the source tree.
* test/src/emacs-module-tests.el (mod-test-file): Locate the test module
library relative to the running Emacs executable.
2018-01-26 12:09:42 +02:00
Marcin Borkowski
96de0503cd Merge branch 'fix/bug-20871-cur' 2018-01-24 10:32:40 +01:00
Philipp Stephani
4c998b4e4f Add unit test for Bug#30005.
* test/src/callint-tests.el (call-interactively/embedded-nulls): New
unit test.
2018-01-23 23:41:15 +01:00
Philipp Stephani
2df391c202 Add a regression test for Bug#30004.
* test/src/callint-tests.el
(call-interactively/incomplete-multibyte-sequence): New unit test.
2018-01-22 23:56:21 +01:00
Paul Eggert
35675bb93f Merge from origin/emacs-26
1fc98ed073 ; Spelling fix
bb396a369c Update Org to v9.1.6
fa582153f7 Use text-pixels values only when saving framesets (Bug#30141)
6b01b9475d Minor improvement in section "Pages" of the usere manual
e8c8bd3de2 Minor improvements in user manual
26b8b92e63 Improve the "Mark" chapter of the user manual
759569fe40 Improve the "Buffers" chapter of the user manual
c2e6d121ff * lisp/term.el (term-send-input): Fix text duplication in ...
854a1c0a61 Improve "Buffers" in the user manual

# Conflicts:
#	etc/NEWS
2018-01-22 08:43:54 -08:00
Paul Eggert
1fc98ed073 ; Spelling fix 2018-01-22 08:42:29 -08:00
Michael Albinus
d0fd9809d7 Finish changes in autorevert from commit 530bb2dc68
* lisp/autorevert.el (auto-revert-buffers):
Check `auto-revert-timer' being a timerp.

* test/lisp/filenotify-tests.el (file-notify-test04-autorevert):
Adapt test in order to cover changed behavior of autorevert.
2018-01-22 09:12:16 +01:00
Juri Linkov
afba4ccb8b New function read-answer (bug#30073)
* lisp/emacs-lisp/map-ynp.el (read-answer): New function.
(read-answer-short): New defcustom.

* lisp/dired.el (dired-delete-file): Use read-answer.
(dired--yes-no-all-quit-help): Remove function.
(dired-delete-help): Remove defconst.

* lisp/subr.el (assoc-delete-all): New function.
2018-01-21 23:45:43 +02:00
Simen Heggestøyl
cff45e6f4e Parse percent values in CSS alpha components
* lisp/textmodes/css-mode.el (css--rgb-color): Support parsing percent
values in the alpha component.

* test/lisp/textmodes/css-mode-tests.el
(css-test-rgb-to-named-color-or-hex, css-test-rgb-parser): Update for
the above changes.
2018-01-21 14:20:56 +01:00
Michael Albinus
f0c1277af5 Extend tramp-test02-file-name-dissect* tests
* test/lisp/net/tramp-tests.el (tramp-test02-file-name-dissect)
(tramp-test02-file-name-dissect-simplified)
(tramp-test02-file-name-dissect-separate): Test also
`tramp-default-method-alist', `tramp-default-user-alist' and
`tramp-default-host-alist'.
2018-01-21 00:14:33 +01:00
Glenn Morris
60d5a13d28 Merge from origin/emacs-26
cfc94fd (origin/emacs-26) Don't mention 'vc-stay-local' in the user m...
8ce430b Fix a typo in calendar.texi
bb748b3 Minor improvement in wording of the Emacs manual
b603aff Revert "Fix tempfile creation when byte compiling"
4fd446e Fix tempfile creation when byte compiling
7f48a11 Improve the Emacs manual as suggested in emacs-manual-bugs
728ded0 * lisp/emacs-lisp/bytecomp.el: Tweak last change
c6c05e2 Unbreak building Emacs on FreeBSD
a41ad3d Don't unnecessarily use non-ASCII characters in C sources
c28d4b6 Portability fixes in emacs-module-tests
1d50c18 Add tests for term.el
2018-01-20 08:23:30 -08:00
Michael Albinus
530bb2dc68 Use file notification in autorevert also for recreated files
* lisp/autorevert.el (auto-revert-mode)
(global-auto-revert-mode, auto-revert-notify-add-watch)
(auto-revert-notify-handler, auto-revert-handler): Do not use
buffer local `auto-revert-use-notify' anymore.

* test/lisp/autorevert-tests.el
(auto-revert-test02-auto-revert-deleted-file): Adapt test in
order to check, that file notification is reenabled when possible.
2018-01-20 16:26:02 +01:00
Michael Albinus
35e4a0def9 * test/lisp/filenotify-tests.el (file-notify-test03-events): Cleanup subtests. 2018-01-19 14:59:48 +01:00
Eli Zaretskii
c28d4b6d8e Portability fixes in emacs-module-tests
* test/Makefile.in (abs_top_srcdir): Add variable, needed by
CPPFLAGS.
* test/data/emacs-module/mod-test.c: Include <limits.h>.
(pT, pZ, T_TYPE, Z_TYPE): Compatibility macros, for systems that
don't support %td and %zu format specs.
(emacs_module_init): Use compatibility macros to make the error
messages print meaningful values (and avoid compiler warnings).
2018-01-19 11:20:12 +02:00
Noam Postavsky
1d50c185f0 Add tests for term.el
* lisp/term.el (term-mode): Add `name' attribute to
window-adjust-process-window-size-function value, so that it can be
removed easily by tests.
* test/lisp/term-tests.el: New tests.
2018-01-18 22:17:40 -05:00
Glenn Morris
6213ce5544 Merge from origin/emacs-26
76040d1 (origin/emacs-26) Handle case-insensitive filenames for load-...
0c9b050 ; * test/file-organization.org: Fix typo.
2018-01-18 17:17:06 -08:00
Glenn Morris
d5b70d8330 Merge from origin/emacs-26
779b2ac Use recommended long options syntax in man page
c433e87 An overdue update of GNUstep emacs.tiff
188a9d9 Add some test skip conditions
2018-01-18 17:17:06 -08:00
Noam Postavsky
76040d1eae Handle case-insensitive filenames for load-path shadows (Bug#5845)
* lisp/emacs-lisp/shadow.el (load-path-shadows-find): Check for
shadowing with case-insensitive matching for files of case-insensitive
directories (as determined by `file-name-case-insensitive-p').
* test/lisp/emacs-lisp/shadow-tests.el: New test.
* test/lisp/emacs-lisp/shadow-resources/p1/foo.el:
* test/lisp/emacs-lisp/shadow-resources/p2/FOO.el: New test files.
2018-01-18 16:26:52 -05:00
Noam Postavsky
0c9b05003f ; * test/file-organization.org: Fix typo. 2018-01-18 16:26:50 -05:00
Glenn Morris
188a9d99b8 Add some test skip conditions
* test/lisp/vc/vc-bzr-tests.el (vc-bzr-test-bug9726)
(vc-bzr-test-bug9781): Skip if bzr is faulty.
* test/src/thread-tests.el: Skip if not compiled with threads.
2018-01-17 13:41:07 -05:00
Glenn Morris
9bd8f01cd6 Merge from origin/emacs-26
2c0cfa6455 * ChangeLog.3: Update
4387bb44ae Update authors
bce51bd6f7 * lisp/gnus/message.el (message-do-auto-fill): Prevent do-...
bd2a2a1e84 Improve documentation of etags
7ba75b9637 Teach etags new interpreters for some languages
1f7f03742d * lisp/emacs-lisp/generator.el (iter-defun): Add 'doc-stri...
dbb4aac212 * lisp/emacs-lisp/syntax.el (syntax-propertize): Fix bug#2...
80463a43da Improve documentation of fill-separate-heterogeneous-words...
4bd2416d55 Fix documentation of some x-* functions
9c2b11484f Inherit query-on-exit flag to stderr process (Bug#30031)
3efb1e7def Fix Bug#30057
a9b884c60f Tag some unstable tests, and skip by default (bug#24503)

# Conflicts:
#	test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
2018-01-15 13:53:40 -08:00
Marcin Borkowski
521470987b Add simple tests for the `fill-polish-nobreak-p' function
* test/lisp/textmodes/fill-tests.el:
(fill-test-no-fill-polish-nobreak-p): New test
2018-01-15 06:25:22 +01:00
Eli Zaretskii
7ba75b9637 Teach etags new interpreters for some languages
* lib-src/etags.c (Erlang_interpreters, Lua_interpreters)
(Prolog_interpreters, Python_interpreters, Ruby_interpreters): New
static variables.
(lang_names): Use them to set interpreters for Erlang, Lua,
Prolog, Python, and Ruby.
(find_entries): Support "/usr/bin/env FOO" form of specifying an
interpreter.

* test/manual/etags/perl-src/htlmify-cystic: Modify the has-bang
line to test the "env FOO" interpreter spec.  (Bug#30075)
* 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: Adapt to latest changes in test
files.
2018-01-11 18:35:12 +02:00
Philipp Stephani
9c2b11484f Inherit query-on-exit flag to stderr process (Bug#30031)
* src/process.c (Fmake_process): Have the pipe process honor the
parent's query-on-exit flag.

* test/src/process-tests.el (make-process/noquery-stderr): New test.
2018-01-10 15:43:52 +01:00
Michael Albinus
3efb1e7def Fix Bug#30057
* test/lisp/filenotify-tests.el (file-notify--test-tmpdir): New defvar.
(file-notify--test-cleanup, file-notify--test-make-temp-name)
(file-notify-test01-add-watch, file-notify-test03-events)
(file-notify-test05-file-validity)
(file-notify-test09-watched-file-in-watched-dir)
(file-notify-test10-sufficient-resources): Use it.  (Bug#30057)
2018-01-10 13:39:17 +01:00
Glenn Morris
a9b884c60f Tag some unstable tests, and skip by default (bug#24503)
* Makefile.in (check-all): New phony target.
* test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE):
Also skip unstable tests.
(SELECTOR_ALL): New variable.
(check-all): New phony target.
* test/lisp/emacs-lisp/eieio-tests/eieio-test-methodinvoke.el
(eieio-test-method-order-list-6):
* test/lisp/emacs-lisp/eieio-tests/eieio-tests.el
(eieio-test-37-obsolete-name-in-constructor):
Mark as unstable rather than skipping on hydra.nixos.org.
2018-01-09 19:59:04 -08:00
Tino Calancha
a0365437c9 cl-loop: Add missing guard condition
Consider the expansion of `cl-loop' with a `for' clause and more
than one internal variables, X, Y, processed in parallel.
Each step updates X and Y right after update the loop variable, K; if
either X or Y depend on K, then some forms of the body are
evaluated with the wrong K (Bug#29799).

For instance, consider the following code:
(cl-loop for k below 2
         for x = (progn (message "k = %d" k) 1)
         and y = 1)

This code should show in *Messages*:
k = 0
k = 1

Instead, the code shows:
k = 0
k = 1
k = 2

To prevent this we must ensure that the loop condition is still
satisfied right after update the loop variable.
In the macro expansion of the example above, right after:
(setq k (+ k 1))

evaluate the rest of the body forms iif the condition
(< k 2)
is still valid.

* lisp/emacs-lisp/cl-macs.el (cl--loop-guard-cond): New variable.
(cl--parse-loop-clause): Set it non-nil if the loop contains
a for/as clause.
(cl-loop): After update the loop variable, evaluate the remaining of
the body forms just if the loop condition is still valid (Bug#29799).

* test/lisp/emacs-lisp/cl-macs-tests.el (cl-macs-loop-for-as-equals-and):
New test.
2018-01-08 19:15:28 +09:00
Michael Albinus
95d0be0ae5 Make tramp-tests.el more robust on w32
* test/lisp/net/tramp-tests.el (tramp-test21-file-links):
Do not call `make-symbolic-link' on w32.
(tramp-test36-find-backup-file-name): Call also
`convert-standard-filename' due to w32.
(tramp--test-windows-nt): New defun.
(tramp-test42-auto-load, tramp-test42-delay-load)
(tramp-test42-recursive-load, tramp-test42-remote-load-path):
Quote command due to w32.
2018-01-07 18:50:06 +01:00
Philipp Stephani
f352ea6efd ; Adapt a unit test to a recent change
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-tests--old-style-backquotes): Fix expected error message.
2018-01-07 16:47:17 +01:00
Philipp Stephani
378be8df8d Improve error message for old-style backquotes
* src/lread.c (load_error_old_style_backquotes): Improve error message
if no file is being loaded.

* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
Adapt test.
2018-01-07 14:25:12 +01:00
Philipp Stephani
ddb74b2027 Add new variable to force new-style backquote interpretation.
* src/lread.c (syms_of_lread): Add new variable
'force-new-style-backquotes'.
(read_internal_start): Use it.

* test/src/lread-tests.el (lread-tests--force-new-style-backquotes):
New test.

* etc/NEWS: Document new variable.
2018-01-07 14:16:02 +01:00