* src/xfaces.c (get_lface_attributes): Avoid crashes if F is NULL.
This happens when 'face_inheritance_cycle' is for some reason
called for the default attributes of a face (which are applicable
to future frames). We avoid the crashes by not consulting face
remapping in that case, since face remapping is buffer-local, and
therefore cannot possibly affect face defaults. (Bug#79790)
Credentials cached in 'url-basic-auth-storage' are keyed by
"server:port", but were being looked up by just "server" in
'url-basic-auth'.
* lisp/url/url-auth.el (url-basic-auth): Lookup cached basic auth
credentials by "server:port". (Bug#79486)
* test/lisp/url/url-auth-tests.el (url-auth-test-auth-retrieve-cache):
Check the digest auth test-cases cache retrieval test cases against the
basic auth logic.
* lisp/emacs-lisp/package-vc.el (package-vc--build-documentation):
Take the name of the .info file from the name of the source file,
instead of from the name of the package.
* lisp/emacs-lisp/package-vc.el (package-vc--build-documentation):
Use the buffer name of the output buffer instead of the buffer
name of the current buffer.
* test/lisp/vc/vc-tests/vc-test-misc.el (vc-test-exec-after-1)
(vc-test-exec-after-2, vc-test-exec-after-3)
(vc-test-exec-after-4, vc-test-exec-after-5): Fix shell commands
for MS-Windows: use "&" instead of ";" and don't use fractional
times for 'sleep', as some Windows ports of 'sleep' don't support
that.
* nt/INSTALL: Update MinGW URLs.
* doc/misc/efaq-w32.texi (MinGW): Update the URL's and the text to
reflect the fact that mingw.org's MinGW is no longer developed and
can be found only on the WWW Archive.
(Compiling): Add a cross-reference to "MinGW".
Avoid getting stuck waiting for `diff` to refine big hunks.
* lisp/vc/diff-mode.el (diff-refine-threshold): New custom var.
(diff--refine-hunk): Add arg `skip-if-large` and use that new var if
the arg says so.
(diff-refine-hunk): Add arg `skip-if-large`.
(diff-auto-refine-mode, diff-next/prevhunk, diff--font-lock-refined):
Use it.
* lisp/vc/vc-dispatcher.el (vc-exec-after): Refactor so as to no
longer repeatedly add and remove the sentinel. Don't have two
different ways to set mode-line-process. Don't call
accept-process-output from the sentinel, because Emacs always
reads all available process output before calling sentinels.
* lisp/vc/vc-dispatcher.el (vc--process-sentinel, vc-exec-after):
Merge vc--process-sentinel into vc-exec-after. Tidy up. This
should not involve any functional changes; those are to follow.
This is for consistency with how emacsclient behaves.
* lisp/server.el (server--process-filter-1): Improve assertion.
(server-eval-at): End request with trailing space.
* lisp/eshell/esh-mode.el (eshell-scroll-to-bottom-on-input)
(eshell-scroll-to-bottom-on-output): Add t as a choice.
* lisp/net/eww.el (eww-restore-desktop): Add 'auto' as a choice.
* lisp/vc/vc-dispatcher.el (log-edit-hook): Declare.
(vc-start-logentry): Bind log-edit-hook to nil when finishing
the log edit immediately with a caller-supplied message.
* doc/misc/modus-themes.org (Build on top of the Modus themes):
Bump the version number.
(Acknowledgements): Include more names in the Acknowledgements
section.
* etc/themes/modus-themes.el (modus-themes--activate)
(modus-themes-get-all-known-themes, modus-themes-known-p)
(modus-themes--list-enabled-themes)
(modus-themes-get-current-theme)
(modus-themes--get-theme-palette-subr)
(modus-themes-get-theme-palette, modus-themes-faces)
(modus-themes-theme)
(modus-themes--with-colors-resolve-palette-sort)
(modus-themes-with-colors-subr, modus-themes-with-colors):
Ensure that the modus-themes-with-colors macro works the way it
did before, namely, 'let' binding the current theme's palette.
* lisp/vc/log-edit.el (log-edit): Don't emit a message when
MODE.
* lisp/vc/vc-dispatcher.el (vc-start-logentry): Use '\\<>' to
simplify the code slightly.
* lisp/progmodes/project.el (project-compile): Ignore
compile-command from vc-compilation-mode (bug#79658).
* lisp/vc/vc-dispatcher.el (vc-compilation-mode-hook): New
variable.
(vc-compilation-mode): Promote to its own derived mode. Don't
use define-derived-mode in order to preserve the BACKEND
argument to this function. Don't give it its own major mode
map, et cetera, for now.
* lisp/progmodes/hideshow.el (hs-indicator-mouse-toggle-hidding):
Enclose in 'hs-life-goes-on' (bug#79585).
Suggested by Elijah Gabe Pérez <eg642616@gmail.com>.
See https://lists.gnu.org/archive/html/emacs-devel/2025-11/msg00145.html
for the related discussions.
* nt/mingw-cfg.site (ac_cv_func_acl_entries): Set to "yes" to
disable compilation of lib/acl_entries.c on MinGW.
* lib/acl_entries.c (acl_entries): Revert last change, as it is no
longer needed.
Chdir once and for all at the beginning to simplify the code.
Eliminate some redundant `expand-file-name`s and fix a broken use
of `expand-file-name` where we passed a list as second arg.
* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Rename DIR to
DIRS, to clarify that it can be a list. Use `ensure-list`.
Don't pass DIR(S) directly to `expand-file-name`.
Remove redundant `expand-file-name`.
(loaddefs-generate--excluded-files): Add sanity checks.
Return relative file names since `loaddefs-generate` will make them
absolute anyway. Simplify.
(loaddefs-generate--emacs-batch): Chdir to `lisp-directory` and
simplify the rest accordingly.
This fixes problems in some cases of out-f-tree builds
(bug#79694, bug#62099, bug#64806).
The use of true names in `load-history` dates back to to commits
33d74677e7 and 6bb6da3ec1 by Alan Mackenzie <acm@muc.de> in
May 24 2006, but that was reverted by Paul Eggert's commit
dff4f9c759 on Sep 18 2019.
* lisp/startup.el (command-line): Don't `file-truename` `lisp-directory`.
* src/lread.c (syms_of_lread) <load-history>: Adjust docstring,
to reflect the fact that the files there aren't "true names".
* doc/lispref/loading.texi (Hooks for Loading): Adjust accordingly.
Also massage the text to reflect the fact that nowadays features are
more common than file names as arguments to `with-eval-after-load`.