1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-03-12 01:42:37 -07:00
Commit graph

181444 commits

Author SHA1 Message Date
Richard Lawrence
a9a03cf35e Fix (or ...) patterns in 'cond*'/'match*'
This fixes Bug#80121.
* lisp/emacs-lisp/cond-star.el (cond*-subpat): Add missing reference to
'expression' when clearing multiple backtrack aliases.
2026-02-28 15:43:55 +02:00
Eli Zaretskii
0d017fc7ce ; Fix the documentation of 'overlays-in' etc.
* src/buffer.c (Foverlays_in):
* lisp/subr.el (remove-overlays):
* doc/lispref/display.texi (Finding Overlays, Managing Overlays):
* etc/NEWS: Improve the documentation of recent changes in
behavior of 'overlays-in' and 'remove-overlays'.  (Bug#80242)
2026-02-28 15:36:07 +02:00
Eli Zaretskii
a36d0c66e4 ; Remove unused declarations from w32heap.c
* src/w32heap.c (RtlCreateHeap_Proc, PRTL_HEAP_COMMIT_ROUTINE)
(RTL_HEAP_PARAMETERS): Remove unused declarations (bug#76041).
2026-02-28 14:58:33 +02:00
Eli Zaretskii
d366c8cf23 ; * src/w32proc.c (new_child): Update comment (bug#76041). 2026-02-28 14:53:34 +02:00
Sean Whitton
2c7f33e186 ; Hint for new users in manual. New comment. 2026-02-28 12:35:14 +00:00
Sean Whitton
3b223db8a7 Initialize command-line-max-length with sysconf(3)
* lisp/subr.el (command-line-max-length): Move from here ...
* src/callproc.c (syms_of_callproc): <Vcommand_line_max_length>:
... to here.  Initialize by calling sysconf(3) if possible.
2026-02-28 10:23:11 +00:00
Peter Oliver
58b195e5a3 New function rxvt-colorfgbg-background-mode
* lisp/term/rxvt.el (rxvt-colorfgbg-background-mode): New
function (bug#80486).
(rxvt-set-background-mode): Call it.

Copyright-paperwork-exempt: yes
2026-02-28 09:52:15 +00:00
Philip Kaludercic
91c8c0cc98
Fix prompting of packages for 'package-report-bug'
* lisp/emacs-lisp/package.el (package--query-desc): Load
'package-alist' if this hasn't already occurred.
(package-report-bug): Drop unnecessary ALIST argument when
invoking 'package--query-desc'.
2026-02-28 10:50:55 +01:00
Philip Kaludercic
4b253c39b1
Improve 'package-report-bug' robustness
* lisp/emacs-lisp/package.el (package-maintainers): Add
fallbacks if a package doesn't list a single maintainer.
(package-report-bug): Check if "emacs-devel@gnu.org" is listed
as a maintainer, in which case the message is redirected to
bug-gnu-emacs@gnu.org and the X-Debbugs-CC header is set.

(Bug#80478)
2026-02-28 10:50:55 +01:00
Philip Kaludercic
24b922dec1
; Update "Maintainers" header for compat.el 2026-02-28 10:50:55 +01:00
Philip Kaludercic
668c42c4ac
Allow more fine configuration of package retention
* lisp/emacs-lisp/package.el (package-upgrade-keep-previous):
Rename user option to 'package-retention-policy'.
(package--policy-type): New constant for policy types.
(package-retention-policy): New option.
(package-review-policy): Use new type constant.
(package--review-p): Rename and generalise to
'package-matches-selector-p'.
(package-matches-selector-p): New function.
(package-upgrade, package-menu--mark-upgrades-1): Respect
'package-retention-policy'.
* doc/emacs/package.texi (Package Installation): Document new option.
* etc/NEWS: Update NEWS entry.  (Bug#79957)
2026-02-28 10:50:55 +01:00
Philip Kaludercic
e744e8a7a7
Indicate if 'package-isolate' had to download a package
* lisp/emacs-lisp/package.el (package-isolate): Change
formatting to indicate dependencies to include a note if the
package was downloaded in a temporary directory.
2026-02-28 10:50:55 +01:00
Philip Kaludercic
356d74b943
Fix 'package-isolate' in combination with quickload
* lisp/emacs-lisp/package.el (package-isolate): Call
'package--activate-all' directly, to ensure that all the package
directories are properly loaded.
2026-02-28 10:50:55 +01:00
Philip Kaludercic
33c63d24de
; Prevent 'package-isolate' from creating cyclic lists
* lisp/emacs-lisp/package.el (package-isolate): Do not use
destructive 'mapcan' to create a list of dependencies, as
'package-desc-reqs' doesn't return a fresh list.
2026-02-28 10:50:55 +01:00
Jeremy Bryant
0ca7040096
Add option to keep previous package versions on upgrade
This change adds a conditional to keep old package versions on upgrade.
This allows users to keep running multiple Emacsen without a package
upgrade in one Emacs breaking another running Emacs.

* lisp/emacs-lisp/package.el (package-upgrade-keep-previous):
New boolean user option.
(package-upgrade): Use it.
(package-menu--mark-upgrades-1): Use it.
(package-menu--find-upgrades): Make consistent with new option.
* etc/NEWS: Announce it.

(Bug#79957)
2026-02-28 10:50:55 +01:00
Boris Buliga
1c4f09aadc Fix macOS 26 scrolling lag and input handling issues (bug#80268)
macOS 26 introduced new event processing behavior that causes scrolling
lag and input handling problems in Emacs.  This patch disables two
features via NSUserDefaults when built against the macOS 26 SDK:
- NSEventConcurrentProcessingEnabled
- NSApplicationUpdateCycleEnabled

This fix is based on the equivalent patch in emacs-mac by Mitsuharu
Yamamoto.  See: https://bitbucket.org/mituharu/emacs-mac/commits/e52ebfd

* src/nsterm.m (ns_term_init): Disable problematic event processing
when built for macOS 26+.
2026-02-27 20:27:53 +00:00
Stefan Monnier
0068215e53 emacs-lisp-intro.texi: Eliminate duplicate ASCII art
* doc/lispintro/emacs-lisp-intro.texi (print-postscript-figures):
Set it only if we're outputting TeX.
(Lists diagrammed, Lists diagrammed, Lists diagrammed)
(Lists diagrammed, Lists diagrammed, Symbols as Chest)
(kill-ring-yank-pointer, lambda): Presume that
`print-postscript-figures` is set only for TeX output and remove
the `@tex...@end tex` around `@image` which do not seem relevant any more.
2026-02-27 13:42:40 -05:00
Sean Whitton
eca81082a1 ; Fix some comments. 2026-02-27 18:17:36 +00:00
Sean Whitton
9d7130439a ; Copy out log message from when branch was first introduced. 2026-02-27 16:02:49 +00:00
Eli Zaretskii
76c7c867d6 Fix bug on MS-Windows with frame title when system-name is non-ASCII
* src/w32.c (sys_gethostname): Convert system name to UTF-8.
Ensure the buffer passed to 'gethostname' is large enough.
(Bug#80472)
2026-02-27 17:55:05 +02:00
Sean Whitton
13cc7c2b54 New 'log-outstanding' value for vc-log-view-type
This fixes vc-hg-print-log's choice of -r arguments to 'hg log'.

* lisp/vc/vc.el (vc-log-view-type): New 'log-outstanding' value.
(vc-log-outstanding): Pass it.
* lisp/vc/vc-git.el (vc-git-log-view-mode):
* lisp/vc/vc-hg.el (vc-hg-print-log, vc-hg-log-view-mode): Treat
'log-outstanding' the same as 'log-outgoing'.
2026-02-27 13:45:24 +00:00
Eli Zaretskii
959da75342 ; * test/src/data-tests.el (data-tests-native-comp-unit): Fix test. 2026-02-27 15:29:16 +02:00
Sean Whitton
9bb9074d93 Fix renaming directories in VC repositories
* lisp/dired-aux.el (dired-rename-file): When determining
whether to call vc-rename-file, use vc-responsible-backend
instead of vc-backend when FILE is a directory.
* lisp/vc/vc.el (vc-rename-file): Support renaming directories.
2026-02-27 12:08:27 +00:00
Richard Lawrence
f0dbe25d4c Fix `diary-rrule' recurrence rule calculation (Bug#80460)
Thanks to TAKAHASHI Yoshio for reporting and for fixing one of
the typos.  In addition to the reported bug involving
:include/:exclude, testing revealed that the provided RRULE
COUNT clause was also not being handled correctly; this change
also fixes that.
* lisp/calendar/diary-icalendar.el (diary-rrule): Handle
recurrence rules with a COUNT clause.
* lisp/calendar/icalendar-recur.el
(icalendar-recur-recurrences-in-interval): Fix a couple of
typos that caused RDATE/EXDATE calculations to fail.
* test/lisp/calendar/diary-icalendar-tests.el
(diary-icalendar-test-rrule-bug-80460): New test for this bug.
2026-02-26 14:25:22 +02:00
Eli Zaretskii
29fc964207 ; Avoid byte-compilation warning in c-ts-common.el
* lisp/progmodes/c-ts-common.el (c-ts-common-comment-start-skip):
Move up to avoid byte-compiler warning.
2026-02-26 14:15:21 +02:00
Mattias Engdegård
c7595cbc02 Upgrade 'equal' from side-effect-free to error-free
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns)
(side-effect-and-error-free-fns): 'equal' and
'equal-including-properties' no longer signal 'circular-list'; while
they do error on very deep structures, that is more of a resource limit
so let's overlook that.
2026-02-26 10:44:28 +01:00
Mattias Engdegård
e0381f24f6 Simplify peephole optimisation rule
* lisp/emacs-lisp/byte-opt.el (byte-optimize-lapcode):
Remove some obsolete dynamic variable optimisations that no longer
improve any code.  Fix broken logging (thanks Pip).
2026-02-26 10:44:28 +01:00
Martin Rudalics
cbd437f792 ; Fix doc-string of 'window-combination-resize'
* src/window.c (syms_of_window): Fix doc-string of
'window-combination-resize'.
2026-02-26 10:22:11 +01:00
Eli Zaretskii
9d63a329e7 ; * lisp/skeleton.el (skeleton-insert): Doc fix. (Bug#80492) 2026-02-26 11:07:57 +02:00
Eli Zaretskii
c73823dddd ; Fix esh-proc-tests on MS-Windows
* test/lisp/eshell/esh-proc-tests.el (esh-proc-test/kill/process-id)
(esh-proc-test/kill/process-object): Fix these tests on MS-Windows.
2026-02-26 08:00:02 +02:00
Yuan Fu
d0cc67a143
Make c-ts-common-comment-start-skip public
* lisp/progmodes/c-ts-common.el:
(c-ts-common-comment-start-skip): Change to public.
(c-ts-common-comment-2nd-line-anchor):
(c-ts-common-comment-setup): Use it.
2026-02-25 21:03:21 -08:00
Arsen Arsenović
0a80c05df0
c-ts-mode: Don't assume comment-start-skip is set
This patch makes it easier to use the existing C and C++
language support in other languages.  Without this patch, if the
outer mode sets some specific and more accurate
comment-start-skip value, or perhaps leaves it unset,
indentation will break.

* lisp/progmodes/c-ts-common.el (c-ts-common--comment-start-skip):
Declare to the value c-ts-common-comment-setup used to set as
comment-start-skip.
(c-ts-common-comment-setup): Use it, rather than hardcoding.
(c-ts-common-comment-2nd-line-anchor): Use it, rather than
comment-start-skip.  This makes it easier to reuse C/++
indentation rules in other TS modes for embedding C/++ segments
in other languages.

Copyright-paperwork-exempt: yes
2026-02-25 20:59:56 -08:00
Eric S. Raymond
47735e0243 Repair another test bollixed by aggressive optimization. 2026-02-25 20:51:21 -05:00
Eric S. Raymond
ca42055b0c Repair ab ecal test by making a variable kexical, 2026-02-25 20:20:26 -05:00
Eric S. Raymond
1b0c8d6b95 Complete the test set for floatfns,c. 2026-02-25 20:18:31 -05:00
Eric S. Raymond
a339c6827c Tesrts for the portable primitives in fileio.c. 2026-02-25 19:54:11 -05:00
Eric S. Raymond
5749b2e4f4 Tests for primitives in coding.c and charset.c. 2026-02-25 19:41:05 -05:00
Eric S. Raymond
b09f8df206 Tests for primitives from the character.c module. 2026-02-25 19:41:05 -05:00
Stefan Monnier
1b3b3cd57d lisp/vc/smerge-mode.el (smerge-refine-shadow-cursor): Make it thinner
OTOH a thickness of 1 pixel is a bit too thin on my HiDPI
displays, but 2 is too thick on non-HiDPI displays, at least with
my default smallish font.
I originally favored the HiDPI displays and large fonts,
thinking it's a more common situation nowadays, but I changed my
mind because the "too thick" problem seems actually more severe
because it's occasionally bad enough that it's unclear which
cursor is the real one.
2026-02-25 19:18:49 -05:00
Eric S. Raymond
d7a3d442b4 Tests for the lreaf.c amd print.c primitives. 2026-02-25 19:03:02 -05:00
Eric S. Raymond
cd038e5617 Tests for remaining functions iun eval.c. 2026-02-25 18:54:50 -05:00
Eric S. Raymond
a6e19d6179 Completing test coverage for dataa.c orimitives. 2026-02-25 18:35:02 -05:00
Eric S. Raymond
40ff4512ad More correctness tesrs for orinitives from fns.c. 2026-02-25 18:25:58 -05:00
Eric S. Raymond
67e8f87562 More tests for edit functions, buffers, and markers. 2026-02-25 18:10:05 -05:00
Eric S. Raymond
3dda4b85e8 Added more buffer/marker/editing test coverage. 2026-02-25 17:52:42 -05:00
Eric S. Raymond
7a93a7b334 Category/charset/coding + char-table tests. 2026-02-25 17:23:46 -05:00
Eric S. Raymond
fc7339c46d More test coverage improvements. 2026-02-25 17:06:50 -05:00
Eric S. Raymond
feac531415 Repair serious breakage in the batch tests.
There were a bunch of tests that were breaking make check and should
never be run in batch mode, because they do things like assuming there
is a controlling tty or assuming we can access network services when
we can't (e/g. in a CI/CD environment). I have shotgunned this
problem by tagging all the failing tests with :nobatch and then
changing the default and expensive selectors so make check won't barf
all over its shoes.

As many of these :nobatch should be individually removed as possible, after
upgrading the test harness to mock the environmental stuff they need.
Investigate these failures with "make check-nobatch".
2026-02-25 16:36:50 -05:00
Eric S. Raymond
95329bf445 More test coverage improvements.
Bignum corner-case tests in data-tests.el.
More buffer-primitive tests in editfns-test.el
Some condition-case tesrs in eval-tests.el.
And another marker-primitive test in marker-tests.el.
2026-02-25 13:21:25 -05:00
Eric S. Raymond
e42c579a54 More test coverage improvements for ERT.
In marker-tests.el, editfbs-tests.el, and data-tests.el.
2026-02-25 13:21:25 -05:00