]> git.eshelyaron.com Git - emacs.git/log
emacs.git
19 months agoImproved copy-tree documentation and test (bug#63509)
Mattias Engdegård [Fri, 19 May 2023 10:32:28 +0000 (12:32 +0200)]
Improved copy-tree documentation and test (bug#63509)

* etc/NEWS: Move entry since it's an incompatible change.
* lisp/emacs-lisp/shortdoc.el (vector): Make the example relevant.
* lisp/subr.el (copy-tree): Rename second argument,
since 'vector-like' is a term with a specific meaning in Emacs
but not the one intended here.
* doc/lispref/lists.texi (Building Lists): Rename second argument,
and make it clear that the input must be acyclic.
* doc/lispref/records.texi (Record Functions):
Be more precise: `copy-sequence` is used to copy records,
`copy-tree` copies trees made of records etc.
* test/lisp/subr-tests.el (subr--copy-tree): Extend and strengthen the
test considerably, using the print-circle trick to detect structure
sharing precisely.

19 months agoImplement treesit-forward-sexp correctly (bug#63487)
Yuan Fu [Fri, 19 May 2023 07:15:21 +0000 (00:15 -0700)]
Implement treesit-forward-sexp correctly (bug#63487)

* lisp/treesit.el (treesit-forward-sexp): Signal scan-error when we
can't move across sexps further.

19 months agoMinor fixes of last change
Eli Zaretskii [Fri, 19 May 2023 06:05:45 +0000 (09:05 +0300)]
Minor fixes of last change

* etc/NEWS:
* doc/lispref/records.texi (Record Functions): Improve wording.
(Bug#63509)

19 months agoMake 'copy-tree' work with records
Joseph Turner [Mon, 15 May 2023 04:02:15 +0000 (21:02 -0700)]
Make 'copy-tree' work with records

* doc/lispref/lists.texi (Building Cons Cells and Lists): Document
new behavior of 'copy-tree'.
* doc/lispref/records.texi (Record Functions): Cross-reference to
lists.texi.
* etc/NEWS: Mention change.  (Bug#63509)
* lisp/emacs-lisp/shortdoc.el: Add 'copy-tree' example to vector
group.
* lisp/subr.el (copy-tree): Recurse into records as well as
vectors when optional second argument is non-nil. Rename second
argument from VECP to VECTOR-LIKE-P.
* test/lisp/subr-tests.el: Test new behavior.

19 months agoTry declaring `delq` and `delete` important-return-value (bug#61730)
Mattias Engdegård [Thu, 18 May 2023 15:22:41 +0000 (17:22 +0200)]
Try declaring `delq` and `delete` important-return-value (bug#61730)

* lisp/emacs-lisp/bytecomp.el (important-return-value-fns):
Add (uncomment) `delq` and `delete`.

19 months agoSimplify python.el completion-predicate
Basil L. Contovounesios [Wed, 17 May 2023 12:53:09 +0000 (13:53 +0100)]
Simplify python.el completion-predicate

* lisp/progmodes/python.el:
(python-skeleton-define): Use command-modes as a shorthand for
completion-predicate (bug#63552).
(python--completion-predicate, python-shell--completion-predicate):
Remove accordingly; no longer used.
(python-define-auxiliary-skeleton): Prefer function-put over put.

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
Merge from origin/emacs-29

f8d9e40d2c1 Attempt to fix redisplay problems on macOS
4daa6f70497 ; * lisp/simple.el (async-shell-command): Add commentary ...
dc1a437d460 Clarify misleading comment in isearch.el
af3b0dc53ff Improve documentation of package-menu commands
d879847cd4d Fix M-x completion-predicate under python-ts-mode
1e57b2b4c79 * Account for `byte-compile-warnings' during native compi...
b5bfd808c6b Avoid duplicate VC packages in 'package-selected-packages'
c18f9f155f6 * lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side'...
33485fe8f74 ; Better warning message when loading tree-sitter fails
95a724abaac Update to Org 9.6.6
c665ca79ff4 ; * admin/make-tarball.txt: Minor copyedits.
3aef46e466f Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ...
229af8e4b31 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...

19 months ago; Merge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
; Merge from origin/emacs-29

The following commits were skipped:

88ca37b8589 ; Regenerate files for emacs-29.0.91
4627ede36b1 ; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.
c90d47619e6 Bump Emacs version for next pretest

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Thu, 18 May 2023 11:49:49 +0000 (07:49 -0400)]
Merge from origin/emacs-29

229af8e4b31 ; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-...
ce7d18cbc07 ; Minor fixes in ELisp manual
5c8864fab4f ; * lisp/simple.el (async-shell-command): Doc fix.  (Bug#...
b96dc472bcb Ignore current-prefix-arg in async-shell-command
1e6a7594361 Fix building of VC package manuals with relative includes
61659f36c88 Another fix for VHDL mode highlighting

19 months agoAttempt to fix redisplay problems on macOS
Aaron Jensen [Thu, 18 May 2023 11:20:18 +0000 (14:20 +0300)]
Attempt to fix redisplay problems on macOS

* src/nsterm.m (ns_scroll_run): Attempt to fix redisplay
artifacts.  (Bug#63187)

19 months ago; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.
Eli Zaretskii [Thu, 18 May 2023 11:03:10 +0000 (14:03 +0300)]
; * lisp/simple.el (async-shell-command): Add commentary about 3rd arg.

19 months agoClarify misleading comment in isearch.el
Jens Schmidt [Tue, 16 May 2023 21:31:19 +0000 (23:31 +0200)]
Clarify misleading comment in isearch.el

Clarify a misleading comment in isearch.el as to whether frame events
should exit an isearch or not (Bug#62032, Bug#41338 for background
information).
* lisp/isearch.el (isearch-mode-map): Replace the misleading comment.
(Bug#62032)

Copyright-paperwork-exempt: yes

19 months ago* lisp/erc/erc-fill.el (erc-fill-spaced-commands): Fix typing errors
Mattias Engdegård [Thu, 18 May 2023 07:49:53 +0000 (09:49 +0200)]
* lisp/erc/erc-fill.el (erc-fill-spaced-commands): Fix typing errors

The type (set integer symbol) matches a list of at most one integer
and one symbol, not multiple distinct symbols.

19 months agoImprove documentation of package-menu commands
Eli Zaretskii [Thu, 18 May 2023 06:41:59 +0000 (09:41 +0300)]
Improve documentation of package-menu commands

* doc/emacs/package.texi (Package Menu): Document that some
package-menu filters accept lists of values interactively.

* lisp/emacs-lisp/package.el (package-menu-execute)
(package-menu-hide-package, package-menu-describe-package)
(package-menu-mark-delete, package-menu-mark-install)
(package-menu-mark-unmark, package-menu-backup-unmark)
(package-menu-quick-help, package-menu-get-status)
(package-menu--find-upgrades, package-menu-mark-upgrades)
(package-menu-filter-by-archive)
(package-menu-filter-by-description)
(package-menu-filter-by-keyword)
(package-menu-filter-by-name-or-description)
(package-menu-filter-by-name, package-menu-filter-by-status)
(package-menu-filter-by-version, package-menu-filter-marked)
(package-menu-describe-package): Doc fixes.

19 months ago; * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Doc fix.
F. Jason Park [Wed, 17 May 2023 12:27:13 +0000 (05:27 -0700)]
; * lisp/erc/erc.el (erc-accidental-paste-threshold-seconds): Doc fix.

19 months agoPrefer C23 ckd_* to Gnulib *_WRAPV macros
Paul Eggert [Wed, 17 May 2023 22:36:54 +0000 (15:36 -0700)]
Prefer C23 ckd_* to Gnulib *_WRAPV macros

C23 has added ckd_add etc. macros with functionality equivalent to
the older Gnulib INT_ADD_WRAPV macros, so switch to the
more-standard names.
* admin/merge-gnulib (GNULIB_MODULES): Add stdckdint.
This merely makes the dependency explicit, as we were already
using this Gnulib module indirectly.
* lib-src/etags.c, src/lisp.h: Include stdckdint.h.
* lib-src/etags.c (xnmalloc, xnrealloc):
* src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string)
(mark_memory):
* src/bignum.c (emacs_mpz_pow_ui):
* src/buffer.c (record_overlay_string, overlay_strings):
* src/bytecode.c (exec_byte_code):
* src/casefiddle.c (do_casify_multibyte_string):
* src/ccl.c (ccl_driver, Fccl_execute_on_string):
* src/character.c (char_width, c_string_width)
(lisp_string_width, count_size_as_multibyte)
(string_escape_byte8):
* src/cmds.c (internal_self_insert):
* src/coding.c (coding_alloc_by_realloc, produce_chars):
* src/data.c (arith_driver):
* src/dispnew.c (realloc_glyph_pool, init_display_interactive):
* src/doprnt.c (parse_format_integer):
* src/editfns.c (Freplace_buffer_contents, str2num)
(styled_format):
* src/emacs-module.c (module_global_reference_p)
(module_make_global_ref, module_funcall):
* src/eval.c (max_ensure_room):
* src/fileio.c (blocks_to_bytes):
* src/fns.c (Ffillarray):
* src/font.c (font_intern_prop):
* src/frame.c (check_frame_pixels):
* src/gnutls.c (gnutls_hex_string, gnutls_symmetric_aead):
* src/gtkutil.c (get_utf8_string):
* src/haikuterm.c (haiku_term_init):
* src/image.c (xbm_scan, image_to_emacs_colors)
(image_detect_edges, png_load_body):
* src/keyboard.c (Frecursion_depth):
* src/keymap.c (Flookup_key, Fkey_description):
* src/lisp.h (modiff_incr, SAFE_ALLOCA_LISP_EXTRA):
* src/lread.c (read_bool_vector):
* src/pgtkterm.c (pgtk_term_init):
* src/regex-emacs.c (regex_compile):
* src/term.c (encode_terminal_code):
* src/termcap.c (tputs):
* src/textconv.c (textconv_query):
* src/timefns.c (timespec_ticks, lisp_time_hz_ticks)
(Fdecode_time, check_tm_member):
* src/tparam.c (tparam1):
* src/w32term.c (w32_initialize_display_info):
* src/xdisp.c (fill_column_indicator_column, decode_mode_spec):
* src/xselect.c (selection_data_size, x_property_data_to_lisp):
* src/xsmfns.c (smc_save_yourself_CB):
* src/xterm.c (xm_setup_dnd_targets, x_sync_get_monotonic_time)
(x_sync_current_monotonic_time, x_sync_note_frame_times)
(x_display_set_last_user_time, x_term_init):
Prefer the C23 stdckdint macros to their
Gnulib intprops.h counterparts, since C23 is standard.

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Wed, 17 May 2023 22:07:38 +0000 (15:07 -0700)]
Update from Gnulib by running admin/merge-gnulib

19 months agoPort modiff changes to GCC 4.8.5
Paul Eggert [Wed, 17 May 2023 17:53:26 +0000 (10:53 -0700)]
Port modiff changes to GCC 4.8.5

Problem reported by Spencer Baugh.
* src/lisp.h (elogb): Now simply a function on unsigned long long int.
This avoids problems porting to GCC 4.8.5 20150623 (Red Hat 4.8.5-44).
There may be a minor runtime cost on 32-bit platforms but it’s
not worth worrying about.

19 months agoFix M-x completion-predicate under python-ts-mode
Basil L. Contovounesios [Wed, 17 May 2023 12:48:09 +0000 (13:48 +0100)]
Fix M-x completion-predicate under python-ts-mode

* lisp/progmodes/python.el (python--completion-predicate)
(python-shell--completion-predicate): Filter M-x completion based on
python-base-mode instead of python-mode.  This allows for
python-ts-mode as well (bug#63552).

19 months ago* Fix missing `comp-files-queue' update (bug#63415).
Andrea Corallo [Wed, 17 May 2023 13:28:46 +0000 (15:28 +0200)]
* Fix missing `comp-files-queue' update (bug#63415).

* lisp/emacs-lisp/comp.el (native--compile-async): Update
`comp-files-queue' for real.

19 months ago* Account for `byte-compile-warnings' during native compilation (bug#63302).
Andrea Corallo [Wed, 10 May 2023 11:50:51 +0000 (13:50 +0200)]
* Account for `byte-compile-warnings' during native compilation (bug#63302).

* lisp/emacs-lisp/comp.el (comp-final, comp-run-async-workers):
Forward `byte-compile-warnings' to child processes.

19 months ago; * ChangeLog.4: Fix gitmerge snafu.
Eli Zaretskii [Wed, 17 May 2023 11:23:53 +0000 (14:23 +0300)]
; * ChangeLog.4: Fix gitmerge snafu.

19 months agoEUDC: Fix eudc-ldap-no-wildcard-attributes docstring
Thomas Fitzsimmons [Wed, 17 May 2023 10:59:52 +0000 (06:59 -0400)]
EUDC: Fix eudc-ldap-no-wildcard-attributes docstring

* lisp/net/eudc-vars.el (eudc-ldap-no-wildcard-attributes): Fix
docstring.  (Bug#62721)

19 months agoMark proced-refine-with-update-test :unstable (bug#63550)
Mattias Engdegård [Wed, 17 May 2023 09:31:04 +0000 (11:31 +0200)]
Mark proced-refine-with-update-test :unstable (bug#63550)

* test/lisp/proced-tests.el (proced-refine-with-update-test):
This test seems racy and often fails randomly in parallel
`make check`.

19 months agoEliminate some mutation of program constants
Mattias Engdegård [Wed, 17 May 2023 08:56:44 +0000 (10:56 +0200)]
Eliminate some mutation of program constants

* lisp/foldout.el:
* lisp/gnus/mml2015.el (mml2015-epg-key-image-to-string):
* lisp/international/ja-dic-cnv.el (skkdic-set-postfix)
(skkdic-set-prefix):
* lisp/international/quail.el (quail-insert-kbd-layout):
* lisp/mail/rmail.el (rmail-set-attribute-1):
* lisp/net/tramp.el (tramp-handle-memory-info):
* lisp/org/org-macs.el (org-replace-escapes):
Work on newly created objects, or use non-destructive operations.

19 months ago; Add missing markup to new documentation
Philip Kaludercic [Tue, 16 May 2023 19:28:56 +0000 (21:28 +0200)]
; Add missing markup to new documentation

* doc/emacs/package.texi (Fetching Package Sources): Mark code as
code.

19 months agoAdd :vc keyword to use-package for VC package support
Tony Zorman [Thu, 29 Dec 2022 10:05:04 +0000 (11:05 +0100)]
Add :vc keyword to use-package for VC package support

* lisp/use-package/use-package-core.el (use-package-keywords): Add :vc.
(use-package-handler/:load-path): Insert 'load-path' into 'state'.
(use-package-vc-install): Install the package with package-vc.el.
(use-package-handler/:vc): Handler for the :vc keyword.
(use-package-normalize--vc-arg): Normalization for more complex
arguments to 'use-package-normalize/:vc', in order to make them
compatible with the specification of 'package-vc-selected-packages'.
(use-package-normalize/:vc): Normalizer for the :vc keyword.
(use-package): Document :vc.
* lisp/use-package/use-package-ensure.el (use-package-handler/:ensure):
Do not ensure a package when :vc is used in the declaration.
* test/lisp/use-package/use-package-tests.el (use-package-test/:vc-1):
(use-package-test/:vc-2):
(use-package-test/:vc-3):
(use-package-test/:vc-4):
(use-package-test/:vc-5):
(use-package-test-normalize/:vc):
Add tests for :vc.
* etc/NEWS: Mention change.  (Bug#60418)

19 months agoSupport side-effects while building VC packages
Joseph Turner [Sat, 13 May 2023 17:05:04 +0000 (10:05 -0700)]
Support side-effects while building VC packages

* doc/emacs/package.texi (Specifying Package Sources): Document new
specification attributes.
* lisp/emacs-lisp/package-vc.el (package-vc-allow-side-effects): Add
new user option.
(package-vc--make): Add handler for processing :make and
:shell-command.
(package-vc--unpack-1): Check 'package-vc-allow-side-effects' and
invoke 'package-vc--make'.
* etc/NEWS: Mention change.  (Bug#63336)

19 months agoAvoid duplicate VC packages in 'package-selected-packages'
Philip Kaludercic [Sun, 14 May 2023 19:22:59 +0000 (21:22 +0200)]
Avoid duplicate VC packages in 'package-selected-packages'

* lisp/emacs-lisp/package-vc.el (package-vc--unpack-1): Check if
'package-selected-packages' already contains the package name.
(bug#63338)

19 months agoEglot: rework eglot-handle-request (bug#62116)
João Távora [Tue, 16 May 2023 18:23:33 +0000 (19:23 +0100)]
Eglot: rework eglot-handle-request (bug#62116)

Address comments in the bug tracker regarding widening, and
prematurely reporting success to the server before knowing if the file
can indeed be shown.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62116#70
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=62116#79

* lisp/progmodes/eglot.el (eglot-handle-request): Rework.

19 months ago* lisp/windmove.el (windmove-swap-states-in-direction): Don't swap minibuffer.
Juri Linkov [Tue, 16 May 2023 17:32:34 +0000 (20:32 +0300)]
* lisp/windmove.el (windmove-swap-states-in-direction): Don't swap minibuffer.

Guard against swapping the minibuffer when the minibuffer is in the selected
window (bug#62427).  The function was already protected when the minibuffer
is in other-window.

19 months agoTweak tramp-test45-asynchronous-requests
Michael Albinus [Tue, 16 May 2023 15:19:20 +0000 (17:19 +0200)]
Tweak tramp-test45-asynchronous-requests

* test/lisp/net/tramp-tests.el (tramp-use-connection-share): Declare.
(tramp--test-putty-p): New defun.
(tramp-test45-asynchronous-requests): Tweak test.

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Tue, 16 May 2023 05:09:04 +0000 (22:09 -0700)]
Update from Gnulib by running admin/merge-gnulib

19 months agoEUDC: Document disabling default LDAP wildcard expansion
Thomas Fitzsimmons [Mon, 15 May 2023 21:53:45 +0000 (17:53 -0400)]
EUDC: Document disabling default LDAP wildcard expansion

* lisp/net/eudc-vars.el (eudc-ldap-no-wildcard-attributes): Cover
`eudc-query-form' and `eudc-expand-inline' behavior in the
customization docstring.  (Bug#62721)

19 months ago* lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).
Juri Linkov [Mon, 15 May 2023 17:32:04 +0000 (20:32 +0300)]
* lisp/tab-bar.el (tab-bar-new-tab-to): Set 'window-side' to nil (bug#62427).

This is still needed for the case when tab-bar-new-tab-choice is 'window'.

19 months ago; Better warning message when loading tree-sitter fails
Eli Zaretskii [Mon, 15 May 2023 15:39:49 +0000 (18:39 +0300)]
; Better warning message when loading tree-sitter fails

* lisp/treesit.el (treesit-ready-p): Improve diagnostics on
MS-Windows when the tree-sitter library cannot be loaded at run
time.

19 months agoFix some minor Tramp problems
Michael Albinus [Mon, 15 May 2023 14:25:23 +0000 (16:25 +0200)]
Fix some minor Tramp problems

* lisp/net/tramp-crypt.el (tramp-crypt-handle-file-exists-p): New defun.
(tramp-crypt-file-name-handler-alist): Add it.

* lisp/net/tramp-smb.el (tramp-smb-handle-copy-file): Flush proper file
properties.

* test/lisp/net/tramp-archive-tests.el (tramp-archive--test-emacs28-p):
New defun.
(tramp-archive-test48-auto-load): Extend test.

19 months agoFix 'locale-info' on MS-Windows
Eli Zaretskii [Mon, 15 May 2023 12:21:43 +0000 (15:21 +0300)]
Fix 'locale-info' on MS-Windows

* nt/mingw-cfg.site (am_cv_langinfo_codeset): Rename from
'emacs_cv_langinfo_codeset', to follow configure.ac.

19 months agoPrefer _WIDTH macros to sizeof in pdumper.c
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer _WIDTH macros to sizeof in pdumper.c

This is a bit clearer, and should work better on hypothetical
platforms where integers have holes in their representation.
* src/pdumper.c: Since the code no longer uses CHAR_BIT,
don’t worry about whether it equals 8.
(DUMP_OFF_WIDTH): New macro.
(EMACS_RELOC_LENGTH_BITS, DUMP_RELOC_OFFSET_BITS): Use it.
(DUMP_BITSET_WORD_WIDTH): New macro.
(dump_bitsets_init, dump_bitset__bit_slot)
(dump_bitset_bit_set_p, dump_bitset__set_bit_value): Use it.

19 months agoPrefer PTRDIFF_WIDTH in sort.c
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer PTRDIFF_WIDTH in sort.c

* src/sort.c (MAX_MERGE_PENDING):
Prefer PTRDIFF_WIDTH to rolling our own substitute.

19 months agoPrefer UINTMAX_WIDTH in print_object
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Prefer UINTMAX_WIDTH in print_object

* src/print.c (print_object):
Prefer UINTMAX_WIDTH to rolling our own substitute.

19 months agoHelp GCC compute modiff_incr
Paul Eggert [Mon, 15 May 2023 01:51:24 +0000 (18:51 -0700)]
Help GCC compute modiff_incr

* src/floatfns.c: Don’t include count-leading-zeros.h,
since we no longer use it directly.
(ecount_leading_zeros): Remove.
(Flogb): Use elogb instead of doing it by hand.
* src/lisp.h: Include count-leading-zeros.h.
(elogb): New macro.
(modiff_incr): Use it so that on typical platforms we
use a hardware instruction instead of a loop.

19 months agoWork after 2038 on 32-bit GNU/Linux
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Work after 2038 on 32-bit GNU/Linux

This adds support for 64-bit time_t on 32-bit GNU/Linux ARM and
x86, where time_t was historically 32-bit.  The resulting Emacs
should continue to work for timestamps after mid-January 2038.
* admin/merge-gnulib (GNULIB_MODULES): Add year2038.
* lib/gnulib.mk.in, m4/gnulib-comp.m4: Regenerate.

19 months agoPacify GCC 13 -Wnull-dereference in itree.c
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Pacify GCC 13 -Wnull-dereference in itree.c

* src/itree.c (itree_remove_fix): Simplify code and remove a
couple of eassume calls.  This works around GCC bug 109586.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109856

19 months agoPacify GCC 13 -Wanalyzer-out-of-bounds
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Pacify GCC 13 -Wanalyzer-out-of-bounds

* src/alloc.c (NEAR_STACK_TOP): Hoist from here ...
* src/thread.h: ... to here.
* src/print.c (print_object): Use NEAR_STACK_TOP instead of raw
buffer address.  This is more natural, and pacifies GCC 13.

19 months agoWork around GCC bug 109847 in buffer.c
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Work around GCC bug 109847 in buffer.c

* src/buffer.c: Ignore GCC 13+ -Wanalyzer-out-of-bounds.

19 months agoDo not use -Wanalyzer-fd-leak
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Do not use -Wanalyzer-fd-leak

* configure.ac: Append -Wno-analyzer-fd-leak to WARN_CFLAGS when
configuring with --enable-gcc-warnings, to work around
GCC bug 109847.

19 months agoWork around GCC bug 109579 in ccl.c
Paul Eggert [Mon, 15 May 2023 01:51:23 +0000 (18:51 -0700)]
Work around GCC bug 109579 in ccl.c

* src/ccl.c (POP_MAPPING_STACK):
Ignore -Wanalyzer-out-of-bounds.

19 months agoWork around GCC bug 109577
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Work around GCC bug 109577

* src/lisp.h (SAFE_ALLOCA_LISP_EXTRA):
Ignore -Wanalyzer-allocation-size, as it generates many
false alarms in GCC 13.

19 months agoPacify GCC 13 -fanalyzer in tty_menu_activate
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Pacify GCC 13 -fanalyzer in tty_menu_activate

* src/term.c (tty_menu_activate): Trivially reword comparison
to pacify gcc -fanalyzer with GCC 13.

19 months agoFix movemail fd leak
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Fix movemail fd leak

* lib-src/movemail.c (main) [!MAIL_USE_SYSTEM_LOCK]:
Fix file descriptor leak, found by GCC 13 -Wanalyzer-fd-leak.

19 months agoFix ebrowse -f buffer overflow
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Fix ebrowse -f buffer overflow

* lib-src/ebrowse.c (main): Fix buffer overflow when several -f
options are given.  Found by GCC 13 -Wanalyzer-allocation-size.

19 months agoAvoid duplicate configure-time codeset tests
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Avoid duplicate configure-time codeset tests

* admin/merge-gnulib: Copy m4/codeset.m4 too.  This is mostly for
documentation, as it’s now automatically copied by other modules.
* configure.ac (EMACS_PAPER_WIDTH): New macro.  This relies on
Gnulib, to avoid duplicate tests for HAVE_LANGINFO_CODESET.

19 months agoUpdate from Gnulib by running admin/merge-gnulib
Paul Eggert [Mon, 15 May 2023 01:51:22 +0000 (18:51 -0700)]
Update from Gnulib by running admin/merge-gnulib

* lib/dirent-private.h, m4/codeset.m4, m4/locale-fr.m4, m4/musl.m4:
New files, from Gnulib.

19 months agoUpdate to Org 9.6.6
Kyle Meyer [Mon, 15 May 2023 01:04:37 +0000 (21:04 -0400)]
Update to Org 9.6.6

19 months ago* lisp/net/net-utils.el (finger): Fix botched logic.
Mattias Engdegård [Sun, 14 May 2023 15:41:14 +0000 (17:41 +0200)]
* lisp/net/net-utils.el (finger): Fix botched logic.

19 months ago; * admin/make-tarball.txt: Minor copyedits.
Eli Zaretskii [Sun, 14 May 2023 13:11:44 +0000 (16:11 +0300)]
; * admin/make-tarball.txt: Minor copyedits.

19 months agoMerge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29 emacs-29.0.91
Eli Zaretskii [Sun, 14 May 2023 12:02:15 +0000 (08:02 -0400)]
Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs into emacs-29

19 months ago; Regenerate files for emacs-29.0.91
Eli Zaretskii [Sun, 14 May 2023 11:58:30 +0000 (07:58 -0400)]
; Regenerate files for emacs-29.0.91

* ChangeLog.4:
* etc/AUTHORS: Regenerate.

19 months ago; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.
Eli Zaretskii [Sun, 14 May 2023 11:57:52 +0000 (07:57 -0400)]
; * lisp/ldefs-boot.el: Regenerate for emacs-29.0.91.

19 months agoBump Emacs version for next pretest
Eli Zaretskii [Sun, 14 May 2023 11:32:21 +0000 (07:32 -0400)]
Bump Emacs version for next pretest

* README:
* configure.ac:
* nt/README.W32:
* msdos/sed2v2.inp: Bump Emacs version to 29.0.91.

19 months ago* lisp/w32-fns.el (w32--os-description): Fix minor logic error
Mattias Engdegård [Sun, 14 May 2023 09:17:15 +0000 (11:17 +0200)]
* lisp/w32-fns.el (w32--os-description): Fix minor logic error

19 months ago; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-name): typo
Mattias Engdegård [Sun, 14 May 2023 09:33:04 +0000 (11:33 +0200)]
; * lisp/progmodes/csharp-mode.el (csharp-ts-mode--defun-name): typo

19 months ago* lisp/net/tramp-gvfs.el (initialize): Ignore D-Bus errors.
Michael Albinus [Sun, 14 May 2023 11:16:36 +0000 (13:16 +0200)]
* lisp/net/tramp-gvfs.el (initialize): Ignore D-Bus errors.

19 months ago; Minor fixes in ELisp manual
Eli Zaretskii [Sun, 14 May 2023 07:26:03 +0000 (10:26 +0300)]
; Minor fixes in ELisp manual

* doc/lispref/functions.texi (Declare Form): Improve indexing.
(Obsolete Functions): Add cross-reference.
`

19 months ago; * lisp/simple.el (async-shell-command): Doc fix. (Bug#63432)
Eli Zaretskii [Sun, 14 May 2023 07:13:39 +0000 (10:13 +0300)]
; * lisp/simple.el (async-shell-command): Doc fix.  (Bug#63432)

19 months agoIgnore current-prefix-arg in async-shell-command
Gabriel do Nascimento Ribeiro [Sat, 13 May 2023 23:31:24 +0000 (20:31 -0300)]
Ignore current-prefix-arg in async-shell-command

* lisp/simple.el (async-shell-command): Ignore current-prefix-arg and
always pass nil to second argument of `shell-command'.  (Bug#63432)

19 months agoFix building of VC package manuals with relative includes
Joseph Turner [Sat, 6 May 2023 21:49:43 +0000 (14:49 -0700)]
Fix building of VC package manuals with relative includes

* lisp/emacs-lisp/package-vc.el (package-vc--build-documentation):
Invoke makeinfo with -I to ensure the package directory is always
consulted for @include statements.  (Bug#63337)

19 months agoFix regexp bugs
Mattias Engdegård [Sat, 13 May 2023 15:03:20 +0000 (17:03 +0200)]
Fix regexp bugs

* lisp/progmodes/idlwave.el (idlwave-make-tags):
* lisp/obsolete/mantemp.el (mantemp-insert-cxx-syntax):
Repair obviously over-escaped control characters.

19 months agoMake some module toggles more resilient in ERC
F. Jason Park [Mon, 8 May 2023 02:43:57 +0000 (19:43 -0700)]
Make some module toggles more resilient in ERC

* lisp/erc/erc-goodies.el (erc-scrolltobottom-mode,
erc-scrolltobottom-enable, erc-move-to-prompt-mode,
erc-move-to-prompt-enable): Guard setup procedure behind
`erc--updating-modules-p'.
* lisp/erc/erc-imenu.el (erc-imenu-mode, erc-imenu-enable,
erc-imenu-disable): Don't run setup when `erc--updating-modules-p' is
non-nil.  Also, don't restrict teardown to buffers of the same
process.
* lisp/erc/erc-match.el (erc-match-mode, erc-match-enable): Run
major-mode hook member immediately outside of `erc-update-modules' in
`erc-open'.
* lisp/erc/erc-spelling.el (erc-spelling-mode, erc-spelling-enable):
Only conditionally run setup immediately.
* lisp/erc/erc-stamp.el (erc-stamp-mode, erc-stamp-enable,
erc-stamp-disable): Run setup hook immediately.  Don't forget to
kill local vars in all ERC buffers during teardown.
* lisp/erc/erc.el (erc--updating-modules-p): New variable that global
modules can use to provide their `erc-mode-hook'-deferred code on
demand while shielding it from running during early ERC buffer
initialization.
(erc-open): Make `erc--updating-modules-p' non-nil while activating
global modules.  (Bug#60936)

19 months agoOptionally add spacing between ERC messages
F. Jason Park [Sun, 7 May 2023 14:28:56 +0000 (07:28 -0700)]
Optionally add spacing between ERC messages

* etc/ERC-NEWS: Mention option `erc-fill-line-spacing'.
* lisp/erc/erc-fill.el (erc-fill-line-spacing,
erc-fill-spaced-commands): Add options to allow for extra spacing
between messages.
(erc-fill--function): Internal var allowing modules to override user
option `erc-fill-function'.
(erc-fill): Add extra line-spacing on certain types of messages.
Prefer `erc-fill--function', when set, over `erc-fill-function'.
(erc-fill--make-module-dependency-msg,
erc-fill--wrap-ensure-dependencies): Rename former to latter and make
more useful.
(erc-fill-wrap-mode, erc-fill-wrap-enable, erc-fill-wrap-disable):
Refactor.
(erc-fill--wrap-fix): Remove unused function.
(erc-fill-wrap-nudge): Remove reference to nonexistent function in doc
string.
* test/lisp/erc/erc-fill-tests.el: (erc-fill-tests--graphic-dir): New
variable.
(erc-fill-tests--compare): Look in `erc-fill-tests--graphic-dir' for
graphical snapshots ignored by Git.
(erc-fill-line-spacing): New test.
* test/lisp/erc/resources/fill/snapshots/spacing-01-mono.eld: New
file.  (Bug#60936)

19 months agoAdd helper for restoring local session vars in ERC
F. Jason Park [Mon, 8 May 2023 02:43:57 +0000 (19:43 -0700)]
Add helper for restoring local session vars in ERC

* lisp/erc/erc-common.el (erc--input-split): Suppress warning for
obsolete variable `erc-send-this' in init form.
* lisp/erc/erc-goodies.el (erc--keep-place-indicator-setup): Use macro
`erc--restore-initialize-priors' to preserve last session's indicator
position, if any.
(erc-keep-place-indicator-mode, erc-keep-place-indicator-enable): Use
convenience function to show missing-dependency notice.
* lisp/erc/erc-sasl.el (erc-sasl-auth-source-password-as-host): Merge
redundant `when' forms for clarity.
(erc-sasl--init): Remove unused function.
(erc-sasl-mode, erc-sasl-enable): Use helper to restore
`erc-sasl--options', essentially inlining the body of the now defunct
`erc-sasl--init'.
* lisp/erc/erc.el (erc--restore-initialize-priors): New macro to help
local modules and mode hooks prefer existing state over initializing
anew.
(erc--warn-once-before-connect): Add helper function to display
an "error notice" just after module setup.
(erc-accidental-paste-threshold-seconds) Improve doc string.
* test/lisp/erc/erc-goodies-tests.el
(erc-controls-highlight--examples, erc-controls-highlight--inverse,
erc-controls-highlight--motd, erc-keep-place-indicator-mode): Remove
feature check.  For the latter, also start fake process and shadow
`erc-connect-pre-hook'.
* test/lisp/erc/erc-tests.el (erc--restore-initialize-priors): New
test.  Also see test/lisp/erc/erc-scenarios-base-local-modules.el for
a more realistic exercising of this functionality.  (Bug#60936)

19 months ago; * lisp/vc/ediff-diff.el (ediff-auto-refine): Fix last change.
Eli Zaretskii [Sat, 13 May 2023 14:00:47 +0000 (17:00 +0300)]
; * lisp/vc/ediff-diff.el (ediff-auto-refine): Fix last change.

19 months agoAlways default ediff-auto-refine to 'on
Peter Oliver [Mon, 8 May 2023 10:24:53 +0000 (11:24 +0100)]
Always default ediff-auto-refine to 'on

* lisp/vc/ediff-diff.el (ediff-auto-refine): always default
to 'on.  (Bug#63318)

Copyright-paperwork-exempt: yes

19 months agoAnother fix for VHDL mode highlighting
Cyril Arnould [Wed, 10 May 2023 07:26:52 +0000 (07:26 +0000)]
Another fix for VHDL mode highlighting

* lisp/progmodes/vhdl-mode.el (vhdl-version): Bump to 3.38.5.
(vhdl-compiler-alist): Fix the regexps and the doc string.

Copyright-paperwork-exempt: yes

19 months agoDon't mutate constants in tests
Mattias Engdegård [Sat, 13 May 2023 11:36:50 +0000 (13:36 +0200)]
Don't mutate constants in tests

* test/lisp/emacs-lisp/cl-macs-tests.el
(cl-macs-test--symbol-macrolet):
* test/lisp/emacs-lisp/cl-print-tests.el
(cl-print-tests-ellipsis-circular):
* test/lisp/emacs-lisp/eieio-tests/eieio-test-persist.el
(eieio-test-persist-interior-lists):
* test/lisp/textmodes/reftex-tests.el (reftex-all-used-citation-keys):
* test/src/xdisp-tests.el (xdisp-tests--minibuffer-resizing):
* test/src/fns-tests.el (test-vector-delete):
Mutate created objects, not constants.

* test/lisp/emacs-lisp/subr-x-tests.el
(subr-x-test-add-display-text-property): Mutate a created string, and
compare using `equal-including-properties` without which the test was
rather meaningless.

* test/lisp/net/tramp-archive-tests.el
(tramp-archive-test16-directory-files): Don't mutate.

19 months agoUse `mutate-constant` as warning identifier
Mattias Engdegård [Sat, 13 May 2023 11:49:07 +0000 (13:49 +0200)]
Use `mutate-constant` as warning identifier

* etc/NEWS:
* lisp/emacs-lisp/byte-run.el (with-suppressed-warnings):
* lisp/emacs-lisp/bytecomp.el (byte-compile-warnings)
(byte-compile-form):
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings):
Use the new warning name `mutate-constant` instead of using the
somewhat overloaded `suspicious`.

19 months agoEglot: support window/showRequest (bug#62116)
Felicián Németh [Fri, 12 May 2023 00:50:05 +0000 (01:50 +0100)]
Eglot: support window/showRequest (bug#62116)

Co-authored-by: João Távora
* lisp/progmodes/eglot.el (eglot-client-capabilities): Advertise
window/showDocument.
(eglot-handle-request window/showDocument): New handler.

19 months agoMerge from origin/emacs-29
Eli Zaretskii [Sat, 13 May 2023 10:36:25 +0000 (06:36 -0400)]
Merge from origin/emacs-29

7acae22f42f Fix auto-filling in Texinfo mode
4bda9627349 ; * admin/git-bisect-start: Update failing commits
dcf8c011028 Merge branch 'scratch/long-lines-cleanup' into 'emacs-29'
1e3a66df459 Add an assertion in, and a commentary for, 'get_nearby_bo...
f0f08eeb05c Fix the return type of 'labeled_restrictions_get_bound'
acf4763417e Fix mouse highlight with some fonts in Cairo builds
32b42b333ca ; * etc/NEWS: Fix wording in last change.
09d6070e56e ; Improve and update documentation of built-in package up...
ba2c76fa2bc Ensure that package menu respects 'package-install-upgrad...
6fa9332e7cd Ensure that EXTRA-DATA are always written when generating...
60d5a015d1f Update to Transient v0.4.0
b8bcd42cabc Revert "Don't have nntp-report signal an error"
ef1f4068f6f ; * lisp/wid-edit.el (widget-specify-insert): Fix debug s...
09bf4768360 Make c-emacs-features use the proper binding of parse-sex...
c9e2a5ec26c ; * lisp/obsolete/autoload.el (make-directory-autoloads):...
346f4ac3bf5 ; Fix example in ELisp manual
91fff05ae35 ; Fix wording in Emacs manual
2438fa2e6cc ; Fix minor documentation issue ion replace.el
93005cd9dc2 with-display-message: Workaround for bug#63253
6924c81a6d2 ; Don't use literal non-ASCII characters in Texinfo
f1675df3d0c Fido-mode: never shadow 'external' completion style
56d2949d44c ; * lisp/leim/quail/persian.el: Fix a typo in last commit.
d94ea9efca6 Avoid crashes in --without-all build trying to scale non-...
387ddc0ccc1 Improve instructions for dealing with Emacs crashes
e6b4784a37f Improved transliterations + improved bidi insertion suppo...
c1363a04bb2 Fix crash when creating a child frame in NS (bug#63107)
7d6855c9ab6 Fix outgoing mime type regression (Bug#62815)
e920dd2b6f9 define-minor-mode: sanitize mode function messages
910a7b30dfd Fix beginning/end-of-defun with tree-sitter
e205f68717e Fix indent for enums in csharp-mode
dfde902f3b9 ; Expand 'package-vc-install' documentation
71337843036 Teach c-ts-mode about the 'restrict' keyword
15e06260ae8 * lisp/x-dnd.el (x-dnd-after-move-frame): Skip dead frame...
a081b6625bd ; Updated Elispref-Manual: `nil' cannot be defun'ed
97b818a4fb9 Fix doc strings of 'mark-sexp' and 'mark-word'
6f910ad9322 ; * etc/EGLOT-NEWS: Fix misspellings.
9b775ddc057 ; * etc/EGLOT-NEWS: Fix wording of last change.
79a886ba368 (package-upgrade): Don't remove the package from 'package...
c0ab4e9ca93 Eglot: re-rename eglot-upgrade to eglot-upgrade-eglot
b4e90070f96 Fix arguments of xml.c functions as displayed in Help buf...
b1bda8228e5 More fixes for NetBSD/vax
a2d4cd06f45 Improve VHDL mode highlighting
2f3a514b6db Clarify documentation wrt floating point division by zero...
94e984e6700 Make loaddefs-generate slightly more tolerant
aba41d2c4bb ; Minor doc cleanups in go-ts-mode.el
b42ccb2e5c1 ; Minor grammar fix in treesit manual.
ab44c8a6f9d Fix order of rcirc-connect arguments
8eb6e33691d Fix rcirc messages printing in the wrong place
2901a3443c7 Prevent unnecessary modifications of 'package-vc-selected...
eaad302bd6f Rename eglot-update to eglot-upgrade
eaf25b9c6ae go-ts-mode: Use iota query only if supported (Bug#63086)
cc090294d77 (rng-complete-tag): Add the (ignored) argument to the :co...
21ec6c1d5cc Update to Transient v0.3.7-219-g3ded15b
8d5aa8df4ad Fix inserting selection data into Mozilla programs
57562c3fd0a Recognize defstruct slot names in various eieio functions
b93eb68cc30 Use 'calendar-buffer' instead of fixed string
e338a8ac41d Handle point not at EOB in minibuffer-choose-completion
fceaf230b06 Note that Emacs pauses when handling sentinel errors
46392c1623b Fix vertical-motion when tab-line is displayed in a window
0e52beeacea Update to Org 9.6.5-3-g2993f4
dd21003878d Prevent generating empty autoload files
2bcf11d0efe * lisp/org/org-macs.el (org--inhibit-version-check): Fix ...
ca43435816b Fix redisplay of mode line after its format changes from nil
610a7657e0a Fix c-ts-mode--emacs-c-range-query
7f94558b775 Improve documentation of warnings
5a3f0e2c558 ; Doc fix in c-ts-mode.el
21361d05635 Fix FOR_EACH_TAIL fontification (bug#62951)
d0df3404fde ; * etc/EGLOT-NEWS:  chsharp-le -> csharp-ls
c229e83c3ce ; * etc/EGLOT-NEWS (https): Elglot -> Eglot.
b4f2f499783 Fix documentation of libxml-parse-* functions
5dd784961d1 ; * src/treesit.c (syms_of_treesit): Fix error messages.
ddfa0d8da9a ; Remove some leftover text
212e30f6789 ; Fix byte-compilation warnings in c-ts-mode.el
1f2214dabd0 Skip over whitespace in annotation-top-cont check (bug#63...
7e136c51f6f Update zh-CN tutorial translation
d3ca0b3aa2e ; * lisp/progmodes/c-ts-mode.el: Fix comments and doc str...
c6f15c24862 ; Fix last change.
b9e06330f75 ; * etc/NEWS: Followup to bug#62720.
b33d25f5967 ; Minor improvements in doc strings of package-upgrade co...
c3a61870b94 Fix eglot.texi
a40f1816237 Fix two crashes upon startup
44ebd9cbd56 Eglot: explain how to update Eglot in manual (bug#62720)
941ef044f2e Eglot: fix edge case when deleting inlay hint overlays
a365984d9e1 package-upgrade[-all]: Expand docstrings to note the curr...
f965f35b33b Rename all functions called package-*-update-* to package...
31b58161bb5 Fix FOR_EACH_TAIL in c-ts-mode (bug#62951)
0cf6e0998ba * Makefile.in (distclean): Remove the 'native-lisp' direc...
933705d61e5 Improve greek-ibycus4 input method
c46e93b1f50 Explain ERC 5.5 regressions in new version 5.5.0.29.1
af43f0a2954 * doc/misc/erc.texi: Elaborate on upgrading via ELPA.
10948948c12 Improve outline-default-state docstring
b5ace2eed80 Document problems with /bin/sh on Solaris 10
7b2ad8f199e ; Add missing <<inserted by help-with-tutorial>> line to ...
524e161a536 Followup to addition of TUTORIAL.fa
76f50df1539 Add Farsi/Persian translation of the tutorial
8eacfaea6d8 Add Mongolian language environments
fe8efbb8f75 Document the 'end-session' event on MS-Windows
d80f959bede Update to Org 9.6.4-9-g8eb209
98c6cfcbe4a Don't support versioned grammar libraries on MS-Windows
8f71c1546df Accept versioned tree-sitter language grammar files
99add09d5e1 tab-bar-new-tab: inhibit side-window checks
087e8181947 * etc/NEWS: Fix outline level.  (Bug#63042)
d7f38558c4c ; Improve font selection for Traditional Mongolian
965c5e0231c Fix rendering of Traditional Mongolian script
9a0f10b5f88 Fix line-number-at-pos when POSITION is out of narrowing
4e0f4292aaf ; * etc/tutorials/TUTORIAL: Fix punctuation.
dec2ac0c657 Fix exiting Emacs after saving a tutorial
44145bf07e2 Add indentation style setting for c-ts-mode in .dir-local...
e7db6c59cc6 ; * .dir-locals.el (c-ts-mode): Add settings.
d041f01b02f ; Minor fix in Emacs Lisp Intro manual
3899acbb336 ; * src/fringe.c: Fix description of large circle.  (Bug#...
2b10e1827d3 sql: add missing postgresql types
9ac12592781 Fix display of menu-bar bindings of commands in *Help* bu...
ecdd3a9efac Improve Completion Example section in the Emacs manual
626e1ac62b2 Improve 'message-server-alist' docstring
327986936c3 Add index entry for fallback modes
1c4783c3300 ; * etc/NEWS: Copyedits and grammar fixes.
3d6f7553319 xref-search-program-alist: Fix searching larger file list...
1b8b2cf61bd Fix typo and inaccuracy in the ELisp Reference manual
df17682ebf1 ; Support 'dart-ts-mode' in Eglot
e0dc60e0780 ; Fix typos in gdb-mi.el
60560cc7adf Fix description of lexical environment's internals
1456adf4248 ; Eglot: fix a typo in a customization type
2f59595f5f4 ; * etc/NEWS: Grammar fixes.
596b780ab71 Update to Org 9.6.4-2-g0f6ae7
a0b04a22479 Documentation copyedits for 'package-install-upgrade-buil...
580d8278c5f Allow upgrading built-in packages with 'package-install'
329304c23fa ; * src/term.c (init_tty): Fix last change.  (Bug#62877)
200dbf7d302 Minor changes in c-ts-mode.el's support of DEFUNs
9686b015a0d Fix strike-through attribute support on TTY frames
39035fbfc5f Avoid crashes in 'describe-keymap' due to shadowing
b7023da6627 Make image-map bindings available on image links
d9e96c029bb * CONTRIBUTE: Fix a typo
3f71a2a0cf6 ; * lisp/progmodes/c-ts-mode.el (treesit-node-next-siblin...
adf9c956c28 Add to Eglot support for additional language-servers.
b3603b84bd9 Partial support for DEFUN in c-ts-mode (bug#62825)
14e809ddff1 Fix style and unwinding code in treesit.c
759cdf1e510 Catch signals produced by PRED in tree-sitter search func...
864a4dc2363 Fix compilation of w32.c with old MinGW system headers
a22eb9ae0f9 ruby-add-log-current-method: Reduce the use of 'nreverse'
17d803d0a75 Fix detection of WebP images by their signature
43290391ce2 ; Eglot: make version parseable by version-to-list
6e6e8b5c974 Add more documentation for the keys of `package-vc-select...
7972b76c2c7 ; vc-checkout: Wrap var lookup in 'bound-and-true-p'
e9fef1d70ff vc-checkout: Try to use the vc-dir's backend first
372e024accd ; Fix wallpaper-tests on XFCE
7055fd8e43e Improve documentation related to 'ispell-complete-word'
61fd017abde * configure.ac: Add -lbsd on Haiku.
05971c4d9a4 Add menu to 'c-ts-mode' and 'c++-ts-mode'
954e2d96a92 Update manual about `sort`
c62afb10cf0 Fix wallpaper-tests on MS-Windows
f2d212c6966 Fix a couple of eglot-tests
338b3718b6c Fix visiting RPM files
b4afee03193 Fix ff-quiet-mode doc
2445100d7d6 ; Improve documentation of 'match-buffers'
d4d0da96f0b ; Update make-tarball.txt for Emacs 29.
9b0bf694da4 ; Fix ldefs-boot.el.
0cb86a348c7 ; Update ChangeLog.4.
5e039d5a6e9 * lisp/ldefs-boot.el: Regenerate.
671abd0cc40 Merge branch 'emacs-29' of git.sv.gnu.org:/srv/git/emacs ...
4bc678ec9f4 Bump Emacs version to 29.0.90
db8f207e52f Fix some cases of incomplete code's indentation [c/c++-ts...
589959fb09d project-search: Pipe the list of files through 'file-regu...
2b91567bf61 Update ChangeLog and AUTHORS for Emacs 29
d6af1f14982 ; doc/lispref/windows.texi: Fix @pxref paren.
57490fff6ec ; Backport: Eglot: fix misplaced parenthesis in last comm...
2a62273f3bf Backport: Eglot: no more tests based on Pylsp (bug#62694)
5ef7ff05736 ; Start a new ChangeLog.4 file.
11126c6d30a Fix 'C-h k' for "Paste from Kill Menu" in context menus
74ddfe811f9 ; * doc/misc/calc.texi (Rewrites Tutorial): Fix a typo (b...
08cda286c3f Improve the documentation of the XDS support
14d1c00e806 Allow reindentation of images inserted by 'mm-inline-image'
b63a9eda01c Fix "C-h k" and "C-h c" with Paste from Kill Menu
b36c21e27dc Change cursor color on NS port when it matches the face b...
96714c106b7 Improve documentation of image-related commands
6a2863ca016 Fix handling of sliced images
5be79fd05a5 ; * etc/NEWS: Announce 'cyrillic-mongolian' IM.
ca1a0fda98a ; Fix last change.
ce63462dbda Add cyrillic-mongolian input method
58801792706 ; Minor addition to the Emacs FAQ
88847dee125 Jsonrpc: don't bind inhibit-read-only to t so early
cb8c87a423a Allow active region when IM is used
305246d9726 Add emoji-zoom-reset
470d269ec1f Make emoji-zoom-{increase,decrease} set text properties c...
63d4a86f8d1 Fix transforming sliced images
5e1953a8f85 ; * etc/NEWS: Minor copyedits of entry for 'keymap-*' fun...
6b9f9df9454 ; Improve documentation of 'declare-function'
81d1f46d0fe ; Avoid compiler warning in eglot.el.
38cdfcb2128 ; Fix description of new 'keymap-*' functions
257090b8728 Adapt EMBA scripts.
90c07d3fdd2 Another terminology fix in ELisp reference manual
a832bc7090c Correct terminology in Elisp Reference Manual
db308233cb3 Comment out GNUSTEP jobs on EMBA (again)
8c1b1022439 ; * lisp/image.el (put-image): Doc fix.
eda88c63adf ; * doc/emacs/trouble.texi (Checklist): Minor grammar fix.
728bc09cf3c Fix regexp string escaping mistake in vhdl-mode.el (bug#6...
479626dbac9 Update to Org 9.6.3-2-gf2949d
5a1c9aace70 ; Add a bit more docstring to tsx-ts-mode (bug#62429)
86cf9fd932c Eglot: don't watch directories that don't exist
82d0b6c64ea ; * lisp/subr.el (use-dialog-box-p): Fix last change.
3619663f982 Preserve peer information for web page in eww-readable
cb8d6ab648f * lisp/subr.el (use-dialog-box-p): Fix conditions for GUI...
fb2c4409207 ; * lisp/progmodes/c-ts-mode.el (c++-ts-mode): Add some n...
c0b9530862c Another final fix to last changes
0cc8d6826ad Three final fixes to last changes
89e337c3fc9 ; Make sure 'eshell-command' tests don't prompt the user
097c5ee8f55 Two further fixes to last changes
b39c3cd1125 ; * etc/NEWS: Fix typos.
dce08cf05cc Improve and fix last changes
89ac5ba11c7 Fix ModelSim error regexp in vhdl-mode
24ed9c7ae78 ; * doc/emacs/trouble.texi (Checklist): Minor copyedits (...
d1d39a0f09c Document enhancements in handling of echo-area messages
46209b2453b ; Fix last change
21a4ee209c1 Fix new Eshell tests on MS-Windows
e2ebf3995d0 ; Auto-commit of loaddefs files.
6419d78fa6f Fix using background commands in 'eshell-command'
3bdbb66efb9 ; CONTRIBUTE: Minor stylistic changes.
d0eb12e8d3c Fix typo in section 14.1 of Emacs Manual
b2fbec37f39 ; * etc/EGLOT-NEWS: Clarify scope of topmost section
131ec049db0 Eglot: unbreak eglot-extend-to-xref on w32
0622e1f29f6 Eglot: ensure server shutdown turns off eglot-inlay-hints...
59f66ea3027 ; * lisp/emacs-lisp/package-vc.el: Remove completed item ...
d23dc3dd7e3 ; * lisp/emacs-lisp/package-vc.el (package-vc): Fix manua...
4508a024e81 ; Clarify documentation of 'cursor' text property
d2e82817a3f Add two typescript-ts-mode faces (bug#62429)
10918fc9d24 Fix scrolling window when point moves up
9b32bc134c4 Improve documentation of 'defcustom's :set keyword
ab4273056e0 Comp fix calls to redefined primtives with op-bytecode (b...
c98929c7e18 ; Fix last change
a14c3f62a67 ; Fix last change
09fece5722f Fix duplicate defcustom in eww.el
2093e010dc1 Fix cursor motion in character-only terminals
e45bd10a3d9 Fix indentation regression in 'C-h l'
46fd10a7600 * doc/misc/tramp.texi (Remote shell setup): Clarify use o...
974e4f33333 Make get_medium_narrowing_begv/zv static
afc2c6c13cb Improve accuracy of cursor motion commands in long lines
7e26a5c774e Remove labeled restrictions before calling Fwiden
85ed1c9ca6b Code cleanup for long line optimizations

# Conflicts:
# etc/NEWS

19 months agoByte-compiler warning about mutation of constant values
Mattias Engdegård [Thu, 11 May 2023 17:24:51 +0000 (19:24 +0200)]
Byte-compiler warning about mutation of constant values

When we can easily detect mutation of constants (quoted lists, strings
and vectors), warn.  For example,

  (setcdr '(1 . 2) 3)
  (nreverse [1 2 3])
  (put-text-property 0 3 'face 'highlight "moo")

Such code can result in surprising behaviour and problems that
are difficult to debug.

* lisp/emacs-lisp/bytecomp.el (byte-compile-form, mutating-fns):
Add the warning and a list of functions to warn about.
* etc/NEWS: Announce.
* test/lisp/emacs-lisp/bytecomp-tests.el
(bytecomp-test--with-suppressed-warnings): Add test cases.

19 months agoFix auto-filling in Texinfo mode
Eli Zaretskii [Sat, 13 May 2023 08:28:38 +0000 (11:28 +0300)]
Fix auto-filling in Texinfo mode

This fixes auto-filling in Texinfo buffers.  It was broken by the
fix to bug#49558, which made M-q fill over-long @noindent lines by
refraining from customizing 'paragraph-separate' in Texinfo mode.
The underlying problem here is that 'auto-fill-mode' doesn't call
mode-specific filling functions, but does its job by itself, and
depends on 'forward-paragraph' to find the beginning of the
paragraph as appropriate for calculation of 'fill-prefix', and a
different value of 'paragraph-separate' broke that.  As a side
effect, the change below also changes paragraph-movement commands
in Texinfo back to how they behaved prior to that bugfix, but I
don't see why the paragraph-movement behavior introduced by that
fix made more sense.  Try to move through a series of
@-directives, like a paragraph preceded by several @cindex
entries, and you will see the inconsistencies.  In any case, the
adverse effects of that fix on auto-filling is unacceptable.

* lisp/textmodes/texinfo.el (fill-paragraph-separate): New
variable.
(texinfo-mode): Set 'fill-paragraph-separate' to the default value
of 'paragraph-separate'.  Customize 'paragraph-separate' to the
Texinfo-specific value, as it was before commit dde591571abf.
(texinfo--fill-paragraph): Bind 'paragraph-separate' to the value
of 'fill-paragraph-separate', to keep 'M-q' happy.

19 months agoFix detection of tab bar windows on PGTK
Po Lu [Sat, 13 May 2023 02:27:57 +0000 (10:27 +0800)]
Fix detection of tab bar windows on PGTK

* src/dispnew.c (adjust_frame_glyphs_for_window_redisplay):
Adjust commentary.
* src/pgtkfns.c (pgtk_set_doc_edited): Remove unused function.
* src/pgtkterm.c (pgtk_clear_under_internal_border): Clean up X
related code.
* src/pgtkterm.h: Update prototypes.
* src/window.h: Define WIDNOW_TAB_BAR_P on PGTK.  (bug#63472)

19 months agoFix opaque region specification on no-toolkit builds
Po Lu [Sat, 13 May 2023 02:07:22 +0000 (10:07 +0800)]
Fix opaque region specification on no-toolkit builds

* src/xterm.c (handle_one_xevent): Always specify opaque region
on no-toolkit builds upon a configure event for any's window.

19 months ago; * admin/git-bisect-start: Update failing commits
Gregory Heytings [Fri, 12 May 2023 23:31:25 +0000 (23:31 +0000)]
; * admin/git-bisect-start: Update failing commits

19 months agoMerge branch 'scratch/long-lines-cleanup' into 'emacs-29'
Gregory Heytings [Fri, 12 May 2023 22:13:44 +0000 (00:13 +0200)]
Merge branch 'scratch/long-lines-cleanup' into 'emacs-29'

19 months agoAdd an assertion in, and a commentary for, 'get_nearby_bol_pos'
Gregory Heytings [Fri, 12 May 2023 21:56:31 +0000 (21:56 +0000)]
Add an assertion in, and a commentary for, 'get_nearby_bol_pos'

* src/xdisp.c:
(get_nearby_bol_pos): Document the function, and add an assertion
on its return value.

19 months agoFix the return type of 'labeled_restrictions_get_bound'
Gregory Heytings [Fri, 12 May 2023 21:56:28 +0000 (21:56 +0000)]
Fix the return type of 'labeled_restrictions_get_bound'

* src/editfns.c:
(labeled_restrictions_get_bound): Return a Lisp_Object instead of
a pointer to a struct Lisp_Marker.
(unwind_reset_outermost_restriction, reset_outermost_restrictions)
(Fwiden, Fnarrow_to_region): Adapt to the new return type.

19 months agoFix mouse highlight with some fonts in Cairo builds
Eli Zaretskii [Fri, 12 May 2023 19:19:35 +0000 (22:19 +0300)]
Fix mouse highlight with some fonts in Cairo builds

* src/ftcrfont.c (ftcrfont_draw): Don't set the
'background_filled_p' flag of the glyph string.  (Bug#63271)

19 months ago; * etc/NEWS: Fix wording in last change.
Eli Zaretskii [Fri, 12 May 2023 14:41:39 +0000 (17:41 +0300)]
; * etc/NEWS: Fix wording in last change.

19 months ago; Improve and update documentation of built-in package upgrades
Eli Zaretskii [Fri, 12 May 2023 12:33:06 +0000 (15:33 +0300)]
; Improve and update documentation of built-in package upgrades

* doc/emacs/package.texi (Package Statuses, Package Menu)
(Package Installation):
* etc/NEWS: Document the options and caveats of upgrading built-in
packages.

19 months agoFix files-tests broken by a recent change
Eli Zaretskii [Fri, 12 May 2023 11:07:36 +0000 (14:07 +0300)]
Fix files-tests broken by a recent change

* test/lisp/files-tests.el
(files-tests-safe-local-variable-directories): Fix this test:
since we are now using 'file-equal-p' the directory used as a safe
one should actually exist.  (Bug#61901)

19 months agoMerge branch 'master' of git.savannah.gnu.org:/srv/git/emacs
Eli Zaretskii [Fri, 12 May 2023 11:07:29 +0000 (14:07 +0300)]
Merge branch 'master' of git.savannah.gnu.org:/srv/git/emacs

19 months agoHandle case-insensitivity for safe-local-variable-directories.
Antero Mejr [Thu, 11 May 2023 19:22:49 +0000 (19:22 +0000)]
Handle case-insensitivity for safe-local-variable-directories.

* lisp/emacs-lisp/files.el (hack-local-variables-filter): Use
'file-equal-p' when checking 'safe-local-variable-directories'.
* doc/lispref/variables.texi (File Local Variables): Remove sentences
in 'safe-local-variable-directories' description about case-sensitivity
and trailing slash behaviors.
* doc/emacs/custom.texi (Safe File Variables): Remove sentence about
'safe-local-variable-directories' trailing slash behavior.
(Bug#61901)

19 months agoAdd trailing space to PROMPT in yes-or-no-p
Michael Albinus [Fri, 12 May 2023 10:45:32 +0000 (12:45 +0200)]
Add trailing space to PROMPT in yes-or-no-p

* doc/lispref/minibuf.texi (Yes-or-No Queries): Describe PROMPT
massage for y-or-n-p and yes-or-no-p.

* lisp/subr.el (y-or-n-p): Adapt docstring.

* src/fns.c (Fyes_or_no_p): Add trailing space to PROMPT if
needed.  (Bug#63399)

19 months agoCC Mode: Fontify function names after long stretches of macros.
Alan Mackenzie [Fri, 12 May 2023 10:33:15 +0000 (10:33 +0000)]
CC Mode: Fontify function names after long stretches of macros.

This fixes bug#63322.

* lisp/progmodes/cc-engine.el (c-find-decl-spots): When a
search back over syntactic whitespace hits its limit, set
cfd-match-pos and cfd-continue-pos to cfd-start-pos.

* lisp/progmodes/cc-mode.el (c-fl-decl-start): Remove an
unneeded (and harmful) condition on (point)'s position in the
main loop.

19 months agosoap-client.el: Bump version to 3.2.3
Thomas Fitzsimmons [Fri, 12 May 2023 09:10:50 +0000 (05:10 -0400)]
soap-client.el: Bump version to 3.2.3

* lisp/net/soap-client.el: Bump version to 3.2.3.

19 months agoEnsure that package menu respects 'package-install-upgrade-built-in'
Philip Kaludercic [Wed, 10 May 2023 06:58:34 +0000 (08:58 +0200)]
Ensure that package menu respects 'package-install-upgrade-built-in'

* lisp/emacs-lisp/package.el (package-menu--find-upgrades): Check if
built-in packages can be upgraded if
'package-install-upgrade-built-in' is non-nil.

19 months agoEnsure that EXTRA-DATA are always written when generating autoloads
Philip Kaludercic [Sun, 7 May 2023 19:37:01 +0000 (21:37 +0200)]
Ensure that EXTRA-DATA are always written when generating autoloads

* lisp/emacs-lisp/loaddefs-gen.el (loaddefs-generate): Handle
edge-case where no autoloads are found.  (Bug#63260)

19 months agoDon't set background_filled_p
Po Lu [Fri, 12 May 2023 03:19:11 +0000 (03:19 +0000)]
Don't set background_filled_p

* src/haikufont.c (haikufont_draw): Don't set
`background_filled_p' when filling the background.

19 months agoSimplify soap-decode-data-time use of encode-time
Paul Eggert [Fri, 12 May 2023 02:48:18 +0000 (19:48 -0700)]
Simplify soap-decode-data-time use of encode-time

* lisp/net/soap-client.el (soap-decode-date-time):
Call encode-time directly instead of via ‘apply’.
No need for the two nil args.