<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/test/src, branch master</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>; Fix recently-added treesit test</title>
<updated>2026-04-05T06:52:56+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2026-04-05T06:52:56+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=93f40d1bb7ab12d971e87ac2786135487d2ee4ed'/>
<id>93f40d1bb7ab12d971e87ac2786135487d2ee4ed</id>
<content type='text'>
* test/src/treesit-tests.el (treesit-query-node-only-and-grouped):
Remove unused variables.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/src/treesit-tests.el (treesit-query-node-only-and-grouped):
Remove unused variables.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix treesit-query-capture's NODE-ONLY param</title>
<updated>2026-04-05T05:35:35+00:00</updated>
<author>
<name>Yuan Fu</name>
</author>
<published>2026-04-05T05:33:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=45d7678ca3717ebcb422145e5705de49df881010'/>
<id>45d7678ca3717ebcb422145e5705de49df881010</id>
<content type='text'>
Before the fix, if user uses the NODE-ONLY option, we don't keep
the capture names in the results, then predicates won't work
because they can't reference capture names.

* src/treesit.c (query_capture_remove_capture_name): New
function.
(Ftreesit_query_capture): Use the new function to remove capture
names AFTER running the predicate.
* test/src/treesit-tests.el:
(treesit-query-node-only-and-grouped): New test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Before the fix, if user uses the NODE-ONLY option, we don't keep
the capture names in the results, then predicates won't work
because they can't reference capture names.

* src/treesit.c (query_capture_remove_capture_name): New
function.
(Ftreesit_query_capture): Use the new function to remove capture
names AFTER running the predicate.
* test/src/treesit-tests.el:
(treesit-query-node-only-and-grouped): New test.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add predicate for initial_terminal</title>
<updated>2026-03-26T14:19:56+00:00</updated>
<author>
<name>Basil L. Contovounesios</name>
</author>
<published>2026-03-18T11:42:28+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=d78000728351986b0083013728dc3ef366112c0b'/>
<id>d78000728351986b0083013728dc3ef366112c0b</id>
<content type='text'>
This introduces the predicate frame-initial-p, which uses
struct frame.output_method or struct terminal.type to detect
initial_terminal without relying on its name (bug#80629).
For some prior discussion, see:
https://lists.gnu.org/r/emacs-devel/2019-12/msg00480.html
https://lists.gnu.org/r/emacs-devel/2020-01/msg00120.html

* doc/lispref/frames.texi (Frames): Document frame-initial-p.
(Finding All Frames): Fix grammar.
* etc/NEWS (Lisp Changes in Emacs 31.1): Announce frame-initial-p.
* lisp/desktop.el (desktop--check-dont-save):
* lisp/emacs-lisp/debug.el (debug):
* lisp/frameset.el (frameset-restore):
* lisp/menu-bar.el (menu-bar-update-buffers):
* lisp/xt-mouse.el (turn-on-xterm-mouse-tracking-on-terminal):
Use frame-initial-p instead of checking the "initial_terminal" name.
* lisp/emacs-lisp/byte-opt.el: Mark frame-initial-p as error-free.

* src/pgtkterm.c (pgtk_focus_changed): Use IS_DAEMON in place of
Fdaemonp, thus also accepting a named daemon session.
* src/terminal.c (decode_tty_terminal): Clarify commentary.
(Fframe_initial_p): New function.
(syms_of_terminal): Expose it.
(init_initial_terminal): Update commentary now that
menu-bar-update-buffers uses frame-initial-p (bug#53740).

* test/lisp/xt-mouse-tests.el (with-xterm-mouse-mode): Simulate the
lack of an initial terminal by overriding frame-initial-p now
that turn-on-xterm-mouse-tracking-on-terminal uses it.
* test/src/terminal-tests.el: New file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This introduces the predicate frame-initial-p, which uses
struct frame.output_method or struct terminal.type to detect
initial_terminal without relying on its name (bug#80629).
For some prior discussion, see:
https://lists.gnu.org/r/emacs-devel/2019-12/msg00480.html
https://lists.gnu.org/r/emacs-devel/2020-01/msg00120.html

* doc/lispref/frames.texi (Frames): Document frame-initial-p.
(Finding All Frames): Fix grammar.
* etc/NEWS (Lisp Changes in Emacs 31.1): Announce frame-initial-p.
* lisp/desktop.el (desktop--check-dont-save):
* lisp/emacs-lisp/debug.el (debug):
* lisp/frameset.el (frameset-restore):
* lisp/menu-bar.el (menu-bar-update-buffers):
* lisp/xt-mouse.el (turn-on-xterm-mouse-tracking-on-terminal):
Use frame-initial-p instead of checking the "initial_terminal" name.
* lisp/emacs-lisp/byte-opt.el: Mark frame-initial-p as error-free.

* src/pgtkterm.c (pgtk_focus_changed): Use IS_DAEMON in place of
Fdaemonp, thus also accepting a named daemon session.
* src/terminal.c (decode_tty_terminal): Clarify commentary.
(Fframe_initial_p): New function.
(syms_of_terminal): Expose it.
(init_initial_terminal): Update commentary now that
menu-bar-update-buffers uses frame-initial-p (bug#53740).

* test/lisp/xt-mouse-tests.el (with-xterm-mouse-mode): Simulate the
lack of an initial terminal by overriding frame-initial-p now
that turn-on-xterm-mouse-tracking-on-terminal uses it.
* test/src/terminal-tests.el: New file.
</pre>
</div>
</content>
</entry>
<entry>
<title>* test/src/charset-tests.el (charset-tests-define-charset): New.</title>
<updated>2026-03-21T17:42:01+00:00</updated>
<author>
<name>Helmut Eller</name>
</author>
<published>2026-03-07T14:28:01+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=e427d552848838581391737087e78b0d0323bcba'/>
<id>e427d552848838581391737087e78b0d0323bcba</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/scratch/error-API'</title>
<updated>2026-03-15T21:17:21+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2026-03-15T21:17:21+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=e2004eb56f8963b51cf05f1184e2a3ac88848b12'/>
<id>e2004eb56f8963b51cf05f1184e2a3ac88848b12</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix 'comp--func-unique-in-cu-p' to match docstring</title>
<updated>2026-03-12T08:08:08+00:00</updated>
<author>
<name>Julian Scheid</name>
</author>
<published>2026-03-12T08:07:08+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=f15ad18a1446b492188d4f9c83f113b8c7b66a8e'/>
<id>f15ad18a1446b492188d4f9c83f113b8c7b66a8e</id>
<content type='text'>
* lisp/emacs-lisp/comp.el (comp--func-unique-in-cu-p): Check
only the callee name instead of requiring global uniqueness.
* test/src/comp-resources/comp-test-direct-call.el: New file.
* test/src/comp-resources/comp-test-direct-call-dup.el: New file.
* test/src/comp-tests.el (comp-tests-has-direct-call-p)
(comp-tests-direct-call-with-lambdas)
(comp-tests-direct-call-with-duplicate-names): New tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/emacs-lisp/comp.el (comp--func-unique-in-cu-p): Check
only the callee name instead of requiring global uniqueness.
* test/src/comp-resources/comp-test-direct-call.el: New file.
* test/src/comp-resources/comp-test-direct-call-dup.el: New file.
* test/src/comp-tests.el (comp-tests-has-direct-call-p)
(comp-tests-direct-call-with-lambdas)
(comp-tests-direct-call-with-duplicate-names): New tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix negated equality assumptions (bug#80327)</title>
<updated>2026-03-11T16:09:57+00:00</updated>
<author>
<name>Andrea Corallo</name>
</author>
<published>2026-03-11T15:54:46+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=40f4fc1d8c5de4348dc3e9f645d0897f586de2c3'/>
<id>40f4fc1d8c5de4348dc3e9f645d0897f586de2c3</id>
<content type='text'>
* lisp/emacs-lisp/comp.el (comp--add-cond-cstrs): Skip
negated equality assumptions only for relational non-immediate
operands. Keep immediate false-branch constraints.
* test/src/comp-resources/comp-test-funcs.el
(comp-test-80327-hash, comp-test-80327-f): Add reproducer.
* test/src/comp-tests.el (comp-tests-bug-80327): Add regression
test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lisp/emacs-lisp/comp.el (comp--add-cond-cstrs): Skip
negated equality assumptions only for relational non-immediate
operands. Keep immediate false-branch constraints.
* test/src/comp-resources/comp-test-funcs.el
(comp-test-80327-hash, comp-test-80327-f): Add reproducer.
* test/src/comp-tests.el (comp-tests-bug-80327): Add regression
test.
</pre>
</div>
</content>
</entry>
<entry>
<title>test subdirectory: Use new error-API</title>
<updated>2026-03-10T14:48:22+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2026-03-10T02:40:31+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6d8b3d1077278b5c22652c796d3d878880cca1f3'/>
<id>6d8b3d1077278b5c22652c796d3d878880cca1f3</id>
<content type='text'>
* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--run-maybe-unsupported-function): Remove dummy branch in
`condition-case`.
* test/lisp/arc-mode-tests.el (define-arc-mode-test-on-type):
Use `error-slot-value`.

* test/src/process-tests.el (process-tests--ignore-EMFILE):
* test/src/filelock-tests.el (filelock-tests-unlock-spoiled)
(filelock-tests-kill-buffer-spoiled):
* test/lisp/vc/vc-git-tests.el (vc-git-test--run):
* test/lisp/proced-tests.el (proced--assert-process-valid-cpu-refinement):
* test/lisp/emacs-lisp/pp-tests.el (pp-tests--sanity):
* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-with-normal-env)
(edebug-tests-post-command):
* test/lisp/autorevert-tests.el (auto-revert--deftest-remote):
* test/infra/android/test-controller.el (ats-connect):
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/lisp/vc/vc-tests/vc-tests.el
(vc-test--run-maybe-unsupported-function): Remove dummy branch in
`condition-case`.
* test/lisp/arc-mode-tests.el (define-arc-mode-test-on-type):
Use `error-slot-value`.

* test/src/process-tests.el (process-tests--ignore-EMFILE):
* test/src/filelock-tests.el (filelock-tests-unlock-spoiled)
(filelock-tests-kill-buffer-spoiled):
* test/lisp/vc/vc-git-tests.el (vc-git-test--run):
* test/lisp/proced-tests.el (proced--assert-process-valid-cpu-refinement):
* test/lisp/emacs-lisp/pp-tests.el (pp-tests--sanity):
* test/lisp/emacs-lisp/edebug-tests.el (edebug-tests-with-normal-env)
(edebug-tests-post-command):
* test/lisp/autorevert-tests.el (auto-revert--deftest-remote):
* test/infra/android/test-controller.el (ats-connect):
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix `signal` calls where the data argument is not a list</title>
<updated>2026-03-10T04:13:31+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2026-03-09T03:26:58+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=ea5f15d09642435ecb645fc5dc7b84cc047ba8e6'/>
<id>ea5f15d09642435ecb645fc5dc7b84cc047ba8e6</id>
<content type='text'>
* test/src/thread-tests.el (threads-join-error):
* test/src/emacs-module-resources/mod-test.c (Fmod_test_signal):
* src/print.c (print_bind_overrides):
* lisp/url/url-future.el (url-future-finish, url-future-errored)
(url-future-call, url-future-cancel): Make sure signal's data is a list.

* test/src/emacs-module-tests.el (mod-test-non-local-exit-signal-test):
Adjust accordingly.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/src/thread-tests.el (threads-join-error):
* test/src/emacs-module-resources/mod-test.c (Fmod_test_signal):
* src/print.c (print_bind_overrides):
* lisp/url/url-future.el (url-future-finish, url-future-errored)
(url-future-call, url-future-cancel): Make sure signal's data is a list.

* test/src/emacs-module-tests.el (mod-test-non-local-exit-signal-test):
Adjust accordingly.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert "Repair serious breakage in the batch tests."</title>
<updated>2026-03-04T18:24:52+00:00</updated>
<author>
<name>Michael Albinus</name>
</author>
<published>2026-03-04T18:24:52+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=fedf45ca6337788717b2e7490fc4ef7b85195b61'/>
<id>fedf45ca6337788717b2e7490fc4ef7b85195b61</id>
<content type='text'>
This reverts commit feac53141577161c32a7a6dfe75399a5ae98a7c1.

This patch has deactivated 253 test cases without a sufficient reasoning.
Instead it speaks about a shotgun in its commite message.

The patch is reverted because

- It hasn't been discussed on emacs-devel. It should have, because it is
  a serious change in our infrastructure (new official tag :nobatch). Any
  documentation of this change, for example in test/README, is missing.

- The proper way to deactivate such tests would have been

  (skip-when noninteractive)

  Even better to skip for the respective reasons.

- There is no fault report. There is no information about how these tests
  have failed. Since it hasn't been a problem so far for us, nobody will
  work on a fix forever.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This reverts commit feac53141577161c32a7a6dfe75399a5ae98a7c1.

This patch has deactivated 253 test cases without a sufficient reasoning.
Instead it speaks about a shotgun in its commite message.

The patch is reverted because

- It hasn't been discussed on emacs-devel. It should have, because it is
  a serious change in our infrastructure (new official tag :nobatch). Any
  documentation of this change, for example in test/README, is missing.

- The proper way to deactivate such tests would have been

  (skip-when noninteractive)

  Even better to skip for the respective reasons.

- There is no fault report. There is no information about how these tests
  have failed. Since it hasn't been a problem so far for us, nobody will
  work on a fix forever.
</pre>
</div>
</content>
</entry>
</feed>
