<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/test, branch scratch/sort-key</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>New `sort` keyword arguments (bug#69709)</title>
<updated>2024-03-23T13:18:56+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2024-03-19T12:03:47+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=2cef2a91c13d9bdc3129605cbb4dc91261867de4'/>
<id>2cef2a91c13d9bdc3129605cbb4dc91261867de4</id>
<content type='text'>
Add the :key, :lessp, :reverse and :in-place keyword arguments.
The old calling style remains available and is unchanged.

* src/fns.c (sort_list, sort_vector, Fsort):
* src/sort.c (tim_sort):
Add keyword arguments with associated new features.
All callers of Fsort adapted.
* test/src/fns-tests.el (fns-tests--shuffle-vector, fns-tests-sort-kw):
New test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add the :key, :lessp, :reverse and :in-place keyword arguments.
The old calling style remains available and is unchanged.

* src/fns.c (sort_list, sort_vector, Fsort):
* src/sort.c (tim_sort):
Add keyword arguments with associated new features.
All callers of Fsort adapted.
* test/src/fns-tests.el (fns-tests--shuffle-vector, fns-tests-sort-kw):
New test.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add value&lt; (bug#69709)</title>
<updated>2024-03-22T20:50:01+00:00</updated>
<author>
<name>Mattias Engdegård</name>
</author>
<published>2024-03-10T12:18:22+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=72d4e3a9d26c5a19b7263359107eb4bff4527da2'/>
<id>72d4e3a9d26c5a19b7263359107eb4bff4527da2</id>
<content type='text'>
It's a general-purpose polymorphic ordering function, like `&lt;` but
for any two values of the same type.

* src/data.c (syms_of_data): Add the `type-mismatch` error.
* src/fns.c (Fstring_lessp): Extract the bulk of this function to...
(string_cmp): ...this 3-way comparison function, for use elsewhere.
(value_cmp, Fvaluelt): New.
* test/src/fns-tests.el (fns-value&lt;-ordered, fns-value&lt;-unordered)
(fns-value&lt;-type-mismatch, fns-value&lt;-symbol-with-pos)
(fns-value&lt;-circle): New tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It's a general-purpose polymorphic ordering function, like `&lt;` but
for any two values of the same type.

* src/data.c (syms_of_data): Add the `type-mismatch` error.
* src/fns.c (Fstring_lessp): Extract the bulk of this function to...
(string_cmp): ...this 3-way comparison function, for use elsewhere.
(value_cmp, Fvaluelt): New.
* test/src/fns-tests.el (fns-value&lt;-ordered, fns-value&lt;-unordered)
(fns-value&lt;-type-mismatch, fns-value&lt;-symbol-with-pos)
(fns-value&lt;-circle): New tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix vc-git test when no identities are configured</title>
<updated>2024-03-19T20:53:40+00:00</updated>
<author>
<name>Kévin Le Gouguec</name>
</author>
<published>2024-03-18T18:47:59+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=014cd0040275bb2a4d08d392825b4814452275db'/>
<id>014cd0040275bb2a4d08d392825b4814452275db</id>
<content type='text'>
Reported by john muhl &lt;jm@pub.pink&gt;.

* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo): Set
some environment variables (lifted from vc-tests.el) to let
'git commit' compute dummy author and committer identities.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Reported by john muhl &lt;jm@pub.pink&gt;.

* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo): Set
some environment variables (lifted from vc-tests.el) to let
'git commit' compute dummy author and committer identities.
</pre>
</div>
</content>
</entry>
<entry>
<title>* test/lisp/emacs-lisp/comp-cstr-tests.el (comp-cstr-test-93): Add test.</title>
<updated>2024-03-19T10:05:40+00:00</updated>
<author>
<name>Andrea Corallo</name>
</author>
<published>2024-03-19T09:48:18+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=f7f619779c93bb567a1658ef06199fc1816f88fb'/>
<id>f7f619779c93bb567a1658ef06199fc1816f88fb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>(primitive-function): New type</title>
<updated>2024-03-18T13:32:49+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2024-03-17T21:29:02+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=e624bc62752ceb2e60940c5fd9cb6e70611df71c'/>
<id>e624bc62752ceb2e60940c5fd9cb6e70611df71c</id>
<content type='text'>
The type hierarchy and `cl-type-of` code assumed that `subr-primitive`
only applies to functions, but since it also accepts special-forms it makes
it an unsuitable choice since it can't be a subtype of `compiled-function`.
So, use a new type `primitive-function` instead.

* lisp/subr.el (subr-primitive-p): Fix docstring (bug#69832).
(primitive-function-p): New function.

* lisp/emacs-lisp/cl-preloaded.el (primitive-function): Rename
from `subr-primitive` since `subr-primitive-p` means something else.

* src/data.c (Fcl_type_of): Return `primitive-function` instead
of `subr-primitive` for C functions.
(syms_of_data): Adjust accordingly.

* test/src/data-tests.el (data-tests--cl-type-of): Remove workaround.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The type hierarchy and `cl-type-of` code assumed that `subr-primitive`
only applies to functions, but since it also accepts special-forms it makes
it an unsuitable choice since it can't be a subtype of `compiled-function`.
So, use a new type `primitive-function` instead.

* lisp/subr.el (subr-primitive-p): Fix docstring (bug#69832).
(primitive-function-p): New function.

* lisp/emacs-lisp/cl-preloaded.el (primitive-function): Rename
from `subr-primitive` since `subr-primitive-p` means something else.

* src/data.c (Fcl_type_of): Return `primitive-function` instead
of `subr-primitive` for C functions.
(syms_of_data): Adjust accordingly.

* test/src/data-tests.el (data-tests--cl-type-of): Remove workaround.
</pre>
</div>
</content>
</entry>
<entry>
<title>(cl-type-of): New function to return more precise types (bug#69739)</title>
<updated>2024-03-18T13:29:47+00:00</updated>
<author>
<name>Stefan Monnier</name>
</author>
<published>2024-03-12T13:26:24+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=706403f2aa3a306369a0150022da0cba1802ca2b'/>
<id>706403f2aa3a306369a0150022da0cba1802ca2b</id>
<content type='text'>
* src/data.c (Fcl_type_of): New function, extracted from `Ftype_of`.
Make it return more precise types for symbols, integers, and subrs.
(Ftype_of): Use it.
(syms_of_data): Define the corresponding new symbols and defsubr
the new function.

* doc/lispref/objects.texi (Type Predicates): Document it.

* src/comp.c (emit_limple_insn): Use `Fcl_type_of`.

* lisp/emacs-lisp/cl-preloaded.el (subr): Demote it to `atom`.
(subr-native-elisp, subr-primitive): Add `compiled-function` as
parent instead.
(special-form): New type.

* lisp/obsolete/eieio-core.el (cl--generic-struct-tag):
* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-generalizer):
Use `cl-type-of`.
cl--generic--unreachable-types): Update accordingly.

test/src/data-tests.el (data-tests--cl-type-of): New test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* src/data.c (Fcl_type_of): New function, extracted from `Ftype_of`.
Make it return more precise types for symbols, integers, and subrs.
(Ftype_of): Use it.
(syms_of_data): Define the corresponding new symbols and defsubr
the new function.

* doc/lispref/objects.texi (Type Predicates): Document it.

* src/comp.c (emit_limple_insn): Use `Fcl_type_of`.

* lisp/emacs-lisp/cl-preloaded.el (subr): Demote it to `atom`.
(subr-native-elisp, subr-primitive): Add `compiled-function` as
parent instead.
(special-form): New type.

* lisp/obsolete/eieio-core.el (cl--generic-struct-tag):
* lisp/emacs-lisp/cl-generic.el (cl--generic-typeof-generalizer):
Use `cl-type-of`.
cl--generic--unreachable-types): Update accordingly.

test/src/data-tests.el (data-tests--cl-type-of): New test.
</pre>
</div>
</content>
</entry>
<entry>
<title>; Re-apply accidentally reverted commit</title>
<updated>2024-03-17T21:37:28+00:00</updated>
<author>
<name>Kévin Le Gouguec</name>
</author>
<published>2024-02-12T07:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=8d4a8b7dfd0905defac172cc58c2252dc1b39ad7'/>
<id>8d4a8b7dfd0905defac172cc58c2252dc1b39ad7</id>
<content type='text'>
This re-applies:

  2024-03-17 "Fix vc-dir when "remote" Git branch is local"
  (21828f288ef)

reverted as part of the unrelated:

  2024-03-17 "Update modus-themes to their 4.4.0 version"
  (67b0c1c09ea)

The original commit message follows:

Fix vc-dir when "remote" Git branch is local

While in there, add that "tracking" branch to the vc-dir
buffer.  For bug#68183.

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Reduce
boilerplate with new function 'vc-git--out-ok'; stop calling
vc-git-repository-url when REMOTE is "." to avoid throwing an
error; display tracking branch; prefer "none (&lt;details...&gt;)" to
"not (&lt;details...&gt;)" since that reads more grammatically
correct.
(vc-git--out-ok): Add documentation.
(vc-git--out-str): New function to easily get the output from a
Git command.
* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo)
(vc-git-test--run): New helpers, defined to steer clear of
vc-git-- internal functions.
(vc-git-test-dir-track-local-branch): Check that vc-dir does
not crash.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This re-applies:

  2024-03-17 "Fix vc-dir when "remote" Git branch is local"
  (21828f288ef)

reverted as part of the unrelated:

  2024-03-17 "Update modus-themes to their 4.4.0 version"
  (67b0c1c09ea)

The original commit message follows:

Fix vc-dir when "remote" Git branch is local

While in there, add that "tracking" branch to the vc-dir
buffer.  For bug#68183.

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Reduce
boilerplate with new function 'vc-git--out-ok'; stop calling
vc-git-repository-url when REMOTE is "." to avoid throwing an
error; display tracking branch; prefer "none (&lt;details...&gt;)" to
"not (&lt;details...&gt;)" since that reads more grammatically
correct.
(vc-git--out-ok): Add documentation.
(vc-git--out-str): New function to easily get the output from a
Git command.
* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo)
(vc-git-test--run): New helpers, defined to steer clear of
vc-git-- internal functions.
(vc-git-test-dir-track-local-branch): Check that vc-dir does
not crash.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update modus-themes to their 4.4.0 version</title>
<updated>2024-03-17T16:46:15+00:00</updated>
<author>
<name>Protesilaos Stavrou</name>
</author>
<published>2024-03-17T16:46:15+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=67b0c1c09eab65c302eb02b20d87900be6367565'/>
<id>67b0c1c09eab65c302eb02b20d87900be6367565</id>
<content type='text'>
* doc/misc/modus-themes.org: Update the manual to better document
existing functionality and cover the new features.

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el: Update the
palette of each theme.

* etc/themes/modus-themes.el (require): Remove call to cl-lib
and do not use relevant functions.
(modus-themes-operandi-colors, modus-themes-vivendi-colors)
(modus-themes-version, modus-themes-report-bug): Remove old
calls to 'make-obsolete' and related.

(modus-themes--annotate-theme): Tweak the completion annotation function.

(modus-themes--org-block): Deprecate the user option 'modus-themes-org-blocks'.
(modus-themes-faces): Update faces.
(modus-themes-custom-variables): Update the list of custom
variables.

Detailed release notes are available here:
&lt;https://protesilaos.com/codelog/2024-03-17-modus-themes-4-4-0/&gt;.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* doc/misc/modus-themes.org: Update the manual to better document
existing functionality and cover the new features.

* etc/themes/modus-operandi-deuteranopia-theme.el:
* etc/themes/modus-operandi-theme.el:
* etc/themes/modus-operandi-tinted-theme.el:
* etc/themes/modus-operandi-tritanopia-theme.el:
* etc/themes/modus-vivendi-deuteranopia-theme.el:
* etc/themes/modus-vivendi-theme.el:
* etc/themes/modus-vivendi-tinted-theme.el:
* etc/themes/modus-vivendi-tritanopia-theme.el: Update the
palette of each theme.

* etc/themes/modus-themes.el (require): Remove call to cl-lib
and do not use relevant functions.
(modus-themes-operandi-colors, modus-themes-vivendi-colors)
(modus-themes-version, modus-themes-report-bug): Remove old
calls to 'make-obsolete' and related.

(modus-themes--annotate-theme): Tweak the completion annotation function.

(modus-themes--org-block): Deprecate the user option 'modus-themes-org-blocks'.
(modus-themes-faces): Update faces.
(modus-themes-custom-variables): Update the list of custom
variables.

Detailed release notes are available here:
&lt;https://protesilaos.com/codelog/2024-03-17-modus-themes-4-4-0/&gt;.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix vc-dir when "remote" Git branch is local</title>
<updated>2024-03-17T15:44:25+00:00</updated>
<author>
<name>Kévin Le Gouguec</name>
</author>
<published>2024-02-12T07:29:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=21828f288ef57422d12860d71e3d4cd8b8cc97b4'/>
<id>21828f288ef57422d12860d71e3d4cd8b8cc97b4</id>
<content type='text'>
While in there, add that "tracking" branch to the vc-dir
buffer.  For bug#68183.

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Reduce
boilerplate with new function 'vc-git--out-ok'; stop calling
vc-git-repository-url when REMOTE is "." to avoid throwing an
error; display tracking branch; prefer "none (&lt;details...&gt;)" to
"not (&lt;details...&gt;)" since that reads more grammatically
correct.
(vc-git--out-ok): Add documentation.
(vc-git--out-str): New function to easily get the output from a
Git command.
* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo)
(vc-git-test--run): New helpers, defined to steer clear of
vc-git-- internal functions.
(vc-git-test-dir-track-local-branch): Check that vc-dir does
not crash.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
While in there, add that "tracking" branch to the vc-dir
buffer.  For bug#68183.

* lisp/vc/vc-git.el (vc-git-dir-extra-headers): Reduce
boilerplate with new function 'vc-git--out-ok'; stop calling
vc-git-repository-url when REMOTE is "." to avoid throwing an
error; display tracking branch; prefer "none (&lt;details...&gt;)" to
"not (&lt;details...&gt;)" since that reads more grammatically
correct.
(vc-git--out-ok): Add documentation.
(vc-git--out-str): New function to easily get the output from a
Git command.
* test/lisp/vc/vc-git-tests.el (vc-git-test--with-repo)
(vc-git-test--run): New helpers, defined to steer clear of
vc-git-- internal functions.
(vc-git-test-dir-track-local-branch): Check that vc-dir does
not crash.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge from origin/emacs-29</title>
<updated>2024-03-16T09:47:41+00:00</updated>
<author>
<name>Eli Zaretskii</name>
</author>
<published>2024-03-16T09:47:41+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=cc8a2c57b5eed4045035dfeaf129ce33d7f74733'/>
<id>cc8a2c57b5eed4045035dfeaf129ce33d7f74733</id>
<content type='text'>
3b791ebbe17 ; Fix 'usage:' keyword in Ffile_name_concat doc.
ed48b0d657c ; * CONTRIBUTE: Ask not to use non-ASCII unless necessary.
b708e639d63 ; * src/lread.c (maybe_swap_for_eln): Clarify warning mes...
db027a06976 ; Fix bibtex-biblatex-field-alist docstring typo.
a9be5c7ea92 ; * doc/lispref/control.texi (Conditionals): Add missing ...
db5915f30ba Fix 'with-sqlite-transaction'
fe491173e8f ; * doc/emacs/files.texi (Image Mode): Fix typo (bug#69671).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
3b791ebbe17 ; Fix 'usage:' keyword in Ffile_name_concat doc.
ed48b0d657c ; * CONTRIBUTE: Ask not to use non-ASCII unless necessary.
b708e639d63 ; * src/lread.c (maybe_swap_for_eln): Clarify warning mes...
db027a06976 ; Fix bibtex-biblatex-field-alist docstring typo.
a9be5c7ea92 ; * doc/lispref/control.texi (Conditionals): Add missing ...
db5915f30ba Fix 'with-sqlite-transaction'
fe491173e8f ; * doc/emacs/files.texi (Image Mode): Fix typo (bug#69671).
</pre>
</div>
</content>
</entry>
</feed>
